가끔 kubernetes 같은건 너무 무거워서 단일 호스트에 docker만 띄워서 운영하는 경우같은걸 고민 하게 됩니다. 하지만 그냥 docker만 가지고 사용하면 컨테이너가 죽었을때 관리해 줘야 하는 불편함과 같이 기능을 보다 더 필요로 하게 됩니다. 그래서 이 방법을 소개해 드립니다.
이건 standalone kubelet 이라고 불리는 master 없이 node만 관리해주는 kubelet을 이용해서 container를 관리하는 방법입니다. 이건 k8s 초기 부터 원래 존재했던 컨셉이나 많이 알려져 있지 않아서 모르시는 분들이 많아서 이글을 작성해 봤습니다.
이 방법을 이용하면 실제 master 없이 kubelet 만으로 서비스를 할 수 있습니다. 컨테이너 자동 재시작, port forwarding, resource limit 등 기본적인 kubelet에서 제공하는 다양한 방법으로 컨테이너들을 관리 할 수 있습니다.
NOTE: If you want the ultimate Linux desktop experience, I highly recommend installing Linux as your main OS. I no longer use Windows (except in a VM) so I will not be maintaining this guide anymore.
Think Xfce looks dated? Want a conventional Ubuntu experience? This tutorial will guide you through installing Ubuntu's default desktop environment, GNOME.
GNOME is one of the more complex — and that means more difficult to run — desktop environments, so for years people couldn't figure [o
Install, build and debug a react native app in WSL2 (Windows Subsystem for Linux) and Ubuntu.
Sample config files to demonstrate seup that creates and updates free SSL certificates from Let's Encrypt given that the domains are maintained at CloudFlare service.
Certbot verifies domains ownership by accessing CloudFlare API that adds temporary TXT DNS records. To enable it You must provide your CloudFlare API token. More details in documentation for dns-cloudflare Certbot plugin.
Certbot saves created certificates in Docker volume certbot_etc
. Pay attention to output of the certbot run - it mentions path to the created certificates.
- Traefik: Reverse-proxy router
- Docker-swarm: Docker-supported orchestrator
-
kubernetes(이하 k8) 는 무겁고 느리다. docker-swarm(이하 DS) 은 docker 최신버전에 기본으로 탑재되어 나온다. 또한
helm
이나 별도의 관리cli(kubeadm, kubectl)
를 설치할 필요가 없다. -
k8 은 세팅도 어렵다: 세팅하기가 워낙 까다로워 실제로 운영하기 적절한 경우는 devops 팀을 가진 최소 20명 이상의 대규모 사이즈 팀이다. 한 명이 작업하는 것이 아주 불가능한 것은 아니지만, 긴급수정시에는 많이 위험해질 수 있다. 총원이 10명이 되지 않는 우리팀 같은 경우는 한 사람이 급하게 기능수정을 해야될 일이 많다.
본 내용의 서론부분은 공식문서를 번역하여 제공하는 글임 https://nifi.apache.org/docs.html
★by SDI
나이파이는 Zero-Master 클러스터링 패러다임을 채용합니다. 클러스터의 각 노드는 데이터에서 동일한 작업을 수행하지만 각각 다른 데이터 집합에서 작동합니다. 노드들 중 하나는 Zookeeper에 의해 Cluster Coordinator로 자동으로 선출됩니다. 클러스터안에 있는 모든 노드들은 이 코디네이터 노드로 heartbeat/status 정보를 보내게 될 것입니다. 그리고 이 코디네이터 노드는 heartbeat/status 정보가 일정시간을 초과하여 넘어오지 않는 노드들의 연결을 해지할 책임을 가지게 됩니다. 추가적으로 새로운 노드가 클러스터에 합류하게 될 때, 새로운 노드는 가장 최근에 업데이트된 플로우를 얻기 위하여 우선 최근에 선출된 코디네이터 노드를 찾아 연결해야만 합니다. 코디네이터 노드가 노드가 합류하도록 결정을 내린다면 최근의 플로우가 그 노드로 보내지게 되며 그 노드는 클러스터에 합류할 수 있게 됩니다.
그냥 공식문서 번역한 글 ★by SDI
DataFlow Manager: 데이터플로우 매니저(DFM)은 나이파이 데이터플로우의 컴포넌트를 추가, 삭제, 수정할수 있는 권한을 가진 유저를 말합니다.
FlowFile: 플로우파일은 나이파이의 데이터 조각으로 표현될 수 있습니다. 플로우파일은 두개의 컴포넌트로 이루어져 있는데 FlowFile Attributes와 FlowFile Content 이 그것들입니다. Content는 FlowFile에 의해 표현되는 데이터이며 Attribute는 데이터에 대하여 맥락이나 정보를 제공하는 특성값이라고 할 수 있습니다. Attribute는 Key-Value 쌍으로 이루어져 있습니다. 모든 플로우 파일들은 기본적으로 다음과 같은 Standard Attribute들을 가지고 있습니다.
- uuid: 보편적으로 플로우파일들이 구별되는 식별값입니다.