1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00
Files
openshift-docs/modules/nw-installing-external-dns-operator-cli.adoc

141 lines
3.2 KiB
Plaintext

// Module included in the following assemblies:
//
// * networking/external_dns_operator/nw-installing-external-dns-operator-on-cloud-providers.adoc
:_mod-docs-content-type: PROCEDURE
[id="nw-installing-external-dns-operator-cli_{context}"]
= Installing the External DNS Operator by using the CLI
[role="_abstract"]
You can use the {oc-first} to install the External DNS Operator. The Operator manages the installation process directly from your terminal without you having to use the web console.
.Prerequisites
* You are logged in to the {oc-first}.
.Procedure
. Create a `Namespace` object:
+
.. Create a YAML file that defines the `Namespace` object:
+
.Example `namespace.yaml` file
[source,yaml]
----
apiVersion: v1
kind: Namespace
metadata:
name: external-dns-operator
# ...
----
+
.. Create the `Namespace` object by running the following command:
+
[source,terminal]
----
$ oc apply -f namespace.yaml
----
. Create an `OperatorGroup` object:
+
.. Create a YAML file that defines the `OperatorGroup` object:
+
.Example `operatorgroup.yaml` file
[source,yaml]
----
apiVersion: operators.coreos.com/v1
kind: OperatorGroup
metadata:
name: external-dns-operator
namespace: external-dns-operator
spec:
upgradeStrategy: Default
targetNamespaces:
- external-dns-operator
# ...
----
+
.. Create the `OperatorGroup` object by running the following command:
+
[source,terminal]
----
$ oc apply -f operatorgroup.yaml
----
. Create a `Subscription` object:
+
.. Create a YAML file that defines the `Subscription` object:
+
.Example `subscription.yaml` file
[source,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
# ...
----
+
.. Create the `Subscription` object by running the following command:
+
[source,terminal]
----
$ oc apply -f subscription.yaml
----
.Verification
. Get the name of the install plan from the subscription by running the following command:
+
[source,terminal]
----
$ oc -n external-dns-operator \
get subscription external-dns-operator \
--template='{{.status.installplan.name}}{{"\n"}}'
----
. Verify that the status of the install plan is `Complete` by running the following command:
+
[source,terminal]
----
$ oc -n external-dns-operator \
get ip <install_plan_name> \
--template='{{.status.phase}}{{"\n"}}'
----
. Verify that the status of the `external-dns-operator` pod is `Running` by running the following command:
+
[source,terminal]
----
$ oc -n external-dns-operator get pod
----
+
.Example output
[source,terminal]
----
NAME READY STATUS RESTARTS AGE
external-dns-operator-5584585fd7-5lwqm 2/2 Running 0 11m
----
. Verify that the catalog source of the subscription is `redhat-operators` by running the following command:
+
[source,terminal]
----
$ oc -n external-dns-operator get subscription
----
. Check the `external-dns-operator` version by running the following command:
+
[source,terminal]
----
$ oc -n external-dns-operator get csv
----