git clone https://github.com/coreos/coreos-vagrant.git下载完成后,我们接下来配置 CoreOS 集群。
curl https://discovery.etcd.io/new进入 coreos-vagrant 目录,将 user-data.sample 和 config.rb.sample 两个文件各备份一份,并去掉 .sample 后缀。得到 user-data 和 config.rb 文件。
#cloud-config然后修改 config.rb 文件,这里包含了 Vagrant 虚拟机的配置。通过这个文件实际上可以覆写任何 Vagrantfile 里的参数,但是目前我们只需要关注 $num_instances 和 $update_channel 这两个参数的值。
coreos:
etcd:
# generate a new token for each unique cluster from https://discovery.etcd.io/new # WARNING: replace each time you 'vagrant destroy'
discovery: <集群标识URL地址>
addr: $public_ipv4:4001
peer-addr: $public_ipv4:7001
... ...
$num_instances=3CoreOS 没有跨越式的版本发布,而是使用与 Arch Linux 类似的平滑的滚动升级,确保用户任何时候下载到的版本都是最新发布的系统镜像,并且从根本上解决了服务器系统在运行几年后,由于无法平滑升级而被迫重新安装的情况。此外 CoreOS 提供了 Stable、Beta 和 Alpha 三种升级通道,用于满足不同用户对系统新特性和稳定性的平衡。关于升级通道的切换,可参考官方的文档。
$update_channel='stable'
vagrant up查看集群运行状态,所有的集群实例都已经启动。
vagrant up此时,在 CoreOS 集群的内部正发生着许多故事,集群的实例之间通过自发现服务,相互认识了对方并建立了联系。它们具备了在集群中任意一个实例节点控制整个集群的能力。是的,一个功能完备的 CoreOS 服务器集群已经完全运行起来了。
Current machine states:
core-01 running (virtualbox)
core-02 running (virtualbox)
core-03 running (virtualbox)
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |