始める前に
Kubernetesクラスターが設定済みで実行中であることを確認します。
手順
-
次のようにdemorestroute.yaml設定ファイルを作成し、DemoRESTRouteアーティファクトをデプロイメントします。
# Kubernetes DemoRESTRoute deployment
#
apiVersion: v1
kind: Service
metadata:
name: demorestroute
labels:
app : demorestroute
spec:
ports:
- port: <MACHINE_PORT>
targetPort: 8065
name: http-demorestroute
selector:
app : demorestroute
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: demorestroute-v1
spec:
replicas: 1
template:
metadata:
labels:
app : demorestroute
version: v1
spec:
containers:
- name: demorestroute
image: <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8065
---
ここで
- <MACHINE_PORT>には、ホストポートをコンテナーポートにバインドするために使われるポートが入ります。
- <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>には、アーティファクトリポジトリー(NexusまたはArtifactory)で設定されているDockerレジストリーのURLのホストが入ります。
- <STUDIO_PROJECT>にはTalend Studioのプロジェクト名が入ります。これはGitプロジェクトと同じ名前です。プロジェクト名は大文字であることが必要です。
-
kubectl apply -f demorestroute.yaml
コマンドを実行し、アーティファクトをKubernetesにデプロイメントします。
例
$ kubectl apply -f demorestroute.yaml
service/demorestroute created
deployment.extensions/demorestroute-v1 created
-
kubectl get po
コマンドを実行し、Kubernetesポッドが稼働中かどうかチェックします。
例
$ kubectl get po
NAME READY STATUS RESTARTS AGE
demorestroute-v1-6c4dc67648-z6zh7 1/1 Running 0 8s
-
ブラウザーでエンドポイントにアクセスします。XMLドキュメントが返されます。
例
http://localhost:<MACHINE_PORT>/services/customers
-
kubectl delete -f demorestroute.yaml
コマンドを実行し、アーティファクトのデプロイメント後にKubernetesポッドをクリーンアップします。
例
$ kubectl delete -f demorestroute.yaml
service "demorestroute" deleted
deployment.extensions "demorestroute-v1" deleted