为极狐GitLab chart 准备 OpenShift 资源

此部分内容将教会您使用此项目中的自动化脚本来在 Google Cloud 上创建 OpenShift 集群。

准备

首先,您需要一个与您的极狐GitLab 邮箱关联的 Red Hat 账户。激活您的 Red Hat 账户后,您将有权访问运行 OpenShift 所需的许可证和订阅。

要在 Google Cloud 中启动集群,必须将公共 Cloud DNS 区域连接到已注册的域,并在 Google Cloud DNS 中进行配置。

获取 CLI 工具 和 Pull Secret

需要 CLI 工具来创建 OpenShift 集群 (openshift-install) 和与集群交互 (oc)。

需要 pull secret 从 Red Hat 的私有 Docker registry 中获取镜像。每个开发者都有一个与他们的 Red Hat 账户关联的 pull secret。

如要获取 CLI 工具和 pull secret,访问 Red Hat 的云并使用您的 Red Hat 账户登录。在此页面上,使用提供的链接下载最新版本的安装程序和命令行工具。提取这些包并将 openshift-installoc 放在您的 PATH 中。

将 pull secret 拷贝到剪切板让后将内容写到仓库根目录的 pull_secret 文件中。此文件是 gitignored。

创建一个 Google Cloud (GCP) Service Account

根据指南来在 Google Cloud cloud-native 项目中创建一个服务账户。在该文档中标记为必需的所有角色都应附加到该服务帐户。创建服务帐户后,生成 JSON 密钥并将其保存为仓库根目录中的 gcloud.json。此文件是 gitignored。

创建您的 OpenShift 集群

要创建 OpenShift 集群:

  1. 克隆极狐GitLab Operator 仓库:

    git clone https://gitlab.com/gitlab-org/cloud-native/gitlab-operator.git
    
  2. 运行脚本并在 Google Cloud 上创建 OpenShift 集群:

    cd gitlab-operator
    ./scripts/create_openshift_cluster.sh
    

这一步会创建一个具有 3 个控制面(master)和 3 个 worker 节点的 6 节点集群。整个过程大约需要 40 分钟。根据控制台结尾输出的指导来连接到集群。

一旦创建成功,您就会看到您的集群被注册到了 Red Hat cloud 上。所有安装日志和元数据都将存储在 install-$CLUSTER_NAME/ 目录中。此目录是 gitignored。

配置选项

通过设置如下环境变量可以在运行期间让配置生效。所有选项都有默认值,所以不需要设置任何选项。

变量 描述 默认值
CLUSTER_NAME 集群名称 ocp-$USER
BASE_DOMAIN 集群的根域名 k8s-ft.win
GCP_PROJECT_ID Google Cloud 项目 ID cloud-native-182609
GCP_REGION 集群的 Google Cloud 区域(region) us-central1
GOOGLE_APPLICATION_CREDENTIALS Google Cloud 服务账号 JSON 文件的路径 gcloud.json
GOOGLE_CREDENTIALS Google Cloud 服务账号 JSON 文件的内容 $GOOGLE_APPLICATION_CREDENTIALS 的内容
PULL_SECRET_FILE Red Hat pull secret 文件的路径 pull_secret
PULL_SECRET Red Hat pull secret 文件的内容 $PULL_SECRET_FILE 的内容
SSH_PUBLIC_KEY_FILE SSH 公钥文件的路径 $HOME/.ssh/id_rsa.pub
SSH_PUBLIC_KEY SSH 公钥文件的内容 $SSH_PUBLIC_KEY_FILE 的内容
LOG_LEVEL openshift-install 的输出详情 info
INSTALL_DIR 安装目录,在多集群情况下非常有用 install-$CLUSTER_NAME
note变量 CLUSTER_NAMEBASE_DOMAIN 结合在一起来构建集群的域名。

销毁您的 OpenShift 进群

要想销毁 OpenShift 集群:

  1. 克隆极狐GitLab Operator 仓库:

    git clone https://gitlab.com/gitlab-org/cloud-native/gitlab-operator.git
    
  2. 运行脚本来销毁 Google Cloud 上的 Openshift 集群。整个过程可能需要大约 4 分钟:

    cd gitlab-operator
    ./scripts/destroy_openshift_cluster.sh
    

通过设置如下环境变量可以在运行期间让配置生效。所有选项都有默认值,所以不需要设置任何选项。

变量 描述 默认值
GOOGLE_APPLICATION_CREDENTIALS Google Google Cloud 服务账号 JSON 文件的路径 gcloud.json
GOOGLE_CREDENTIALS Google Cloud 服务账号 JSON 文件的内容 $GOOGLE_APPLICATION_CREDENTIALS 的内容
LOG_LEVEL openshift-install 输出详情 info
INSTALL_DIR 安装目录,在多集群情况下非常有用 install-$CLUSTER_NAME

下一步

当您的集群正常运行后,你就可以继续安装极狐GitLab Operator了。

相关资源