클라우드/Kubernetes
(Kubernetes) kubespray로 클러스터 구성하기
Cloud_Park
2023. 2. 10. 14:19
클라우드인스턴스에 kubespray로 클러스터 구성하기
kubespray는 ansible로 진행되어 아래의 설정이 필요합니다.
환경 : 클라우드 인스턴스 서버
OS: 우분투 20.04
서버 수: 4 (마스터 노드3 , 워커노드 1)
모든 서버에서 하는걸 권장
2023.02.09 - [운영체제/리눅스] - (리눅스) 클라우드인스턴스에 ssh public key 배포
2023.02.10 - [운영체제/리눅스] - (리눅스)클라우드 인스턴스 root 계정 활성화하기
1. 기본 소스파일 설치
설치할 서버에서
git clone https://github.com/kubernetes-sigs/kubespray.git
sudo apt update -y
sudo apt install -y python3-pip
pip3 --version
cd kubespray/
sudo pip3 install -r requirements.txt
2. 샘플파일 복사 및 내용 수정
cp -rfp inventory/sample inventory/mycluster
vi inventory/mycluster/inventory.ini
---
[all]
node1 ansible_host=아이피 ip=아이피
node2 ansible_host=아이피 ip=아이피
node3 ansible_host=아이피 ip=아이피
[kube_control_plane]
node1
node2
node3
[etcd]
node1
node2
node3
[kube_node]
node1
node2
node3
node4
[calico_rr]
[k8s_cluster:children]
kube_control_plane
kube_node
calico_rr
3. 플레이북 실행
ansible all -m ping -i inventory/mycluster/inventory.ini
ansible-playbook -i inventory/mycluster/inventory.ini cluster.yml -b
4. 결과 확인
아래에 파일 내용 확인
해당 파일 ~/.kube/config 와 동일
sudo vi /etc/kubernetes/admin.conf
만일 다른 유저에서 명령어를 사용을 원하면 하기와 같이 한다.
sudo mkdir /home/유저/.kube
sudo cp /etc/kubernetes/admin.conf ~/.kube/config
sudo chown 유저 /home/유저/.kube/config
별도 설정한 것
/etc/hosts에 node 추가
옵션
변수 설정 : inventory/mycluster/group_vars