본문 바로가기

DevOps & Cloud

2. 쿠버네티스 설치 및 설정

728x90
반응형

연구실 프로젝트 Season1 Ep2

 

출처: https://andrewpage.tistory.com/234

 

Ubuntu 22.04 에 쿠버네티스 설치하기 (Install Kubernetes)

참고: Kubernetes Cluster를 설치한 날짜는 2022년 12월 21일. Kubernetes cluster(쿠버네티스 클러스터) 구축을 도와주는 여러 도구(kubeadm, kubespray, kops)가 있다. 이 문서에는 그런 kubernetes cluster 구축 도구 중

andrewpage.tistory.com

출처: https://aoc55.tistory.com/54

 

쿠버네티스 :: GCP(VM)에 kubernetes Cluster 직접 구축하기 - 3 (23.01 수정)

목표 구글에서 제공하는 GKE를 활용하는 것이 아니라, GCP의 Compute Engine을 통해서 VM을 생성한 뒤 Master Node, Worker Node를 직접 생성한 뒤, Docker Engine 설치 및 Kubeadm을 통해 Kubernetes Cluster를 직접 구현

aoc55.tistory.com

https://dongle94.github.io/kubernetes/kubernetes-cluster-build/

 

[Kubernetes] 쿠버네티스 클러스터 구축

(Kubernetes Cluster Build Up) 우분투 18.04 기준 쿠버네티스 클러스터 구축하는 법을 알아본다.

dongle94.github.io

 

노드 구성

master node 1개

worker node 2개

 

Container Runtime Interface(CRI)

CRI-O를 설치했다. 쿠버네티스 표준에 가까운 런타임이다.

그러나 도커 런타임 보다 편의 기능이 부족하다. 따라서 Podman을 설치해준다.

Podman으로 도커처럼 이미지를 만들어주는 것이 가능한듯하다.

20.04 버전 이후로 우분투에 기본 탑재되어 있다고 하나 뭐가 잘 안돼서 따로 검색해서 해결했다.

하단 링크 참고

https://techviewleo.com/how-to-install-podman-on-ubuntu/ 

결론적으로 해결했다.

Buildah의 경우 22.04에서 사용이 불가능하다고 한다. Podman도 힘겹게 설치했으니 최대한 사용해보자.

kubeadm, kubelet, kubectl 설치

kubeadm: kubernetes cluster를 구축하기 위한 명령 도구

kubelet: master node, worker node에서 데몬 프로세스로 기동 되어 있으면서, container와 pod를 생성/삭제/상태를 감시한다.

kubectl: 사용자가 kubernetes cluster에게 작업 요청하기 위한 명령 도구 (예를 들어, 'pod를 생성해 달라!'  'pod의 개수를 늘려달라!' 같은 사용자 명령을 kunernetes API server에게 전달)

 

CNI란?

CNI(Container Network Interface)는 컨테이너 간의 네트워킹을 제어할 수 있는 플러그인을 만들기 위한 표준이다. 쿠버네티스에서는 Pod 간의 통신을 위해서 CNI 를 사용한다. 나는 Cilium을 쓰기로 했다. Cilium에 대한 내용이 상당히 많아서 여기서는 설치법만 적고 따로 포스팅을 할 예정이다.

https://velog.io/@jopopscript/kubernetes-설치on-ubuntu

 

kubernetes 설치(on ubuntu)

ubuntu 20.4 위에 kubernetes 설치, 클러스터 생성, 네트워크플러그인 설치(cilium), 컨테이너 배포

velog.io

 

hubble 활성화

 

https://docs.cilium.io/en/stable/gettingstarted/hubble_setup/#hubble-setup

 

Setting up Hubble Observability — Cilium 1.12.5 documentation

In order to access the Hubble API, create a port forward to the Hubble service from your local machine. This will allow you to connect the Hubble client to the local port 4245 and access the Hubble Relay service in your Kubernetes cluster. For more informa

docs.cilium.io

 

sudo kubeadm reset #쿠버네티스 초기화(master, worker 둘다 해당)

sudo kubeadm init #쿠버네티스 마스터 노드 설정(master 해당)
#or
sudo kubeadm init --apiserver-advertise-address "ip주소"

# 마스터 노드 생성후 후처리
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

kubectl get nodes #노드 연결 테스트

 

 

 

마스터 노드 한개를 만들고 worker node 2개를 물렸다.

728x90
반응형

'DevOps & Cloud' 카테고리의 다른 글

3. Cilium  (0) 2023.01.11
서버 및 쿠버네티스 설정값  (0) 2023.01.10
1. OpenStack Instance의 SSH 접속  (0) 2023.01.10
Bash Shell 프로그래밍(기초, 예제)  (0) 2023.01.03
GitLab - CI(Continuous Integration) 실습  (0) 2023.01.03