7.2. 获取所需的软件包和镜像
在断开连接的环境中安装 OpenShift Container Platform 前,先获取所需的镜像和组件并将它们存储在存储库中。
您必须在与断开连接的环境中具有与集群相同的架构的系统上获取所需的镜像和软件组件。
7.2.1. 获取 OpenShift Container Platform 软件包
在有互联网连接的 RHEL 7 服务器中,同步软件仓库:
要确保在同步该存储库后不会删除软件包,请导入 GPG 密钥:
$ rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
使用红帽客户门户网站注册服务器。您必须使用与可访问 OpenShift Container Platform 订阅的帐户关联的凭证:
$ subscription-manager register
从 RHSM 获取最新的订阅数据:
$ subscription-manager refresh
附加提供 OpenShift Container Platform 频道的订阅。
找到提供 OpenShift Container Platform 频道的可用订阅池:
$ subscription-manager list --available --matches '*OpenShift*'
为提供 OpenShift Container Platform 的订阅附加一个池 ID:
$ subscription-manager attach --pool=<pool_id> $ subscription-manager repos --disable="*"
仅启用 OpenShift Container Platform 3.11 需要的存储库:
对于 x86_64 服务器中的云安装和内部安装,请运行以下命令:
# subscription-manager repos \ --enable="rhel-7-server-rpms" \ --enable="rhel-7-server-extras-rpms" \ --enable="rhel-7-server-ose-3.11-rpms" \ --enable="rhel-7-server-ansible-2.9-rpms"
对于 IBM POWER8 服务器中的内部安装,请运行以下命令:
# subscription-manager repos \ --enable="rhel-7-for-power-le-rpms" \ --enable="rhel-7-for-power-le-extras-rpms" \ --enable="rhel-7-for-power-le-optional-rpms" \ --enable="rhel-7-server-ansible-2.9-for-power-le-rpms" \ --enable="rhel-7-server-for-power-le-rhscl-rpms" \ --enable="rhel-7-for-power-le-ose-3.11-rpms"
对于 IBM POWER9 服务器中的内部安装,请运行以下命令:
# subscription-manager repos \ --enable="rhel-7-for-power-9-rpms" \ --enable="rhel-7-for-power-9-extras-rpms" \ --enable="rhel-7-for-power-9-optional-rpms" \ --enable="rhel-7-server-ansible-2.9-for-power-9-rpms" \ --enable="rhel-7-server-for-power-9-rhscl-rpms" \ --enable="rhel-7-for-power-9-ose-3.11-rpms"
注意旧版本的 OpenShift Container Platform 3.11 仅支持 Ansible 2.6。Playbook 的最新版本现在支持 Ansible 2.9,这是首选的版本。
安装所需的软件包:
$ sudo yum -y install yum-utils createrepo docker git
yum-utils
软件包提供 reposync 工具,可让您镜像 yum 存储库,您可以使用createrepo
软件包从目录中创建可用的yum
存储库。创建一个目录将软件保存在服务器的存储中,或者 USB 驱动器或者其它外部设备中:
$ mkdir -p </path/to/repos>
重要如果您可以将这个服务器重新连接到断开连接的 LAN,并使用它作为存储库服务器,请在本地存储这些文件。如果无法使用 USB 连接的存储,可以将软件传送到断开连接的 LAN 中的存储库服务器中。
同步软件包并为每个软件包创建程序库。
对于 x86_64 服务器中的内部安装,请运行以下命令:
$ for repo in \ rhel-7-server-rpms \ rhel-7-server-extras-rpms \ rhel-7-server-ansible-2.9-rpms \ rhel-7-server-ose-3.11-rpms do reposync --gpgcheck -lm --repoid=${repo} --download_path=</path/to/repos> 1 createrepo -v </path/to/repos/>${repo} -o </path/to/repos/>${repo} 2 done
对于 IBM POWER8 服务器中的内部安装,请运行以下命令:
$ for repo in \ rhel-7-for-power-le-rpms \ rhel-7-for-power-le-extras-rpms \ rhel-7-for-power-le-optional-rpms \ rhel-7-server-ansible-2.9-for-power-le-rpms \ rhel-7-server-for-power-le-rhscl-rpms \ rhel-7-for-power-le-ose-3.11-rpms do reposync --gpgcheck -lm --repoid=${repo} --download_path=</path/to/repos> 1 createrepo -v </path/to/repos/>${repo} -o </path/to/repos/>${repo} 2 done
对于 IBM POWER9 服务器中的内部安装,请运行以下命令:
$ for repo in \ rhel-7-for-power-9-rpms \ rhel-7-for-power-9-extras-rpms \ rhel-7-for-power-9-optional-rpms \ rhel-7-server-ansible-2.9-for-power-9-rpms \ rhel-7-server-for-power-9-rhscl-rpms \ rhel-7-for-power-9-ose-3.11-rpms do reposync --gpgcheck -lm --repoid=${repo} --download_path=/<path/to/repos> 1 createrepo -v </path/to/repos/>${repo} -o </path/to/repos/>${repo} 2 done