AWS 호스트를 Satellite 에 연결

Amazon Web Services(AWS) 클라우드 호스트를 IBM Cloud Satellite®에 추가하십시오. Amazon Web Services 클라우드에 있는 호스트에 특정한 다음 호스트 요구사항을 검토하십시오. AWS 클라우드에서 필수 액세스 권한은 AWS 권한을 참조하십시오.

Red Hat CoreOS (RHCOS) 호스트를 연결하려면 Red Hat CoreOS에 대해 사용자의 위치가 사용으로 설정되어 있어야 합니다. 자세한 내용은 제 위치 정보가 다음 기능에 대해 활성화되어 있나요? Red Hat CoreOS? 을 참조하십시오. Red Hat CoreOS가 사용으로 설정된 위치에 Red Hat Enterprise Linux 호스트를 연결하는 것은 여전히 가능하다는 점을 참고하십시오.

시작하기 전에, 온프레미스 데이터 센터, IBM Cloud 또는 퍼블릭 클라우드 공급자 환경에서 최소 하드웨어 요구 사항을 충족하는 호스트 머신을 생성했는지 확인하십시오.

호스트를 사용자 위치에 연결한 후에는 Satellite 에서 보안을 위해 SSH를 사용하여 호스트에 루트로 로그인하는 기능을 사용하지 않습니다. 위치에 성공적으로 연결된 호스트에 대한 루트로 SSH를 시도하면 오류 메시지가 표시될 수 있습니다. SSH 기능을 시스템에 복원하려면 호스트를 제거 하고 운영 체제를 다시 로드할 수 있습니다.

위치에 얼마나 많은 호스트를 연결해야 하는지 모르시겠습니까? Satellite 위치의 크기 결정을 참조하십시오.

Satellite에 AWS 호스트 추가

AWS(Amazon Web Services) 클라우드에서 추가한 호스트를 사용하여 IBM Cloud Satellite 위치를 작성할 수 있습니다.

추가하려는 모든 호스트는 RHEL 8 패키지 및 네트워킹 설정과 같은 일반적인 호스트 요구 사항을 충족해야 합니다. 자세한 정보는 호스트 요구사항을 참조하십시오.

자신의 위치에서 Red Hat CoreOS(RHCOS) 호스트를 사용하려는 경우에는 Red Hat CoreOS 이미지 파일을 Amazon 계정에 제공하십시오. 자세한 내용은 “ VM 를 이미지로 가져오기”를 참조하십시오. RHCOS 이미지를 찾으려면 사용 가능한 이미지 목록을 참조하십시오. 버전 4.9 이상을 사용해야 한다는 점을 참고하십시오.

시작하기 전에 Satellite 위치를 작성하십시오.

  1. Satellite 콘솔에서 ‘ AWS ’ 호스트를 추가할 위치를 선택합니다.

  2. 호스트에서 실행해야 하는 호스트 등록 스크립트를 검색하여 IBM Cloud Satellite 위치에 표시되도록 하십시오.

    1. 호스트 탭에서 호스트 연결을 클릭하십시오.
    2. 선택사항: 위치의 Satellite 사용 IBM Cloud 서비스에 호스트를 자동으로 지정하기 위해 나중에 사용되는 호스트 레이블을 입력하십시오. 레이블은 키-값 쌍으로 제공되어야 하며 서비스의 요청과 일치해야 합니다. 예를 들어, 호스트 레이블(예: env=prod 또는 service=database)이 있을 수 있습니다. 기본적으로 호스트에는 cpu, osmemory 레이블이 지정되지만, 자동 지정을 제어하기 위해 더 추가할 수도 있습니다(예: env=prod 또는 service=database).
    3. 스크립트의 파일 이름을 입력하거나 자동으로 생성된 이름을 사용하십시오.
    4. 스크립트 다운로드를 클릭하여 호스트 스크립트를 생성하고 로컬 시스템으로 다운로드하십시오. 이 스크립트의 토큰은 API 키이므로 민감한 정보로 처리되고 보호되어야 합니다.
  3. RHEL 한정 등록 스크립트를 여십시오. API_URL 행 뒤에, 구독 관리자로 필수 RHEL 패키지를 가져오는 섹션을 추가하십시오.

    # Enable AWS RHEL package updates
    yum update -y
    yum-config-manager --enable '*'
    yum repolist all
    yum install container-selinux -y
    echo "repos enabled"
    
  4. AWS EC2 대시보드 에서 [인스턴스 ] > [ 런치 템플릿 ]으로 이동합니다.

  5. 실행 템플리트 작성을 클릭하고 다음과 같이 템플리트 세부사항을 입력하십시오.

    실행 템플릿에서 지정할 수 있는 사용 가능한 옵션에 대한 개요는 ‘ AWS ’ 문서를 참조하십시오.

    1. 실행 템플리트의 이름을 입력하십시오.
    2. ‘Amazon 머신 이미지(AMI) ’ 섹션에서, AMI ID를 입력하여 찾을 수 있는 지원되는 ‘ Red Hat Enterprise Linux s 8’ 운영 체제를 반드시 선택하십시오. Red Hat Enterprise Linux AMI 사용 가능 Amazon Web Services 문서를 참조하여 AMI ID및 적절한 Red Hat Enterprise Linux 버전을 일치시킬 수 있습니다. Red Hat CoreOS 호스트를 작성하고 있는 경우에는 이미지를 AWS에 제공해야 합니다. 자세한 내용은 “ VM 를 이미지로 가져오기”를 참조하십시오.
    3. 인스턴스 유형 섹션에서 지원되는 AWS 인스턴스 유형 중 하나를 선택하십시오.
    4. 키 쌍(로그인) 섹션에서 나중에 시스템에 로그인하는 데 사용할 .pem 키를 선택하십시오. .pem 키가 없는 경우에는 이를 작성하십시오.
    5. 네트워크 설정에서 **가상 프라이빗 클라우드(VPC)**와 보안 그룹 설정에 정의된 대로 네트워크 트래픽을 허용하는 기존 서브넷 및 보안 그룹을 선택하십시오. 사용할 서브넷 또는 보안 그룹이 없는 경우, 새로 작성하십시오.
    6. 스토리지(볼륨) 섹션에서 기본 루트 볼륨을 펼치고 부트 볼륨의 크기를 100GB 이상으로 업데이트하십시오. 용량이 100GB 이상인 두 번째 디스크를 추가하십시오. 스토리지 요구사항에 대한 자세한 정보는 호스트 스토리지 및 연결된 디바이스를 참조하십시오.
    7. 고급 세부사항을 펼치고 사용자 데이터 필드로 이동하십시오.
    8. 이전에 수정한 호스트 등록 스크립트를 입력하십시오. RHCOS 호스트를 추가하고 있는 경우에는 Ignition 스크립트를 추가하십시오.
    9. 실행 템플리트 작성을 클릭하십시오.
  6. 실행 템플리트 대시보드에서 작성한 템플리트를 찾으십시오.

  7. 조치 메뉴에서 템플리트에서 인스턴스 실행을 선택하십시오.

  8. 작성하려는 인스턴스 수를 입력하고 템플리트에서 인스턴스 실행을 클릭하십시오.

  9. 인스턴스가 시작될 때까지 기다리십시오. 인스턴스를 실행하는 동안 등록 스크립트가 자동으로 실행됩니다. 이 프로세스는 완료하는 데 몇 분 정도 소요됩니다.

  10. 등록 스크립트의 진행상태를 모니터하십시오.

    1. EC2 인스턴스 대시보드에서 인스턴스의 공인 IP 주소를 검색하십시오.
    2. 인스턴스에 로그인하십시오.
        ssh -i <key>.pem ec2-user@<public_IP_address>
        ```
    3. 등록 스크립트의 상태를 검토하십시오.
    ```sh {: pre}
        journalctl -f -u ibm-host-attach
        ```
    
  11. Satellite 콘솔의 [호스트 ] 탭에 호스트가 표시되는지 확인하십시오. 해당 머신에 연결할 수 있는 경우 모든 호스트의 ‘ 건강 ’ 상태는 ‘ Ready ’로 표시되며, 호스트가 아직 사용자의 ‘ Satellite ’ 위치 제어 플레인이나 ‘ Red Hat OpenShift on IBM Cloud ’ 클러스터에 할당되지 않았기 때문에 ‘ 상태 ’ 상태는 ‘ Unassigned ’로 표시됩니다.

  12. AWS 호스트를 Satellite 제어 플레인 또는 Red Hat OpenShift on IBM Cloud 클러스터에 지정하십시오.

CLI를 사용하여 AWS 인스턴스를 수동으로 연결하기

AWS CLI를 사용하여 EC2 인스턴스를 실행하고 이를 Satellite 위치에 연결할 수 있습니다. 자세한 정보는 aws ec2 run-instances 명령 참조를 참조하십시오.

AWS EC2 인스턴스를 실행하는 명령 예입니다.

aws ec2 run-instances --count COUNT --instance-type INSTANCE-TYPE --launch-template LaunchTemplateName=AWS-LAUNCH-TEMPLATE --user-data file://ATTACH-SCRIPT-LOCATION

AWS 인스턴스 유형

IBM Cloud Satellite 에서 호스트로 사용할 수 있는 다음의 권장 AWS EC2 인스턴스 유형을 확인해 보십시오. Satellite 의 최소 호스트 요구 사항을 충족하는 한, 다른 AWS 인스턴스 유형을 사용할 수 있습니다.

AWS 인스턴스 유형
인스턴스 vCPU 메모리(GiB) 스토리지 디스크(GiB) 네트워크 대역폭(Gbps)
m5d.xlarge 4 16 최소 100GB SSD 연결 최대 10
m5d.2xlarge 8 32 최소 100GB SSD 연결 최대 10
m5d.4xlarge 16 64 최소 100GB SSD 연결 최대 10

다음에 대한 보안 그룹 설정 AWS

호스트 네트워킹 요구사항에 설명되어 있는 바와 같이, AWS 호스트는 IBM Cloud Satellite에 연결할 수 있도록 액세스 가능해야 합니다. 가상 프라이빗 클라우드(VPC)에서 호스트를 사용하는 경우에는 다음 예와 유사한 보안 그룹을 작성할 수 있습니다. 소유자, 그룹, 사용자 및 VPC ID는 AWS 제공자 리소스로부터 얻을 수 있습니다.

다음 예는 AWS용으로 작성할 수 있는 보안 그룹입니다.

{
	"Description": "Security group for IBM Cloud Satellite hosts",
	"GroupName": "Satellite",
	"IpPermissions": [{
			"FromPort": 80,
			"IpProtocol": "tcp",
			"IpRanges": [{
				"CidrIp": "0.0.0.0/0"
			}],
			"Ipv6Ranges": [],
			"PrefixListIds": [],
			"ToPort": 80,
			"UserIdGroupPairs": []
		},
		{
			"FromPort": 30000,
			"IpProtocol": "tcp",
			"IpRanges": [{
				"CidrIp": "0.0.0.0/0"
			}],
			"Ipv6Ranges": [{
				"CidrIpv6": "::/0"
			}],
			"PrefixListIds": [],
			"ToPort": 32767,
			"UserIdGroupPairs": []
		},
		{
			"IpProtocol": "-1",
			"IpRanges": [],
			"Ipv6Ranges": [],
			"PrefixListIds": [],
			"UserIdGroupPairs": [{
				"GroupId": "<group_ID>",
				"UserId": "<user_ID>"
			}]
		},
		{
			"FromPort": 22,
			"IpProtocol": "tcp",
			"IpRanges": [{
				"CidrIp": "0.0.0.0/0"
			}],
			"Ipv6Ranges": [],
			"PrefixListIds": [],
			"ToPort": 22,
			"UserIdGroupPairs": []
		},
		{
			"FromPort": 30000,
			"IpProtocol": "udp",
			"IpRanges": [{
				"CidrIp": "0.0.0.0/0"
			}],
			"Ipv6Ranges": [{
				"CidrIpv6": "::/0"
			}],
			"PrefixListIds": [],
			"ToPort": 32767,
			"UserIdGroupPairs": []
		},
		{
			"FromPort": 443,
			"IpProtocol": "tcp",
			"IpRanges": [{
				"CidrIp": "0.0.0.0/0"
			}],
			"Ipv6Ranges": [{
				"CidrIpv6": "::/0"
			}],
			"PrefixListIds": [],
			"ToPort": 443,
			"UserIdGroupPairs": []
		}
	],
	"OwnerId": "<owner_ID>",
	"GroupId": "<group_ID>",
	"IpPermissionsEgress": [{
		"IpProtocol": "-1",
		"IpRanges": [{
			"CidrIp": "0.0.0.0/0"
		}],
		"Ipv6Ranges": [],
		"PrefixListIds": [],
		"UserIdGroupPairs": []
	}],
	"VpcId": "<vpc_ID>"
}

자세한 정보는 AWS 문서에서 보안 그룹을 사용하여 리소스에 대한 트래픽 제어 를 참조하십시오.

내 위치에 호스트를 추가했습니다. 다음은 무엇입니까?

이제 위치에 호스트를 추가했으므로, 해당 호스트를 위치 제어 플레인이나 IBM Cloud 서비스에 할당할 수 있습니다.

  1. 호스트를 위치 제어 플레인에 지정 또는 를 IBM Cloud 서비스 에 지정하십시오.
  2. Red Hat OpenShift 클러스터와 같은 Satellite 사용 IBM Cloud 서비스를 작성하십시오. 기존 Red Hat OpenShift 클러스터를 자신의 위치에 등록하여 배치 대상으로 사용할 수도 있습니다.
  3. Satellite 구성을 사용하여 애플리케이션을 관리 하십시오.
  4. Satellite 클러스터 스토리지 템플리트를 작성하십시오.
  5. Satellite Link 컴포넌트에 대해 자세히 알아보고, 엔드포인트를 사용하여 위치와 IBM Cloud 간의 네트워크 트래픽을 관리하는 방법을 알아봅니다.

도움이 필요하십니까? ‘지원 받기’ 페이지를 확인하시면, 클라우드 상태, 문제 및 로깅에 대한 정보, 지원팀 문의 방법, 그리고 ‘ IBM Cloud ’ 플랫폼 관련 사항에 대한 이메일 알림 설정 방법을 확인하실 수 있습니다.