15.8. 설치 구성 파일 만들기
AWS(Amazon Web Services)에 설치하는 OpenShift Container Platform 클러스터를 사용자 지정할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform 설치 프로그램과 클러스터의 풀 시크릿이 있습니다.
프로세스
install-config.yaml파일을 생성합니다.설치 프로그램이 포함된 디렉터리로 변경하고 다음 명령을 실행합니다.
$ ./openshift-install create install-config --dir <installation_directory>1 - 1
<installation_directory>는 설치 프로그램이 생성하는 파일을 저장할 디렉터리 이름을 지정합니다.
디렉터리를 지정할 때 다음을 수행합니다.
-
디렉터리에
execute권한이 있는지 확인합니다. 설치 디렉토리에서 Terraform 바이너리를 실행하려면 이 권한이 필요합니다. 빈 디렉터리를 사용합니다. 부트스트랩 X.509 인증서와 같은 일부 설치 자산은 단기간에 만료되므로 설치 디렉터리를 재사용해서는 안 됩니다. 다른 클러스터 설치의 개별 파일을 재사용하려면 해당 파일을 사용자 디렉터리에 복사하면 됩니다. 그러나 설치 자산의 파일 이름은 릴리스간에 변경될 수 있습니다. 따라서 이전 OpenShift Container Platform 버전에서 설치 파일을 복사할 때는 주의하십시오.
참고항상
~/.powervs디렉터리를 삭제하여 오래된 구성을 재사용하지 않도록 합니다. 다음 명령을 실행합니다.$ rm -rf ~/.powervs
화면에 나타나는 지시에 따라 클라우드에 대한 구성 세부 사항을 입력합니다.
선택사항: 클러스터 시스템에 액세스하는 데 사용할 SSH 키를 선택합니다.
참고설치 디버깅 또는 재해 복구를 수행하려는 프로덕션 OpenShift Container Platform 클러스터의 경우
ssh-agent프로세스가 사용하는 SSH 키를 지정합니다.- 대상 플랫폼으로 AWS를 선택합니다.
- 컴퓨터에 AWS(Amazon Web Services) 프로필이 저장되어 있지 않은 경우 설치 프로그램을 실행하도록 구성한 사용자의 AWS 액세스 키 ID와 시크릿 액세스 키를 입력합니다.
- 클러스터를 배포할 AWS 리전을 선택합니다.
- 클러스터에 대해 구성한 Route53 서비스의 기본 도메인을 선택합니다.
- 클러스터를 설명할 수 있는 이름을 입력합니다.
install-config.yaml파일을 수정합니다. AWS Outposts 설치에는install-config.yaml파일을 수동으로 수정해야 하는 다음과 같은 제한 사항이 있습니다.-
거의 infinite 규모를 제공하는 AWS 리전과 달리 AWS Outposts는 프로비저닝된 용량, EC2 제품군 및 생성, 인스턴스 크기, 다른 워크로드에서 아직 사용하지 않는 컴퓨팅 용량의 가용성에 의해 제한됩니다. 따라서 새 OpenShift Container Platform 클러스터를 생성할 때 구성 파일의
compute.platform.aws.type섹션에 지원되는 인스턴스 유형을 제공해야 합니다. -
AWS Outposts에서 실행되는 원격 작업자와 함께 OpenShift Container Platform 클러스터를 배포할 때 Outpost 인스턴스가 생성된 가용성 영역인 컴퓨팅 인스턴스에는 하나의 가용 영역만 사용할 수 있습니다. 따라서 새 OpenShift Container Platform 클러스터를 생성할 때 컴퓨팅 인스턴스를 이 가용 영역으로 제한하려면 구성 파일의
compute.platform.aws.zones섹션에 관련 가용 영역을 제공하는 것이 좋습니다. -
Amazon EBS(Elastic Block Store) gp3 볼륨은 AWS Outposts 서비스에서 지원되지 않습니다. 이 볼륨 유형은 OpenShift Container Platform 클러스터에서 사용하는 기본 유형입니다. 따라서 새 OpenShift Container Platform 클러스터를 생성할 때
compute.platform.aws.rootVolume.type섹션의 볼륨 유형을 gp2로 변경해야 합니다. 이러한 값을 변경하는 방법에 대한 자세한 내용은 아래에서 확인할 수 있습니다.
-
거의 infinite 규모를 제공하는 AWS 리전과 달리 AWS Outposts는 프로비저닝된 용량, EC2 제품군 및 생성, 인스턴스 크기, 다른 워크로드에서 아직 사용하지 않는 컴퓨팅 용량의 가용성에 의해 제한됩니다. 따라서 새 OpenShift Container Platform 클러스터를 생성할 때 구성 파일의
여러 클러스터를 설치하는 데 사용할 수 있도록
install-config.yaml파일을 백업합니다.중요install-config.yaml파일은 설치 과정에서 사용됩니다. 이 파일을 재사용하려면 지금 백업해야 합니다.
15.8.1. AWS용 사용자 정의 install-config.yaml 파일 샘플 링크 복사링크가 클립보드에 복사되었습니다!
설치 구성 파일(install-config.yaml)을 사용자 지정하여 OpenShift Container Platform 클러스터 플랫폼에 대한 자세한 정보를 지정하거나 필수 매개변수 값을 수정할 수 있습니다.
이 샘플 YAML 파일은 참조용으로만 제공됩니다. 설치 프로그램을 사용하여 install-config.yaml 파일을 받아서 수정해야 합니다.
apiVersion: v1
baseDomain: example.com
credentialsMode: Mint
controlPlane:
hyperthreading: Enabled
name: master
platform: {}
replicas: 3
compute:
- hyperthreading: Enabled
name: worker
platform:
aws:
type: m5.large
zones:
- us-east-1a
rootVolume:
type: gp2
size: 120
replicas: 3
metadata:
name: test-cluster
networking:
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16
networkType: OVNKubernetes
serviceNetwork:
- 172.30.0.0/16
platform:
aws:
region: us-west-2
propagateUserTags: true
userTags:
adminContact: jdoe
costCenter: 7536
subnets:
- subnet-1
- subnet-2
- subnet-3
sshKey: ssh-ed25519 AAAA...
pullSecret: '{"auths": ...}'
- 1 11 13 17
- 필수 항목입니다. 설치 프로그램에서 이 값을 입력하라는 메시지를 표시합니다.
- 2
- 선택 사항: 이 매개변수를 추가하여 CCO(Cloud Credential Operator)에서 지정된 모드를 사용하도록 강제 적용합니다. 기본적으로 CCO는
kube-system네임스페이스의 root 인증 정보를 사용하여 인증 정보의 기능을 동적으로 확인합니다. CCO 모드에 대한 자세한 내용은 인증 및 권한 부여 가이드의 "Cloud Credential Operator 정보" 섹션을 참조하십시오. - 3 6 14
- 이러한 매개변수와 값을 지정하지 않으면 설치 프로그램은 기본값을 적용합니다.
- 4
controlPlane섹션은 단일 매핑이지만compute섹션은 일련의 매핑입니다. 서로 다른 데이터 구조의 요구사항을 충족하도록compute섹션의 첫 번째 줄은 하이픈(-)으로 시작해야 하며controlPlane섹션의 첫 번째 줄은 하이픈으로 시작할 수 없습니다. 하나의 컨트롤 플레인 풀만 사용됩니다.- 5 7
- 동시 멀티스레딩 또는
hyperthreading활성화/비활성화 여부를 지정합니다. 시스템 코어의 성능을 높이기 위해 기본적으로 동시 멀티스레딩이 활성화됩니다. 매개변수 값을Disabled로 설정하여 비활성화할 수 있습니다. 일부 클러스터 시스템에서 동시 멀티스레딩을 비활성화할 경우에는 해당 멀티스레딩을 모든 클러스터 시스템에서 비활성화해야 합니다.중요동시 멀티스레딩을 비활성화하는 경우 용량 계획에서 시스템 성능이 크게 저하될 수 있는 문제를 고려해야 합니다. 동시 멀티스레딩을 비활성화하는 경우 시스템에 더 큰 인스턴스 유형(예:
m4.2xlarge또는m5.2xlarge)을 사용합니다. - 8
- AWS Outpost 인스턴스에서 실행되는 컴퓨팅 인스턴스의 경우 AWS Outpost 인스턴스에 지원되는 인스턴스 유형을 지정합니다.
- 9
- AWS Outpost 인스턴스에서 실행되는 컴퓨팅 인스턴스의 경우 Outpost 인스턴스가 있는 가용 영역을 지정합니다.
- 10
- AWS Outpost 인스턴스에서 실행되는 컴퓨팅 인스턴스의 경우 지원되지 않는 gp3 볼륨 유형을 사용하지 않도록 볼륨 유형 gp2를 지정합니다.
- 12
- 설치할 클러스터 네트워크 플러그인입니다. 지원되는 값은
OVNKubernetes및OpenShiftSDN입니다. 기본값은OVNKubernetes입니다. - 15
- 자체 VPC를 제공하는 경우 클러스터가 사용하는 각 가용성 영역의 서브넷을 지정합니다.
- 16
- 선택사항으로, 클러스터의 시스템에 액세스하는 데 사용할
sshKey값을 제공할 수도 있습니다.참고설치 디버깅 또는 재해 복구를 수행하려는 프로덕션 OpenShift Container Platform 클러스터의 경우
ssh-agent프로세스가 사용하는 SSH 키를 지정합니다.
15.8.2. 클러스터에 기존 AWS 보안 그룹 적용 링크 복사링크가 클립보드에 복사되었습니다!
컨트롤 플레인 및 컴퓨팅 머신에 기존 AWS 보안 그룹을 적용하면 이러한 시스템의 수신 또는 발신 트래픽을 제어해야 하는 경우 조직의 보안 요구 사항을 충족하는 데 도움이 될 수 있습니다.
사전 요구 사항
- AWS에서 보안 그룹을 생성했습니다. 자세한 내용은 보안 그룹 작업에 대한 AWS 설명서를 참조하십시오.
- 보안 그룹은 클러스터를 배포하는 기존 VPC와 연결되어야 합니다. 보안 그룹은 다른 VPC와 연결할 수 없습니다.
-
기존
install-config.yaml파일이 있습니다.
프로세스
-
install-config.yaml파일에서compute.platform.aws.additionalSecurityGroupIDs매개변수를 편집하여 컴퓨팅 머신에 대한 사용자 지정 보안 그룹을 하나 이상 지정합니다. -
controlPlane.platform.aws.additionalSecurityGroupIDs매개변수를 편집하여 컨트롤 플레인 시스템에 대한 사용자 지정 보안 그룹을 하나 이상 지정합니다. - 파일을 저장하고 클러스터를 배포할 때 참조합니다.
사용자 지정 보안 그룹을 지정하는 샘플 install-config.yaml 파일
# ...
compute:
- hyperthreading: Enabled
name: worker
platform:
aws:
additionalSecurityGroupIDs:
- sg-1
- sg-2
replicas: 3
controlPlane:
hyperthreading: Enabled
name: master
platform:
aws:
additionalSecurityGroupIDs:
- sg-3
- sg-4
replicas: 3
platform:
aws:
region: us-east-1
subnets:
- subnet-1
- subnet-2
- subnet-3