第3章 ユーザータスク
3.1. インストールされた Operator からのアプリケーションの作成
以下では、開発者を対象に、OpenShift Dedicated Web コンソールを使用して、インストールされた Operator からアプリケーションを作成する例を示します。
3.1.1. Operator を使用した etcd クラスターの作成
この手順では、Operator Lifecycle Manager (OLM) で管理される etcd Operator を使用した新規 etcd クラスターの作成を説明します。
前提条件
- OpenShift Dedicated クラスターにアクセスできる。
- 管理者によってクラスター全体に etcd Operator がすでにインストールされている。
手順
-
この手順を実行するために OpenShift Dedicated Web コンソールで新規プロジェクトを作成します。この例では、
my-etcd
というプロジェクトを使用します。 Operators
Installed Operators ページに移動します。このページには、dedicated-admin によってクラスターにインストールされた使用可能な Operator が、クラスターサービスバージョン (CSV) のリストの形で表示されます。CSV は Operator によって提供されるソフトウェアを起動し、管理するために使用されます。 ヒント以下を使用して、CLI でこのリストを取得できます。
$ oc get csv
Installed Operators ページで、etcd Operator をクリックして詳細情報および選択可能なアクションを表示します。
Provided APIs に表示されているように、この Operator は 3 つの新規リソースタイプを利用可能にします。これには、etcd クラスター (
EtcdCluster
リソース) のタイプが含まれます。これらのオブジェクトは、Deployment
またはReplicaSet
などの組み込み済みのネイティブ Kubernetes オブジェクトと同様に機能しますが、これらには etcd を管理するための固有のロジックが含まれます。新規 etcd クラスターを作成します。
- etcd Cluster API ボックスで、Create instance をクリックします。
-
次のページでは、
EtcdCluster
オブジェクト (クラスターのサイズなど) のテンプレートを起動する最小条件を変更できます。ここでは Create をクリックして確定します。これにより、Operator がトリガーされ、Pod、サービス、および新規 etcd クラスターの他のコンポーネントが起動します。
example etcd クラスター、Resources タブの順にクリックし、Operator が自動的に作成および設定した多数のリソースが含まれていることを確認します。
Kubernetes サービスが作成され、プロジェクトの他の Pod からデータベースにアクセスできることを確認します。
所定プロジェクトで
edit
ロールを持つすべてのユーザーは、クラウドサービスのようにセルフサービス方式でプロジェクトにすでに作成されている Operator によって管理されるアプリケーションのインスタンス (この例では etcd クラスター) を作成し、管理し、削除することができます。この機能を持つ追加のユーザーを有効にする必要がある場合、プロジェクト管理者は以下のコマンドを使用してこのロールを追加できます。$ oc policy add-role-to-user edit <user> -n <target_project>
これで、etcd クラスターは Pod が正常でなくなったり、クラスターのノード間で移行する際の障害に対応し、データのリバランスを行います。最も重要なことは、適切なアクセス権を持つ dedicated-admin または開発者が、アプリケーションでデータベースを簡単に使用できるようになった点です。