A documentação do CoreOS lista vários locais para procurar pelo seu arquivo cloud-config, dependendo de como e onde a instância do CoreOS é provisionada. Como estou trabalhando nesse problema sozinho, adicionei um arquivo cloud-config a um dos locais, /var/lib/coreos-install/user_data
, com o seguinte:
#cloud-config
coreos:
locksmith:
window-start: Fri 10:00
window-length: 2h
Quando reiniciei a instância, olhei para systemctl status locksmithd
e parece que minha configuração ficou em espera
ip-172-23-109-250 core # systemctl status locksmithd
● locksmithd.service - Cluster reboot manager
Loaded: loaded (/usr/lib/systemd/system/locksmithd.service; disabled; vendor preset: disabled)
Drop-In: /run/systemd/system/locksmithd.service.d
└─20-cloudinit.conf
Active: active (running) since Fri 2018-03-02 00:36:48 UTC; 1min 37s ago
Main PID: 878 (locksmithd)
Tasks: 4 (limit: 32768)
CGroup: /system.slice/locksmithd.service
└─878 /usr/lib/locksmith/locksmithd
Mar 02 00:36:48 ip-172-23-109-250.us-west-2.compute.internal systemd[1]: Started Cluster reboot manager.
Mar 02 00:36:49 ip-172-23-109-250.us-west-2.compute.internal locksmithd[878]: Reboot window start is "Fri 10:00" and length is "2h"
Mar 02 00:36:49 ip-172-23-109-250.us-west-2.compute.internal locksmithd[878]: Next window begins at 2018-03-02 10:00:00 +0000 UTC and ends at 2018-03-02 12:00:00 +0000 UTC
Mar 02 00:36:49 ip-172-23-109-250.us-west-2.compute.internal locksmithd[878]: locksmithd starting currentOperation="UPDATE_STATUS_IDLE" strategy="reboot"
Como estou provisionando minha instância CoreOS com o kops, que reserva o local do arquivo cloud-config dos metadados Ec2 para seu próprio shell script, tive que adicionar esse espaço adicional para o meu próprio cloud-config. Parece que o CoreOS é capaz de puxar ambas as configurações.
Como alternativa, você pode declarar seu próprio caminho de configuração da nuvem com sudo coreos-cloudinit --from-file=/home/core/cloud-config.yaml