Ansible hosts 파일은 OpenShift 클러스터의 노드를 정의합니다.

프로시저

  1. https://github.com/vmware/nsx-integration-for-openshift에서 NCP GitHub 저장소를 복제합니다. Hosts 파일은 openshift-ansible-nsx 디렉토리에 있습니다. openshift ansible nsx 디렉토리에 hosts 파일을 유지해야 합니다. 일부 플레이북은 여기가 hosts 파일에 대한 경로라고 가정합니다.
  2. [masters] 및 [nodes] 섹션에서 OpenShift VM의 호스트 이름과 IP 주소를 지정합니다. 예를 들면 다음과 같습니다.
        [masters]
        admin.rhel.osmaster ansible_ssh_host=101.101.101.4
      
        [single_master]
        admin.rhel.osmaster ansible_ssh_host=101.101.101.4
     
        [nodes]
        admin.rhel.osmaster ansible_ssh_host=101.101.101.4 openshift_ip=101.101.101.4 openshift_schedulable=true openshift_hostname=admin.rhel.osmaster
        admin.rhel.osnode ansible_ssh_host=101.101.101.5 openshift_ip=101.101.101.5 openshift_hostname=admin.rhel.osnode
     
        [etcd]
     
        [OSEv3:children]
        masters
        nodes
        etcd

    openshift_ip에서는 사용할 인터페이스가 기본 인터페이스가 아닌 경우 클러스터 내부 IP를 식별하고 설정해야 합니다. single_master 변수는 마스터 노드의 ncp 관련 역할이 특정 작업(예: NSX-T Data Center 관리부 리소스 구성)을 한 번만 수행하는 데 사용됩니다.

  3. Ansible 역할이 실행되는 노드(일반적으로 마스터 노드)의 암호없이 모든 노드에 액세스할 수 있도록 SSH 액세스를 설정합니다.
        ssh-keygen
        ssh-copy-id -i ~/.ssh/id_rsa.pub root@admin.rhel.osnode
  4. [OSEv3:vars] 섹션을 업데이트합니다. 모든 매개 변수에 대한 세부 정보는 고급 설치를 위한 OpenShift Container Platform 설명서에서 확인할 수 있습니다(https://docs.openshift.com에서 "고급 설치" 검색). 예를 들면 다음과 같습니다.
        # Set the default route fqdn
        openshift_master_default_subdomain=apps.corp.local
    
        os_sdn_network_plugin_name=cni
        openshift_use_openshift_sdn=false
        openshift_node_sdn_mtu=1500
    
        # If ansible_ssh_user is not root, ansible_become must be set to true
        ansible_become=true
    
        openshift_master_default_subdomain
          This is the default subdomain used in the OpenShift routes for External LB
    
        os_sdn_network_plugin_name
          Set to 'cni' for the NSX Integration
    
        openshift_use_openshift_sdn
          Set to false to disable the built-in OpenShift SDN solution
    
        openshift_hosted_manage_router
          Set to false to disable creation of router during installation. The router has to be manually started after NCP and nsx-node-agent are running.
    
        openshift_hosted_manage_registry
          Set to false to disable creation of registry during installation. The registry has to be manually started after NCP and nsx-node-agent are running.
     
        deployment_type
          Set to openshift-enterprise
    
        openshift_hosted_manage_registry
          Set to false to disable auto creation of registry
    
        openshift_hosted_manage_router
          Set to false to disable auto creation of router
    
        openshift_enable_service_catalog
          Set to false to disable service_catalog
    
        (For OpenShift 3.9 only) skip_sanity_checks
          Set to true
    
        (For OpenShift 3.9 only) openshift_web_console_install
          Set to false
  5. 모든 호스트에 연결할 수 있는지 확인합니다.
        ansible OSEv3 -i /PATH/TO/HOSTS/hosts -m ping

    결과는 다음과 같아야 합니다. 그렇지 않은 경우 연결 문제를 해결합니다.

        openshift-node1 | SUCCESS => {
           "changed": false,
           "ping": "pong"
        }
        openshift-master | SUCCESS => {
           "changed": false,
           "ping": "pong"
        }

다음에 수행할 작업

CNI 플러그인과 OVS를 설치합니다. CNI 플러그인, OVS 및 NCP Docker 이미지 설치의 내용을 참조하십시오.