본문 바로가기
수고한일

Kubernetes

by UrimStory 2023. 5. 9.

Kubernetes는 ? [ https://kubernetes.io/ )

K8s라고도 하는 Kubernetes는 컨테이너화된 애플리케이션의 배포, 확장 및 관리를 자동화하기 위한 오픈 소스 플랫폼으로, 선언적 구성과 자동화를 모두 용이하게 합니다.

쿠버네티스 사용법

쿠버네티스를 쉽게 이해할 수 있도록 더 일반적인 용어로 분류하면 아래와 같다.

컨트롤 플레인 쿠버네티스 노드를 제어하는 프로세스의 컬렉션입니다. 여기에서 모든 태스크 할당이 시작됩니다.
노드 컨트롤 플레인에서 할당된 요청 태스크를 수행하는 머신입니다.
포드 단일 노드에 배포된 하나 이상의 컨테이너 그룹입니다. 포드에 있는 모든 컨테이너는 IP 주소, IPC, 호스트 이름, 기타 리소스를 공유합니다. 포드는 기본 컨테이너에서 네트워크와 스토리지를 추상화합니다. 이렇게 하면 클러스터에서 컨테이너를 더 쉽게 이동할 수 있습니다.
복제 컨트롤러 이 컨트롤러는 클러스터에서 실행되어야 하는 동일한 포드 복사본의 개수를 제어합니다.
서비스 포드에서 작업 정의를 분리합니다. 쿠버네티스 서비스 프록시는 클러스터에서 다른 위치로 이동된 경우나 교체된 경우에 상관없이 서비스 요청을 적절한 포드로 자동 수신합니다.
Kubelet 이 서비스는 노드에서 실행되며 컨테이너 매니페스트를 읽고, 정의된 컨테이너가 시작되어 실행 중인지 확인합니다.
kubectl 쿠버네티스의 커맨드 라인 구성 툴입니다.

쿠버네티스 설치 

Kubernetes 설치전 Docker 설치는 앞에 Doker 부분에서 참조 하면 된다.
도커 저장소와 엔진을 설치 후 Kubernetes 를 설치 한다.

설치전 확인 사항 ( master, node )

# 각 노드들은 Swap Disabe 처리
swapoff -a && sed -i  '/swap/s/^/#/' /etc/fstab

# iptable 설정 
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system

# 통신을 위한 방화벽 예외 설정 
sudo systemctl stop firewalld
sudo systemctl disable firewalld

# 방화벽 설정 이후 포트 오픈 확인 
telnet 127.0.0.1 6443

kubelet, kubeadm, kubectl 설치 (master, node)

# 저장소 업데이트 및 필수 패키지 추가 
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl

# 구글 클라우드 퍼블릭 키 다운로드를 수행한다. 
sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg

# 쿠버네티스를 설치하기 위해 Kubernetes 저장소 추가한다. 
echo 
"deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main"

# 저장소 업데이트 후 kubelet, kubeadm, kubectl 설치를 순차적으로 진행한다. 
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

# 쿠버네티스를 서비스 등록 및 재시작을 수행한다. 
sudo systemctl daemon-reload
sudo systemctl restart kubelet
728x90

'수고한일' 카테고리의 다른 글

VirtualBox  (0) 2023.05.30
Open Search  (0) 2023.05.23
Docker  (0) 2023.05.09
Redis ( Remote Dictionary Server )  (0) 2023.05.08
클라우드 분야 OSS  (0) 2023.05.03