kubespray로 쿠버네티스를 설치한다. kubespary 디플로이하기 전에 마스터 및 워커 노드간 통신을 위한 인증작업과 통신환경 설정을 완료했다. (kubespary 설치 사전 준비 참고)
kubespray는 ansible-playbook 를 이용해서 설치를 진행해야하기 때문에 다음과 같이 몇가지 모듈을 Master Node에 추가로 설치해야한다.
1. ansible, python, pip 설치
yum install https://centos7.iuscommunity.org/ius-release.rpm -y
yum install python36u-pip wget -y
pip3.6 install ansible netaddr jinja2
# Install dependencies from requirements.txt
cd /opt/kubespray-2.11.0
sudo pip install -r requirements.txt
# Copy inventory/sample as inventory/mycluster
cp -rfp inventory/sample inventory/mycluster
# Update Ansible inventory file with inventory builder
declare -a IPS=(192.168.56.109, 192.168.56.110, 192.168.56.111, 192.168.56.112)
CONFIG_FILE=inentory/mycluster/inventory.ini python3 contrib/inventory_builder/inventory.py ${IPS[@]}
2. 파라메터 설정 변경 여부 확인
# Review and change parameters under inventory/mycluster/goup_vars
cat inventory/mycluster/group_vars/all/all.yml
cat inventory/mycluster/group_vars/k8s-cluster/k8s-cluster.yml
3. kubespray Deploy
# Deploy kubespray with Ansible-Playbook - run the playbook as root
# The option '--become' is required, as for example writting SSL keys in /etc/,
# installing packages and interacting with various systemd daemons.
# without '--become' the playbook will fail to run.
ansible-playbook -i /opt/kubespray-2.11.0/inventory/mycluster/inventory.ini --become --become-user=root cluster.yml
ansible-playbook으로 쿠버네티스 설치가 완료되었다.
만약 설치한 k8s의 설저을 변경하고자 할 경우 다음 명령어를 사용하면 된다.
ansible-playbook -i /opt/kubespray-2.11.0/inventory/mycluster/inventory.ini --become --become-user=root reset.yml
이상으로 kubepray로 쿠버네티스 설치 방법을 정리했다.
나중에 ansible 설치와 사용 방법에 대해서도 정리해두는 것이 좋겠다.
'Automation > kubernetes' 카테고리의 다른 글
[장애처리] 쿠버네티스 운영 - 신규노드 추가 (0) | 2021.05.26 |
---|---|
kubespray 로 쿠버네티스 설치하기 #1-사전준비 (0) | 2020.11.05 |
Kubernetes 관리 - k9s (0) | 2020.09.28 |