【问题标题】:Ansible for Openshift Deployment用于 Openshift 部署的 Ansible
【发布时间】:2018-09-03 17:54:52
【问题描述】:

我想使用 Ansible Playbook 在 Openshift 上部署 pod。

为此,我写了以下剧本:

    - name: Create Deployment Config for the usecase
      with_dict: "{{ apps }}"
      openshift_v1_deployment_config:
         name: "{{ item.key }}"
         namespace: "{{ usecaseId }}"
         labels: 
           app: "{{ item.key }}"
           service: "{{ item.key }}"
         replicas: 1 
         selector: 
           app: "{{ item.key }}"
           service: "{{ item.key }}"
         spec_template_metadata_labels:
          app: "{{ item.key }}"
          service: "{{ item.key }}"
         containers: 
          - env:
             image: "{{ openshift_registry_svc_url }}/{{ usecaseId }}/{{ item.key }}"
             name: "{{ item.key }}"
             ports:
               - container_port: 8080
                 protocol: TCP 

任何知道如何使用 ansible 本身.TIA 获取已部署 Pod 的 IP 地址的人

【问题讨论】:

    标签: ansible openshift


    【解决方案1】:

    Shagun,我认为您无法获取集群外 Pod 的 IP 地址,因为 IP 由 openshift SAN 管理,外部世界可以通过路由、端口转发、手动分配连接到 Pod服务的外部 IP 希望这个 url 有助于连接到 pod 的方法https://docs.openshift.com/container-platform/3.5/dev_guide/expose_service/index.html

    【讨论】:

      【解决方案2】:

      终于找到了。 这可以使用 ansible 提供的以下 kubernetes 模块来完成:k8s

      例如:

      - name: Fetch all pods which are running
        set_fact:
           deployments_pod: "{{ lookup('k8s', kind='Pod', namespace=test) }}"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-06
        • 1970-01-01
        • 1970-01-01
        • 2015-07-20
        相关资源
        最近更新 更多