16 WebLogic Kubernetes Operatorのインストールと構成
WebLogic Operator for Kubernetesは、Kubernetesクラスタ内のWebLogicドメインの作成と管理を容易にします。
WebLogic Operatorは、異なるネームスペースの複数の異なるドメインを管理できます。WebLogic Operator for Kubernetesは、専用のネームスペースにインストールされます。
この章の内容は次のとおりです。
- 製品固有の作業ディレクトリの設定
インストールを開始する前に、Oracle Access Managerコンテナ・イメージおよびサンプル・コード・リポジトリをダウンロードしてステージングしておく必要があります。 - この章で使用される変数
この章の以降の各項では、ファイルを作成する手順を示します。これらのサンプル・ファイルには、デプロイメントに適用可能な値に置換する必要がある変数が含まれています。 - 既存のカスタム・リソース定義の削除
WebLogicのカスタム・リソース定義が存在する場合は削除します。 - WebLogic Kubernetes Operatorのインストール
WebLogic Kubernetes Operatorをインストールする手順は、ネームスペースおよびKubernetesサービス・アカウントの作成で構成されます。インストール後にOperatorを起動します。
上位トピック: 「エンタープライズ・ドメインの構成」
製品固有の作業ディレクトリの設定
インストールを開始する前に、Oracle Access Managerコンテナ・イメージおよびサンプル・コード・リポジトリをダウンロードしてステージングしておく必要があります。
「エンタープライズ・デプロイメント用のソフトウェア・ディストリビューションの特定と取得」を参照してください。
また、「WebLogic Kubernetes Operatorのインストール」の説明に従って、Oracle WebLogic Operatorをデプロイしている必要があります。
この項では、ダウンロードしたサンプル・デプロイメント・スクリプトをOAMの構成ホストの一時作業ディレクトリにコピーする手順について説明します。
- インストール・ユーザーとして一時作業ディレクトリを作成します。インストール・ユーザーには、Kubenetesクラスタへの
kubectl
アクセス権が必要です。mkdir -p <WORKDIR>
たとえば:mkdir -p /workdir/OPER
- ディレクトリをこの場所に変更します:
cd /workdir/OPER
ノート:
このガイドでは、複数の製品で同じサンプル・ファイル・セットが使用されています。毎回ダウンロードする必要がないように、ファイルは製品固有でない作業ディレクトリにステージングされます。
WebLogic Operatorファイルは、Oracle Access ManagerとOracle Identity Governanceで同じです。したがって、サンプルのすべてのバージョンを使用できます。
- サンプル・スクリプトを作業ディレクトリにコピーします。
cp -R <WORKDIR>/fmw-kubernetes/OracleAccessManagement/kubernetes <WORKDIR>/samples
たとえば:cp -R /workdir/OPER/fmw-kubernetes/OracleAccessManagement/kubernetes /workdir/OPER/samples
この章で使用される変数
この章の以降の各項では、ファイルを作成する手順を示します。これらのサンプル・ファイルには、デプロイメントに適用可能な値に置換する必要がある変数が含まれています。
変数の形式は<VARIABLE_NAME>です。次の表に、これらの各変数に設定する必要がある値を示します。
表16-1 変更する必要がある変数
変数 | サンプル値 | 説明 |
---|---|---|
<WORKDIR> |
|
Kubernetes Operatorの作業ディレクトリを作成する場所。 |
<OPERNS> |
|
Operatorオブジェクトを保持するためのKubernetesネームスペース。 |
<OPER_VER> |
|
Kubernetes Operatorのバージョン。 |
<OPER_ACT> |
|
Kubernetes Operatorのサービス・アカウント。 |
<USE_ELK> |
|
Elasticsearch/Kibanaの監視を使用している場合は、trueに設定します。 |
<ELK_PROTO> |
|
Elasticsearchクラスタへのアクセスに使用される |
<ELK_HOST> |
|
Elasticsearchログの送信先となるホスト。これは、Kubernetesクラスタの中と外のどちらでもかまいません。 |
<ELK_PORT> |
|
ログ情報の受信に使用されるElasticsearchのポート。 |
<ELK_VER> |
|
使用するElasticsearchのバージョン。 |
既存のカスタム・リソース定義の削除
WebLogicのカスタム・リソース定義が存在する場合は削除します。
kubectl get crd
NAME AGE
domains.weblogic.oracle 5d
kubectl delete crd domains.weblogic.oracle
customresourcedefinition.apiextensions.k8s.io "domains.weblogic.oracle" deleted
WebLogic Kubernetes Operatorのインストール
WebLogic Kubernetes Operatorをインストールする手順は、ネームスペースおよびKubernetesサービス・アカウントの作成で構成されます。インストール後にOperatorを起動します。
ネームスペースの作成
kubectl create namespace <OPERNS>
kubectl create namespace opns
namespace/opns created
コンテナ・レジストリ・シークレットの作成
独自のコンテナ・レジストリを使用して、オンデマンドでOracleコンテナ・イメージをプルする場合は、コンテナ・レジストリのログイン詳細を含むシークレットを作成する必要があります。
コンテナ・イメージをローカルにステージングした場合、またはそれらをパブリック・リポジトリからプルする場合、次のコマンドを実行する必要はありません。
次のコマンドを使用して、コンテナ・レジストリ・シークレットを作成します:
kubectl create secret -n <OPERNS> docker-registry <REGISTRY_SECRET_NAME> --docker-server=<REGISTRY_ADDRESS> --docker-username=<REG_USER> --docker-password=<REG_PWD>
例:
kubectl create secret -n opns docker-registry regcred --docker-server=iad.ocir.io/mytenancy --docker-username=mytenancy/oracleidentitycloudservice/myemail@email.com --docker-password=<password>
Kubernetesサービス・アカウントの作成
kubectl create serviceaccount -n <OPERNS> <OPER_ACT>
kubectl create serviceaccount -n opns operadmin
出力は次のようになります:
serviceaccount/op-sa created
Elasticsearchのシークレットの作成
Elasticsearchを使用していて、ElasticsearchでSSLを使用するために接続が必要な場合は、Elasticsearch証明書をKubernetesシークレットに配置する必要があります。
kubectl cp <ELKNS>/elasticsearch-es-default-0:/usr/share/elasticsearch/config/http-certs/..data/ca.crt <WORKDIR>/ca.crt
Kubernetes内でElasticsearchを使用していない場合は、ca.crt
ファイルをElasticsearchインストールから作業ディレクトリにコピーする必要があります。
kubectl create secret generic logstash-certs-secret --from-file=<WORKDIR>/ca.crt -n $<OPERNS>