【Deis文档】Deis安装之裸机


注:本文翻译自Deis官方文档,无任何商业目的,转载请注明出处。

Deis集群可以在任何CoreOS能运行的地方开通,包括你自己的硬件。
请在阅读本文时,获取源码并参考contrib/bare-metal中的脚本。
为了让CoreOS运行在基础硬件上,你需要通过PXEiPXE启动——这将完全在内存中启动一台CoreOS机器。然后,你可以将CoreOS安装到硬盘中
<dl>
<dt>重要说明</dt>
<dd>Deis需要CoreOS 472.0.0或更新版本。</dd>
</dl>

检查系统需求

请在选择运行Deis的机器规格时参考“系统需求”中的资源要求。

生成SSH密钥

deisctl工具使用SSH通道与远程主机进行通讯。如果你没有SSH密钥,以下命令将生成一个名为deis的密钥对:
shell
$ ssh-keygen -q -t rsa -f ~/.ssh/deis -N '' -C deis

自定义user-data

### 生成新的发现URL
发现URL将节点的地址和元数据保存在一个唯一的标识下,以此协助etcd实例连接在一起。在仓库根目录下运行以下命令来生成一个带有新的发现URL的contrib/coreos/user-data文件:
shell
$ make discovery-url

user-data中包含了必要的脚本,因此不要在未运行make discovery-url前开通Deis集群。

SSH密钥

将第一步生成的SSH密钥里的公钥部分添加到user-data文件中:
ini
ssh_authorized_keys:
- ssh-rsa AAAAB3... deis

更新$private_ipv4

裸机上的CoreOS无法准确的检测$private_ipv4。请使用该节点的(私有)IP地址替换在user-data文件中它出现的所有位置。

添加环境

由于CoreOS无法检测私有和公有IP地址,/etc/environment在启动时未被写入。请将其加入到user-data文件的write_files部分:
ini
- path: /etc/environment
permissions: 0644
content: |
COREOS_PUBLIC_IPV4=&lt;你的公有IP>
COREOS_PRIVATE_IPV4=&lt;你的私有IP>

安装CoreOS到硬盘中

假设你已经启动裸机服务器进入CoreOS,你现在可以进行硬盘安装。

为安装程序提供配置文件

将user-data保存到你的裸机里。本示例假定你将配置保存到/tmp/config文件。

开始安装

shell
coreos-install -C alpha -c /tmp/config -d /dev/sda

这将安装最新的CoreOS Alpha版本到硬盘中。要指定CoreOS版本,请在安装命令后添加-V参数,比如-V 494.0.0。
等安装完成后,重启你的服务器。一旦主机上线,你就可以通过deis的ssh密钥作为核心用户登录。

配置DNS

参考“配置DNS”获取正确设置Deis相关DNS记录的更多信息。

安装Deis平台

现在你已经完成了集群开通,请参考“安装Deis平台”开始平台安装。

已知问题

### 主机名是localhost
如果在安装到硬盘后后你的主机名是localhost,则请在安装前在user-data中设置hostname:
ini
hostname: your-hostname

hostname千万不要使用域名全称!

名称解析缓慢

有些DNS服务器和防火墙存在glibc并行发送IPv4和IPv6地址请求的问题。解决办法是在/etc/resolv.conf里设置single-request选项。这可在安装CoreOS到硬盘时通过user-data文件完美解决。
ini
- path: /etc/resolv.conf
permissions: 0644
content: |
nameserver 8.8.8.8
nameserver 8.8.4.4
domain your.domain.name
options single-request

0 个评论

要回复文章请先登录注册