第 10 章 使用清单工作部署工作负载
您可以从 Kubernetes 集群的多集群引擎将工作负载部署到受管集群上。例如:请参阅以下带有 ManifestWork 的示例,从您的 Kubernetes 集群的多集群引擎在受管集群中创建基本的部署:
登录到 Kubernetes 集群的多集群引擎:
oc login创建一个 YAML 文件来配置
ManifestWork资源,如下例所示。将CLUSTER_NAME替换为从 导入集群文档导入的受管集群的名称。应用文件时,YAML 示例部署到受管集群default命名空间:apiVersion: work.open-cluster-management.io/v1 kind: ManifestWork metadata: name: hello-work namespace: ${CLUSTER_NAME} labels: app: hello spec: workload: manifests: - apiVersion: apps/v1 kind: Deployment metadata: name: hello namespace: default spec: selector: matchLabels: app: hello template: metadata: labels: app: hello spec: containers: - name: hello image: quay.io/asmacdo/busybox command: ['/bin/sh', '-c', 'echo "Hello, Kubernetes!" && sleep 300'] - apiVersion: v1 kind: Service metadata: labels: app: hello name: hello namespace: default spec: ports: - port: 8000 protocol: TCP targetPort: 8000 selector: app: hello应用 YAML 文件。运行以下命令:
oc apply -f manifestwork.yaml运行以下命令,从 Kubernetes 集群的多集群引擎检查 manifest
Work的状态:oc get manifestwork -n ${CLUSTER_NAME} hello-work -o yaml登录到受管集群以查看结果。使用以下命令:
oc login查看您使用 Kubernetes 集群的多集群引擎创建的部署:
$ oc get deploy -n default NAME READY UP-TO-DATE AVAILABLE AGE hello 1/1 1 1 37s您可以使用以下命令查看创建的 pod:
$ oc get pod NAME READY STATUS RESTARTS AGE hello-65f58985ff-4rm57 1/1 Running 0 42s如果查看所创建的 pod 的日志,您会看到类似如下的消息:
$ oc logs hello-65f58985ff-4rm57 Hello, Kubernetes!