第 10 章 使用清单工作部署工作负载


您可以从 Kubernetes 集群的多集群引擎将工作负载部署到受管集群上。例如:请参阅以下带有 ManifestWork 的示例,从您的 Kubernetes 集群的多集群引擎在受管集群中创建基本的部署:

  1. 登录到 Kubernetes 集群的多集群引擎:

    oc login
    Copy to Clipboard Toggle word wrap
  2. 创建一个 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
    Copy to Clipboard Toggle word wrap
  3. 应用 YAML 文件。运行以下命令:

    oc apply -f manifestwork.yaml
    Copy to Clipboard Toggle word wrap
  4. 运行以下命令,从 Kubernetes 集群的多集群引擎检查 manifest Work 的状态:

    oc get manifestwork -n ${CLUSTER_NAME} hello-work -o yaml
    Copy to Clipboard Toggle word wrap
  5. 登录到受管集群以查看结果。使用以下命令:

    oc login
    Copy to Clipboard Toggle word wrap
  6. 查看您使用 Kubernetes 集群的多集群引擎创建的部署:

    $ oc get deploy -n default
    NAME    READY   UP-TO-DATE   AVAILABLE   AGE
    hello   1/1     1            1           37s
    Copy to Clipboard Toggle word wrap

    您可以使用以下命令查看创建的 pod:

    $ oc get pod
    NAME                     READY   STATUS    RESTARTS   AGE
    hello-65f58985ff-4rm57   1/1     Running   0          42s
    Copy to Clipboard Toggle word wrap

    如果查看所创建的 pod 的日志,您会看到类似如下的消息:

    $ oc logs hello-65f58985ff-4rm57
    Hello, Kubernetes!
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat