13.3.14. install-config.yaml 사용자 정의
여기에서는 3 개의 Python 스크립트를 사용하여 설치 프로그램의 일부 기본 동작을 재정의합니다.
- 기본적으로 설치 프로그램은 머신 API를 사용하여 노드를 만듭니다. 이 기본 동작을 재정의하려면 컴퓨팅 노드 수를 복제본 0으로 설정합니다. 나중에 Anable Playbook을 사용하여 컴퓨팅 노드를 생성합니다.
- 기본적으로 설치 프로그램은 노드의 시스템 네트워크의 IP 범위를 설정합니다. 이 기본 동작을 재정의하려면 인프라와 일치하도록 IP 범위를 설정합니다.
-
기본적으로 설치 프로그램은 플랫폼을
ovirt
로 설정합니다. 그러나 사용자 프로비저닝 인프라에 클러스터를 설치하는 것은 베어 메탈에 클러스터를 설치하는 것과 비슷합니다. 따라서install-config.yaml
에서 ovirt 플랫폼 섹션을 삭제하고 플랫폼을none
으로 변경합니다. 대신inventory.yml
을 사용하여 모든 필수 설정을 지정합니다.
이 스니펫은 Python 3 및 Python 2에서 작동합니다.
프로세스
컴퓨팅 노드 수를 복제본 0으로 설정합니다.
$ python3 -c 'import os, yaml path = "%s/install-config.yaml" % os.environ["ASSETS_DIR"] conf = yaml.safe_load(open(path)) conf["compute"][0]["replicas"] = 0 open(path, "w").write(yaml.dump(conf, default_flow_style=False))'
머신 네트워크의 IP 범위를 설정합니다. 예를 들어 범위를
172.16.0.0/16
으로 설정하려면 다음을 입력합니다.$ python3 -c 'import os, yaml path = "%s/install-config.yaml" % os.environ["ASSETS_DIR"] conf = yaml.safe_load(open(path)) conf["networking"]["machineNetwork"][0]["cidr"] = "172.16.0.0/16" open(path, "w").write(yaml.dump(conf, default_flow_style=False))'
ovirt
섹션을 제거하고 플랫폼을none
으로 변경합니다.$ python3 -c 'import os, yaml path = "%s/install-config.yaml" % os.environ["ASSETS_DIR"] conf = yaml.safe_load(open(path)) platform = conf["platform"] del platform["ovirt"] platform["none"] = {} open(path, "w").write(yaml.dump(conf, default_flow_style=False))'
주의Red Hat Virtualization은 현재 oVirt 플랫폼에서 사용자 프로비저닝 인프라를 사용하여 설치를 지원하지 않습니다. 따라서 플랫폼을
none
으로 설정해야 OpenShift Container Platform에서 각 노드를 베어 메탈 노드로 식별하고 클러스터를 베어 메탈 클러스터로 식별할 수 있습니다. 이는 모든 플랫폼에 클러스터를 설치하는 것과 동일하며 다음과 같은 제한 사항이 있습니다.- 클러스터 공급자가 없으므로 각 머신을 수동으로 추가해야 하며 노드 확장 기능이 없습니다.
- oVirt CSI 드라이버가 설치되지 않으며 CSI 기능이 없습니다.