YC K8s KMS NLB ALB Lockbox DNS CL CR
August 25, 2022
Создание кластера k8s с Cillium с масштабируемой и фиксированной группой нод
В этой статье опишу создание кластера k8s с помощью ус с использованием CNI Cillium.
Всю предварительную подготовку вроде создания SA, SG, KMS, описывал ранее здесь: https://teletype.in/@cameda/3BqWWeOkRZ0
Кластер версии 1.22 с ежедневным обновлением и внешним адресом.
Создаём кластер K8s с зональным мастером и ключем KMS + Cillium.
Для создания кластера с Cillium добавили для SA новую роль: k8s.tunnelClusters.agent Добавим её к нашему SA.
export FOLDER=$(yc config get folder-id) export K8S_Creator_Resources=$(yc iam service-account get k8s-creator-resources --format json | jq -r '.id') yc resource folder add-access-binding $FOLDER --role k8s.tunnelClusters.agent --subject serviceAccount:$K8S_Creator_Resources
export K8S_Puller_Registry=$(yc iam service-account get k8s-puller-registry --format json | jq -r '.id') export NETWORK=$(yc vpc network get cameda-test --format json | jq -r '.id') export SG=$(yc vpc sg get k8s-sg --format json | jq -r '.id') export KMS=$(yc kms symmetric-key get k8s-key --format json | jq -r ".id") export SUBNET=subnet-a export ZONE=ru-central1-a yc k8s cluster create \ --folder-id $FOLDER \ --name cam-kuber-cillium \ --description "cameda k8s 1.22 + cillium" \ --network-id $NETWORK \ --zone $ZONE \ --subnet-name $SUBNET \ --public-ip \ --release-channel rapid \ --enable-network-policy \ --cilium \ --version 1.22 \ --cluster-ipv4-range 10.97.0.0/16 \ --service-ipv4-range 10.98.0.0/16 \ --auto-upgrade \ --security-group-ids $SG \ --kms-key-id $KMS \ --service-account-id $K8S_Creator_Resources \ --node-service-account-name $K8S_Puller_Registry \ --daily-maintenance-window start=23:00,duration=10h \ --async
Создание масштабируемой нод группы для кластера.
yc k8s node-group create \ --folder-id $FOLDER \ --name cam-auto-group \ --cluster-name cam-kuber-cillium \ --description "autoupgrade group" \ --metadata serial-port-enable=1 \ --metadata-from-file=ssh-keys=/Users/cameda/ssh-pairs.txt \ --location zone=$ZONE \ --platform standard-v3 \ --preemptible \ --memory 2 \ --cores 2 \ --core-fraction 100 \ --disk-type network-ssd \ --disk-size 96 \ --network-acceleration-type standard \ --network-interface security-group-ids=$SG,subnets=$SUBNET,ipv4-address=nat \ --version 1.22 \ --container-runtime containerd \ --auto-scale min=0,max=3,initial=1 \ --auto-upgrade \ --auto-repair \ --max-expansion 2 \ --max-unavailable 1 \ --daily-maintenance-window start=22:00,duration=5h \ --allowed-unsafe-sysctls net.ipv4.tcp_timestamps \ --async
--auto-scale min=0,max=5,initial=2 - здесь передаем диапазон значений для нод.
Создание фиксированной нод группы для кластера.
yc k8s node-group create \ --folder-id $FOLDER \ --name cam-fix-group \ --cluster-name cam-kuber-cillium \ --description "fixgroup" \ --metadata serial-port-enable=1 \ --metadata-from-file=ssh-keys=/Users/cameda/ssh-pairs.txt \ --location zone=$ZONE \ --platform standard-v3 \ --memory 2 \ --cores 2 \ --core-fraction 100 \ --disk-type network-ssd \ --disk-size 96 \ --network-acceleration-type standard \ --network-interface security-group-ids=$SG,subnets=$SUBNET,ipv4-address=nat \ --version 1.22 \ --container-runtime containerd \ --fixed-size 1 \ --auto-upgrade=false \ --auto-repair \ --max-expansion 2 \ --max-unavailable 1 \ --daily-maintenance-window start=22:00,duration=5h \ --allowed-unsafe-sysctls net.ipv4.tcp_timestamps \ --async
August 25, 2022, 07:50
0 views
0 reposts