第 15 章 在 Google Compute Engine 上置备云实例
Satellite 可以与 Google Compute Engine (GCE)交互,包括创建新虚拟机并控制其电源管理状态。
您只能在 Satellite 中使用红帽支持的金级镜像来创建 GCE 主机。
先决条件
- 在 Satellite 上配置域和子网。有关网络要求的详情,请参考 第 3 章 配置网络。
- 您可以将同步的内容软件仓库用于 Red Hat Enterprise Linux。如需更多信息 ,请参阅管理内容中的 同步存储库。
- 为主机注册提供激活码。如需更多信息,请参阅管理内容中的创建激活码 。
- 在 GCE 项目中,使用必要的 IAM Compute 角色配置服务帐户。如需更多信息,请参阅 GCE 文档中的 Compute Engine IAM 角色。
-
在 GCE project-wise 元数据中,将
enable-oslogin
设置为FALSE
。如需更多信息,请参阅 GCE 文档中的启用或禁用操作系统登录 部分。 -
可选: 如果要将 Puppet 与 GCE 主机搭配使用,请导航到 Administer > Settings > Puppet,并启用
Use UUID for
certificate 设置,将 Puppet 配置为使用一致的 Puppet 证书 ID。 -
根据您的需要,将
finish
或user_data
置备模板与您要使用的操作系统关联。如需更多信息,请参阅 置备主机 中的 置备模板。
15.1. 将 Google GCE 连接添加到 Satellite 服务器
在 Satellite 中,使用此流程将 Google Compute Engine (GCE)添加为计算资源。要使用 CLI 而不是 Satellite Web UI,请参阅 CLI 过程。
流程
- 在 Google GCE 中,以 JSON 格式生成服务帐户密钥。如需更多信息,请参阅 GCE 文档中的 创建和管理服务帐户密钥。
- 在 Satellite Web UI 中,进入到 Infrastructure > Compute Resources,再点 Create Compute Resource。
- 在 Name 字段中输入计算资源的名称。
- 从 Provider 列表中,选择 Google。
- 可选:在 Description 字段中输入资源的描述。
- 在 JSON key 字段中,单击 Choose File 并找到您的服务帐户密钥,以便从本地机器上传。
- 点 Load Zones 从 GCE 环境中填充区列表。
- 从 Zone 列表中,选择要使用的 GCE 区域。
- 点 Submit。
CLI 过程
- 在 Google GCE 中,以 JSON 格式生成服务帐户密钥。如需更多信息,请参阅 GCE 文档中的 创建和管理服务帐户密钥。
将文件从本地机器复制到 Satellite 服务器:
# scp My_GCE_Key.json root@satellite.example.com:/etc/foreman/My_GCE_Key.json
在 Satellite 服务器上,将服务帐户密钥的所有者改为
foreman
用户:# chown root:foreman /etc/foreman/My_GCE_Key.json
在管理门户中,为您的服务帐户密钥配置权限,以确保该文件可读:
# chmod 0640 /etc/foreman/My_GCE_Key.json
在 Satellite 服务器中,为您的服务帐户密钥恢复 SELinux 上下文:
# restorecon -vv /etc/foreman/My_GCE_Key.json
使用
hammer compute-resource create
命令将 GCE 计算资源添加到 Satellite 中:# hammer compute-resource create \ --key-path "/etc/foreman/My_GCE_Key.json" \ --name "My_GCE_Compute_Resource" \ --provider "gce" \ --zone "My_Zone"