VMware 下 CoreOS OVA 镜像的安装与配置

此文提供了在 VMware ESXi/Workstation/Fusion 上安装 CoreOS ova 镜像及其基本配置的有关信息,并以 CoreOS release 557 为例。

CoreOS 是一个新的 Linux 分发版本,它设计用来为集群部署提供基础架构。

本文包含以下主题:

  • 安装介绍
  • 集成 Open VM Tools

安装介绍

从版本 540.0.0 开始,CoreOS 引入了对虚拟机 OVA 格式的支持。作为推荐的方式,以下安装指引也只面向 OVA 镜像。

前置需求

检验是否完成以下步骤:

  • Read General Installation Instructions for All VMware Products.
  • Read General Knowledge for CoreOS at https://coreos.com/docs/quickstart/.

注:

安装步骤

1、将文件 coreos_production_vmware_ova.ova 上传到 Workstation/Fusion/ESXi 的 Datastore。

2、部署 CoreOS 虚拟机到 VMware。

在 VMware Workstation 或 Fusion 上部署 CoreOS 虚拟机:

1、打开文件 coreos_production_vmware_ova.ova 所处位置,并用 VMware Workstation 或 Fusion 打开。
2、编辑其名称及存储路径,然后点击导入/Import 按钮。
3、当遇到以下警告信息时,点击重试/Retry 按钮。
retry

在 VMware vSphere 上部署 CoreOS 虚拟机:

1、打开 vShere C# 客户端,或使用任何能连接到 vCenter Server 的 vSphere C# Client 或 vSphere Web Client,并连接至你的 ESXi 实例。
2、浏览至 文件/File -> 部署 OVF 模板/Deploy OVF Template,并点击浏览并定位到 coreos_production_vmware_ova.ova 所处的路径。
3、继续余下的步骤以完成虚拟机创建。

3、CoreOS 虚拟机的自动登录。

执行以下步骤以访问 CoreOS 虚拟机:

1、打开 CoreOS 虚拟机电源,并打开控制台。
2、当 Boot Loader 提示出现的时候,按下 e 键来编辑 GRUB 菜单。
3、添加 coreos.autologin 作为启动参数,并 Ctrl-x 或 F10 重启。这将使控制台跳过登录提示并直接进入用户 core 的 shell。
autologin
4、给用户 core 设置密码用以 SSH 访问。
ssh

4、Cloud-Config 文件

注:Cloud-config 文件位于 /usr/share/oem/cloud-config.yml 。访问 Cloud-Config Validator ,或者运行 coreos-cloudinit -validate 以验证 cloud-config 在该 CoreOS 虚拟机中可用。

1、为用户 core 设置 SSH 公钥。
2、从你的客户端生成一个新的 SSH key。
ssh-keygen -t rsa
3、输入一个 passphrase,并检查 id_rsa 和 id_rsa.pub 是否已经生成。
4、检查 CoreOS 虚拟机的 IP 地址。
5、登录到 CoreOS 虚拟机并编辑 /usr/share/oem/cloud-config.yml 文件。
cloudconfigyml
6、拷贝 RSA 公钥 id_rsa.pub 的内容到 ssh_authorized_keys 里。
ssh-rsa [id_rsa.pub.content.here]
sshkey
7、重启 CoreOS 虚拟机并用 RSA 私钥校验是否能登录。
[root@localhost .ssh]# ssh -i id_rsa core@[your.ip.address.here]
sshlogin

更多关于cloud-config自定义的信息,请参考 cloud-config 指南

完成首台虚拟机 user_data 自定义之后,你就可以部署更多的 CoreOS 虚拟机来设置 CoreOS 集群。

Open VM Tools

CoreOS 490.0.0 及其后版本已包含 open-vm-tools —— VMware Tools 的开源实现。更多信息,参考 VMware support of open-vm-tools (2073803)

Leave a Reply

Your email address will not be published.