我想重新启动我的CoreOS集群节点,因为我一次读取重启所有节点的许多不好的事情都不好(etcd,ceph无法保持法定等等),这样做的正确方法是什么,除了手动进入每台机器并发出reboot
命令?如何正确重启CoreOS群集?
是否有一种通用的方式来重新启动群集中的n个节点,等待它们启动,然后又一组n个节点,直到所有节点都重新启动?
谢谢。
我想重新启动我的CoreOS集群节点,因为我一次读取重启所有节点的许多不好的事情都不好(etcd,ceph无法保持法定等等),这样做的正确方法是什么,除了手动进入每台机器并发出reboot
命令?如何正确重启CoreOS群集?
是否有一种通用的方式来重新启动群集中的n个节点,等待它们启动,然后又一组n个节点,直到所有节点都重新启动?
谢谢。
在云config.yaml文件,你可以添加:
coreos:
update:
reboot-strategy: etcd-lock
这意味着集群中的机器将重新启动,以确保没有更多然后1号机每次重新启动之前获得锁。请参阅文档以获取更多信息: https://coreos.com/docs/cluster-management/setup/update-strategies/
锁匠是重新引导CoreOS节点的守护程序。我建议要挑ETCD锁重启策略:
coreos:
update:
reboot-strategy: etcd-lock
默认情况下,这将由1.我使用fleetctl远程控制我的CoreOS集群重启集群1。这个脚本会重启信号发送到所有的机器集群中:
#!/bin/bash -x
for machine in $(fleetctl list-machines --no-legend --full | awk '{ print $1;}'); do
fleetctl ssh $machine "sudo locksmithctl reboot"
done
如果重启策略是ETCD-锁定节点不会立即重启。它们将一个一个地重新启动,直到整个群集重新启动。
感谢您的回复。我知道这个云配置设置。但是,你如何真正地通过节点重新启动群集节点,希望通过一个命令而不是ssh进入,然后发出'sudo locksmithctl reboot'命令? – 2014-11-25 11:55:54
要在每台机器上自动执行ssh来发出命令,我建议你使用Fabric。一年后的 – emassa 2014-11-25 12:32:34
这仍然是一个好主意! – Richard 2015-09-25 14:55:51