2.2. Kubernetes と Openshift のチュートリアル
このチュートリアルには、Kubernetes/OpenShift で Infinispan ライブラリーモードを (マイクロサービスとして) 実行する方法が記載されています。
前提条件: バックグラウンドで実行されている Maven および Docker デーモン。
前提条件
- 実行中の Openshift または Kubernetes クラスター
チュートリアルのビルド
このチュートリアルは、Maven コマンドを使用してビルドします。
./mvnw package
target/
ディレクトリーに、docker
(生成された Dockerfile を含む) や、Kubernetes および OpenShift デプロイメントテンプレートを含む classes/META-INF/jkube
などの追加のディレクトリーが含まれています。
Docker デーモンがダウンしている場合、ビルドで Dockerfiles の処理が省略されます。手動でオンにするには、docker
プロファイルを使用します。
チュートリアルを Kubernetes にデプロイする
これは JKube Maven プラグインによって処理されます。以下を呼び出してください。
mvn k8s:build k8s:push k8s:resource k8s:apply -Doptions.image=<IMAGE_NAME> 1
- 1
IMAGE_NAME
は、Kubernetes にデプロイするコンテナーの FQN に置き換える必要があります。このコンテナーは、Kubernetes クラスター内からアクセスでき、プッシュする権限を持っているリポジトリーに作成する必要があります。
表示とスケールアップ
この時点ですべてが稼働しているはずです。OpenShift または Kubernetes クラスターにログインしてアプリケーションをスケールします。
kubectl scale --replicas=3 deployment/$(kubectl get rs --namespace=myproject | grep infinispan | awk '{print $1}') --namespace=myproject
チュートリアルのアンデプロイ
これは JKube Maven プラグインによって処理されます。以下を呼び出してください。
mvn k8s:undeploy