Files
yandexcloud-k3s/terraform/main/configs/cloud_init/worker.yaml
T
2025-10-31 15:20:30 +03:00

57 lines
1.6 KiB
YAML

#cloud-config
ssh_pwauth: false
package_update: true
package_upgrade: true
growpart:
mode: growpart
devices: ["/"]
ignore_growroot_disabled: true
users:
- name: ubuntu
sudo: ALL=(ALL) NOPASSWD:ALL
lock_passwd: true
shell: /bin/bash
write_files:
- path: /var/lib/rancher/credentialprovider/config.yaml
permissions: "0600"
encoding: b64
content: ${k3s_credential_provider_config}
- path: /var/lib/rancher/credentialprovider/bin/yc-credential-provider
permissions: "0700"
encoding: b64
content: ${k3s_credential_provider}
runcmd:
- |
export HOME=/root
curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | bash -s -- -i /tmp/yc -n
mv /tmp/yc/bin/yc /usr/bin/
yc config set instance-service-account true
yc config set cloud-id ${yc_cloud_id}
- |
DISK=/dev/disk/by-id/virtio-data
K3S_DIR=${k3s_dir}
mkdir -p $K3S_DIR
if ! blkid $DISK > /dev/null; then
mkfs.ext4 $DISK
fi
echo "$DISK $K3S_DIR ext4 defaults 0 0" >> /etc/fstab
mount -a
resize2fs $DISK
- |
curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=stable INSTALL_K3S_EXEC="agent \
--server=https://${k3s_master_ip}:6443 \
--token=${k3s_token} \
--node-name=`hostname -f` \
--image-credential-provider-bin-dir /var/lib/rancher/credentialprovider/bin \
--image-credential-provider-config /var/lib/rancher/credentialprovider/config.yaml \
--data-dir=${k3s_dir}" sh -
- |
mkdir -p /home/ubuntu/.kube
cp ${k3s_dir}/kubeconfig/config /home/ubuntu/.kube/config
chown -R ubuntu:ubuntu /home/ubuntu/