4.3. 安装 External DNS Operator
您可以在 AWS、Azure 和 Google Cloud 等云供应商上安装外部 DNS Operator。
4.3.1. 使用 OperatorHub 安装 External DNS Operator 复制链接链接已复制到粘贴板!
您可以使用 OpenShift Container Platform OperatorHub 安装外部 DNS Operator。
流程
-
在 OpenShift Container Platform Web 控制台中点 Operators
OperatorHub。 - 点 External DNS Operator。您可以使用 Filter by keyword 文本框或过滤器列表从 Operator 列表中搜索 External DNS Operator。
-
选择
external-dns-operator命名空间。 - 在 External DNS Operator 页面中,点 Install。
在 Install Operator 页面中,确保选择了以下选项:
- 将频道更新为 stable-v1。
- 安装模式为 A specific name on the cluster。
-
安装的命名空间为
external-dns-operator。如果命名空间external-dns-operator不存在,它会在 Operator 安装过程中创建。 - 将 Approval Strategy 选为 Automatic 或 Manual。默认情况下,批准策略设置为 Automatic。
- 点 Install。
如果选择了 Automatic 更新,Operator Lifecycle Manager(OLM)将自动升级 Operator 的运行实例,而无需任何干预。
如果选择 手动 更新,则 OLM 会创建一个更新请求。作为集群管理员,您必须手动批准该更新请求,才可将 Operator 更新至新版本。
验证
验证 External DNS Operator 是否在 Installed Operators 仪表板上显示 Status 为 Succeeded。
4.3.2. 使用 CLI 安装 External DNS Operator 复制链接链接已复制到粘贴板!
您可以使用 CLI 安装 External DNS Operator
先决条件
-
以具有
cluster-admin权限的用户身份登录 OpenShift Container Platform Web 控制台。 -
已登陆到 OpenShift CLI (
oc)。
流程
创建一个
Namespace对象:创建定义
Namespace对象的 YAML 文件:namespace.yaml文件示例apiVersion: v1 kind: Namespace metadata: name: external-dns-operator运行以下命令来创建
Namespace对象:$ oc apply -f namespace.yaml
创建一个
OperatorGroup对象:创建定义
OperatorGroup对象的 YAML 文件:operatorgroup.yaml文件示例apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: external-dns-operator namespace: external-dns-operator spec: upgradeStrategy: Default targetNamespaces: - external-dns-operator运行以下命令来创建
OperatorGroup对象:$ oc apply -f operatorgroup.yaml
创建
Subscription对象:创建定义
Subscription对象的 YAML 文件:subscription.yaml文件示例apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: external-dns-operator namespace: external-dns-operator spec: channel: stable-v1 installPlanApproval: Automatic name: external-dns-operator source: redhat-operators sourceNamespace: openshift-marketplace运行以下命令来创建
Subscription对象:$ oc apply -f subscription.yaml
验证
运行以下命令,从订阅获取安装计划的名称:
$ oc -n external-dns-operator \ get subscription external-dns-operator \ --template='{{.status.installplan.name}}{{"\n"}}'运行以下命令,验证安装计划的状态是否为
Complete:$ oc -n external-dns-operator \ get ip <install_plan_name> \ --template='{{.status.phase}}{{"\n"}}'运行以下命令,验证
external-dns-operatorpod 的状态是否为Running:$ oc -n external-dns-operator get pod输出示例
NAME READY STATUS RESTARTS AGE external-dns-operator-5584585fd7-5lwqm 2/2 Running 0 11m运行以下命令,验证订阅的目录源是否为
redhat-operators:$ oc -n external-dns-operator get subscription运行以下命令检查
external-dns-operator版本:$ oc -n external-dns-operator get csv