Rackspace
我们将主要遵循Rackspace上的CoreOS指南。你需要具备一个安装有pip完整的python环境(sudo easy_install pip)。
请在阅读本文时,获取源码并参考contrib/rackspace中的脚本。
安装supernova
$ sudo pip install keyring
$ sudo pip install rackspace-novaclient
$ sudo pip install supernova
配置supernova
编辑~/.supernova以符合如下设定:
[production]
OS_AUTH_URL = https://identity.api.rackspacecloud.com/v2.0/
OS_USERNAME = {rackspace用户名}
OS_PASSWORD = {rackspace API密钥}
OS_TENANT_NAME = {rackspace账号ID}
OS_REGION_NAME = DFW (或ORD或其他区域)
OS_AUTH_SYSTEM = rackspace
你的账号ID显示在云控制面板界面的右上角,你的API密钥可以在Account Settings页面找到。
生成SSH密钥
deisctl工具使用SSH通道与远程主机进行通讯。如果你没有SSH密钥,以下命令将生成一个名为deis的密钥对:
$ ssh-keygen -q -t rsa -f ~/.ssh/deis -N '' -C deis
设置你的密钥
将密钥对信息发送给supernova,并给定一个可识别的名称:
$ supernova production keypair-add --pub-key ~/.ssh/deis.pub deis-key
生成新的发现URL
发现URL将节点的地址和元数据保存在一个唯一的标识下,以此协助etcd实例连接在一起。在仓库根目录下运行以下命令来生成一个带有新的发现URL的contrib/coreos/user-data文件:
$ make discovery-url
user-data中包含了必要的脚本,因此不要在未运行make discovery-url前开通Deis集群。
选择实例数量
默认情况下,开通脚本将开通3台服务器。你可以通过设置DEIS_NUM_INSTANCES覆盖这项数值:
$ DEIS_NUM_INSTANCES=5 ./provision-rackspace-cluster.sh deis-key
注意,为保证调度正常工作,集群必须至少由三个节点组成,并且成员数量永远为奇数。更多信息,见“最佳的etcd集群规模”。
不支持少于三个节点的Deis集群。
运行开通脚本
运行Rackspace开通脚本来生成一个新的CoreOS集群。你需要提供刚刚添加的密钥对名称。另外,你还可以指定一个配置名以及要使用的supernova环境。默认情况下,环境值为production,配置名为performance1-2。
$ cd contrib/rackspace
$ ./provision-rackspace-cluster.sh
Usage: provision-rackspace-cluster.sh <key pair name> [flavor] [environment]
$ ./provision-rackspace-cluster.sh deis-key
- 注意
- 开通脚本默认开通performance1-2服务器。不推荐选择更小的服务器规格。请在选择运行Deis的服务器规格时参考“系统需求”中的资源要求。
配置DNS
参考“配置DNS”获取正确设置Deis相关DNS记录的更多信息。
配置负载均衡器
你需要在Rackspace上创建两个负载均衡器来处理你的集群:
Load Balancer 1
Port 80
Protocol HTTP
Health Monitoring -
Monitor Type HTTP
HTTP Path /health-check
Load Balancer 2
Virtual IP Shared VIP on Another Load Balancer (select Load Balancer 1)
Port 2222
Protocol TCP
安装Deis平台
现在你已经完成了集群开通,请参考“安装Deis平台”开始平台安装。