k8s.io/kubernetes@v1.31.0-alpha.0.0.20240520171757-56147500dadc/cluster/gce/gci/master.yaml (about) 1 #cloud-config 2 3 users: 4 - name: etcd 5 homedir: /var/etcd 6 lock_passwd: true 7 ssh_redirect_user: true 8 9 - name: kube-bootstrap-logs-forwarder 10 gecos: User the kube-bootstrap-logs-forwarder.service runs as. 11 system: true 12 13 write_files: 14 - path: /etc/systemd/system/kube-bootstrap-logs-forwarder.service 15 permissions: 0644 16 owner: root 17 content: | 18 [Unit] 19 Description=Forwards Kubernetes bootstrap logs to serial port. 20 Before=kube-master-installation.service 21 22 [Service] 23 User=kube-bootstrap-logs-forwarder 24 Group=systemd-journal 25 SupplementaryGroups=serial 26 ExecStart=journalctl --no-tail --no-pager --follow --utc --output short-iso --unit kube-master-installation --unit kube-master-configuration --unit kubelet 27 StandardOutput=tty 28 TTYPath=/dev/ttyS2 29 30 [Install] 31 WantedBy=kubernetes.target 32 33 - path: /etc/systemd/system/kube-master-installation.service 34 permissions: 0644 35 owner: root 36 content: | 37 [Unit] 38 Description=Download and install k8s binaries and configurations 39 Requires=network-online.target 40 After=network-online.target 41 42 [Service] 43 Type=oneshot 44 RemainAfterExit=yes 45 ExecStartPre=/bin/mkdir -p /home/kubernetes/bin 46 ExecStartPre=/bin/mount --bind /home/kubernetes/bin /home/kubernetes/bin 47 ExecStartPre=/bin/mount -o remount,exec /home/kubernetes/bin 48 ExecStartPre=/usr/bin/curl --fail --retry 600 --retry-delay 3 --retry-connrefused --connect-timeout 10 --silent --show-error -H "X-Google-Metadata-Request: True" -o /home/kubernetes/bin/configure.sh http://metadata.google.internal/computeMetadata/v1/instance/attributes/configure-sh 49 ExecStartPre=/bin/chmod 544 /home/kubernetes/bin/configure.sh 50 ExecStart=/home/kubernetes/bin/configure.sh 51 52 [Install] 53 WantedBy=kubernetes.target 54 55 - path: /etc/systemd/system/kube-master-internal-route.service 56 permissions: 0644 57 owner: root 58 content: | 59 [Unit] 60 Description=Configure kube internal route 61 Requires=kube-master-installation.service 62 After=kube-master-installation.service 63 64 [Service] 65 Type=oneshot 66 RemainAfterExit=yes 67 ExecStartPre=/usr/bin/curl --fail --retry 5 --retry-delay 3 --retry-connrefused --connect-timeout 10 --silent --show-error -H "X-Google-Metadata-Request: True" -o /home/kubernetes/bin/kube-master-internal-route.sh http://metadata.google.internal/computeMetadata/v1/instance/attributes/kube-master-internal-route 68 ExecStartPre=/bin/chmod 544 /home/kubernetes/bin/kube-master-internal-route.sh 69 ExecStart=/home/kubernetes/bin/kube-master-internal-route.sh 70 71 [Install] 72 WantedBy=kubernetes.target 73 74 - path: /etc/systemd/system/kube-master-configuration.service 75 permissions: 0644 76 owner: root 77 content: | 78 [Unit] 79 Description=Configure kubernetes master 80 Requires=kube-master-installation.service 81 After=kube-master-installation.service 82 83 [Service] 84 Type=oneshot 85 RemainAfterExit=yes 86 ExecStartPre=/bin/chmod 544 /home/kubernetes/bin/configure-helper.sh 87 ExecStart=/home/kubernetes/bin/configure-helper.sh 88 ExecStartPost=systemctl stop kube-bootstrap-logs-forwarder.service 89 90 [Install] 91 WantedBy=kubernetes.target 92 93 - path: /etc/systemd/system/kube-container-runtime-monitor.service 94 permissions: 0644 95 owner: root 96 content: | 97 [Unit] 98 Description=Kubernetes health monitoring for container runtime 99 After=kube-master-configuration.service 100 101 [Service] 102 Restart=always 103 RestartSec=10 104 RemainAfterExit=yes 105 ExecStartPre=/bin/chmod 544 /home/kubernetes/bin/health-monitor.sh 106 ExecStart=/home/kubernetes/bin/health-monitor.sh container-runtime 107 108 [Install] 109 WantedBy=kubernetes.target 110 111 - path: /etc/systemd/system/kubelet-monitor.service 112 permissions: 0644 113 owner: root 114 content: | 115 [Unit] 116 Description=Kubernetes health monitoring for kubelet 117 After=kube-master-configuration.service 118 119 [Service] 120 Restart=always 121 RestartSec=10 122 RemainAfterExit=yes 123 ExecStartPre=/bin/chmod 544 /home/kubernetes/bin/health-monitor.sh 124 ExecStart=/home/kubernetes/bin/health-monitor.sh kubelet 125 126 [Install] 127 WantedBy=kubernetes.target 128 129 - path: /etc/systemd/system/kube-logrotate.timer 130 permissions: 0644 131 owner: root 132 content: | 133 [Unit] 134 Description=kube-logrotate invocation 135 136 [Timer] 137 OnCalendar=*-*-* *:00/5:00 138 139 [Install] 140 WantedBy=kubernetes.target 141 142 - path: /etc/systemd/system/kube-logrotate.service 143 permissions: 0644 144 owner: root 145 content: | 146 [Unit] 147 Description=Kubernetes log rotation 148 After=kube-master-configuration.service 149 150 [Service] 151 Type=oneshot 152 ExecStart=-/usr/sbin/logrotate /etc/logrotate.conf 153 154 [Install] 155 WantedBy=kubernetes.target 156 157 - path: /etc/systemd/system/kubernetes.target 158 permissions: 0644 159 owner: root 160 content: | 161 [Unit] 162 Description=Kubernetes 163 164 [Install] 165 WantedBy=multi-user.target 166 167 runcmd: 168 - systemctl daemon-reload 169 - systemctl enable kube-bootstrap-logs-forwarder.service 170 - systemctl enable kube-master-installation.service 171 - systemctl enable kube-master-internal-route.service 172 - systemctl enable kube-master-configuration.service 173 - systemctl enable kube-container-runtime-monitor.service 174 - systemctl enable kubelet-monitor.service 175 - systemctl enable kube-logrotate.timer 176 - systemctl enable kube-logrotate.service 177 - systemctl enable kubernetes.target 178 - systemctl start kubernetes.target