마스터 노드 3ea
- 192.168.223.131 master1
- 192.168.223.132 master2
- 192.168.223.133 master3
워커 노드 1ea
- 192.168.223.134 worker1
Ubuntu에는 기본적으로 Python이 설치되어 있어 symbolic link를 생성
sudo ln -s /usr/bin/python3 /usr/bin/python
sudo swapoff –a
sudo vi /etc/fstab → swap 주석 처리
# 권한 에러 방지를 위해 루트 계정으로 실행
sudo –i
# Key 생성 - Master1에서 실행
ssh-keygen -t rsa
cat /root/.ssh/id_rsa.pub → 복사
# Key 입력 – 모든 노드에서 실행
vi /root/.ssh/authorized_keys
# Kubespray 공식 레포지토리 복제
cd
git clone https://github.com/kubernetes-incubator/kubespray.git
cd kubespray
# requirements.txt으로 의존성 패키지들을 설치합니다.
apt install pip -y
pip install -r requirements.txt
# Ansible을 실행할 유저 설정
vi ansible.cfg
remote_user=master1 → 추가
cp -rfp inventory/sample inventory/mycluster
declare -a IPS=(192.168.223.131 192.168.223.132 192.168.223.133 192.168.223.134)
CONFIG_FILE=inventory/mycluster/hosts.yml python contrib/inventory_builder/inventory.py ${IPS[@]}
ansible-playbook -i inventory/mycluster/hosts.yml --user root cluster.yml
Can Do It
brb