sudo apt-get install ansible python3 python3-pip python3-setuptools python3 python-dev python3-dev build-essential libssl-dev libffi-dev libxml2-dev libxslt1-dev zlib1g-dev -y
sudo pip3 install ansible
Генерируем ключи и закидываем их чтобы отработал Ansible
ssh-keygen -t rsa -b 4096
Правим /etc/hosts чтобы все резолвилось по именам.
Ставим KubeSpray
mkdir k8s
cd k8s/
curl -L -o kubespray.tar.gz https://github.com/kubernetes-sigs/kubespray/archive/refs/tags/v2.19.0.tar.gz
tar zxvf kubespray.tar.gz
cd kubespray-2.19.0/
sudo pip3 install -r requirements.txt
cd ..
cp -R kubespray-2.19.0/inventory/sample/ kube_env
cd kube_env/
vim inventory.ini
[all]
node1 ansible_host=192.168.1.91 # ip=10.3.0.1 etcd_member_name=etcd1
node2 ansible_host=192.168.1.92 # ip=10.3.0.2 etcd_member_name=etcd2
[kube_control_plane]
node1
[etcd]
node1
[kube_node]
node1
node2
[calico_rr]
[k8s_cluster:children]
kube_control_plane
kube_node
calico_rr
sudo ansible-playbook ./kubespray-2.19.0/cluster.yml -u gszi --become -v -i ./kube_env/inventory.ini
Конфиг для управления находиться тут cat /root/.kube/config
Дополнение
Если создаете где то в облаке то обратите внимание сюда нужно будет добивить белый ип иначе при авторизации будет X509 Файл ./halfcluster/group_vars/k8s_cluster/k8s-cluster.yaml<br>supplementary_addresses_in_ssl_keys: [10.0.2.2, 10.0.2.3, 10.0.1.2, 10.0.1.3, 2.3.4.5]
vim /etc/ansible/ansible.cfg timeout=30