Systems Manager 콘솔의 관리형 인스턴스에 EC2 인스턴스가 나타나지 않는 이유가 무엇인가요?
AWS Systems Manager 콘솔의 관리형 인스턴스에 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스가 나타나지 않습니다.
간략한 설명
관리형 인스턴스는 Systems Manager와 함께 사용하도록 구성된 Amazon EC2 인스턴스입니다. 관리형 인스턴스는 Run Command, Patch Manager 및 Session Manager와 같은 Systems Manager 서비스를 사용할 수 있습니다.
관리형 인스턴스가 되려면 인스턴스가 다음 사전 조건을 충족해야 합니다.
- AWS Systems Manager 에이전트(SSM 에이전트)가 설치되어 실행 중입니다.
- SSM 에이전트를 사용하여 Systems Manager 엔드포인트에 연결되어 있습니다.
- 올바른 AWS Identity and Access Management(IAM) 역할이 연결되어 있습니다.
- 인스턴스 메타데이터 서비스에 연결되어 있습니다.
참고: SSM 에이전트 버전 3.1.501.0부터는 **ssm-cli**를 사용하여 인스턴스가 이러한 요구 사항을 충족하는지 여부를 확인할 수 있습니다. ssm-cli는 사전 구성된 명령을 포함하는 SSM 에이전트 설치에 포함된 독립형 명령줄 도구입니다. 이 명령은 실행 중임을 확인한 Amazon EC2 인스턴스가 Systems Manager의 관리형 인스턴스 목록에 포함되지 않은 이유를 진단하는 데 도움이 되는 필수 정보를 수집합니다.
또한 AWSSupport-TroubleshootManagedInstance Systems Manager 자동화 문서를 실행하여 해당 인스턴스가 관리형 인스턴스로 표시되기 위한 전제 조건을 충족하는지 확인할 수 있습니다. 자세한 내용은 AWSSupport-TroubleshootManagedInstance를 참조하십시오.
참고: 하이브리드 인스턴스의 경우 하이브리드 환경을 위한 AWS Systems Manager 설정을 참조하세요.
해결 방법
참고: 이 해결 방법을 시작하기 전에 인스턴스가 있는 리전을 선택하세요.
인스턴스가 다음 사전 조건을 충족하는지 확인합니다.
인스턴스에 SSM 에이전트가 설치되어 실행 중임
운영 체제가 Systems Manager에서 지원되는지 확인합니다. 지원되는 운영 체제 목록은 지원되는 운영 체제를 참조하세요.
SSM 에이전트는 일부 Windows 및 Linux Amazon Machine Image(AMI)에 사전 설치되어 있습니다. SSM 에이전트가 사전 설치된 AMI 목록은 다음을 참조하세요.
Linux: Linux용 EC2 인스턴스에 SSM 에이전트 설치 및 구성
Windows: Windows Server용 EC2 인스턴스에 SSM 에이전트 설치 및 구성
SSM 에이전트가 사전 설치되어 있지 않은 경우 에이전트를 수동으로 설치해야 합니다.
Linux: Linux용 EC2 인스턴스에 SSM 에이전트 수동 설치
Windows: Windows Server용 EC2 인스턴스에 SSM 에이전트 수동 설치
SSM 에이전트의 상태를 확인하려면 다음 명령을 사용합니다.
Amazon Linux의 경우, RHEL 6(또는 유사한 배포판):
$ sudo status amazon-ssm-agent
Amazon Linux 2의 경우, Ubuntu, RHEL 7(또는 유사한 배포판):
$ sudo systemctl status amazon-ssm-agent
Snap을 사용하는 Ubuntu 18.04 이상 시스템의 경우:
$ sudo snap services amazon-ssm-agent
Windows의 경우:
$ Get-Service AmazonSSMAgent
포트 443에서 Systems Manager 엔드포인트에 대한 연결 확인
연결을 확인하는 가장 좋은 방법은 운영 체제에 따라 다릅니다.
중요: 다음 명령 예제에서RegionID를 사용자의 AWS 리전 ID로 바꿉니다.
리전별 Systems Manager 엔드포인트 목록은 AWS Systems Manager 엔드포인트 및 할당량을 참조하세요.
참고: 다음 예제에서 ssmmessages 엔드포인트는 AWS Systems Manager Session Manager에만 필요합니다.
EC2 Linux 인스턴스의 경우: telnet 및 netcat 명령을 사용하여 포트 443에서 엔드포인트에 대한 연결을 확인할 수 있습니다.
Telnet
telnet ssm.RegionID.amazonaws.com 443 telnet ec2messages.RegionID.amazonaws.com 443 telnet ssmmessages.RegionID.amazonaws.com 443
성공 연결 예:
root@111800186:~# telnet ssm.us-east-1.amazonaws.com 443 Trying 52.46.141.158... Connected to ssm.us-east-1.amazonaws.com. Escape character is '^]'.
telnet을 종료하려면 Ctrl 키를 누른 상태로 ] 키를 누릅니다. quit을 입력한 다음 Enter 키를 누릅니다.
Netcat
nc -vz ssm.RegionID.amazonaws.com 443 nc -vz ec2messages.RegionID.amazonaws.com 443 nc -vz ssmmessages.RegionID.amazonaws.com 443
참고: Netcat은 Amazon EC2 인스턴스에 사전 설치되어 있지 않습니다. Netcat을 수동으로 설치하려면 Nmap 웹 사이트의 Ncat을 참조하세요.
EC2 Windows 인스턴스의 경우: 다음 Windows PowerShell 명령을 사용하여 포트 443에서 엔드포인트에 대한 연결을 확인할 수 있습니다.
Test-NetConnection ssm.RegionID.amazonaws.com -port 443 Test-NetConnection ec2messages.RegionID.amazonaws.com -port 443 Test-NetConnection ssmmessages.RegionID.amazonaws.com -port 443
퍼블릭 서브넷의 경우: Systems Manager 엔드포인트는 퍼블릭 엔드포인트입니다. 즉, 인스턴스가 인터넷 게이트웨이를 사용하여 인터넷에 연결할 수 있어야 합니다. 퍼블릭 서브넷의 인스턴스에서 엔드포인트에 연결하는 데 문제가 있는 경우 다음 사항을 확인합니다.
- 인스턴스가 사용하는 라우팅 테이블에는 인터넷에 대한 경로가 포함되어 있어야 합니다.
- Virtual Private Cloud(VPC) 보안 그룹 및 네트워크 액세스 제어 목록(네트워크 ACL)은 포트 443에서 아웃바운드 연결을 허용하도록 구성해야 합니다.
프라이빗 서브넷의 경우: 인스턴스는 NAT 게이트웨이를 사용하여 인터넷에 연결할 수 있어야 합니다. 또는 프라이빗 서브넷의 인스턴스에 대해 Systems Manager 엔드포인트에 연결되도록 VPC 엔드포인트를 구성할 수 있습니다. 이를 통해 프라이빗 IP 주소를 사용하여 Amazon EC2 및 Systems Manager API에 비공개로 액세스할 수 있습니다. 자세한 내용은 Systems Manager를 사용하여 인터넷 액세스 없이 프라이빗 EC2 인스턴스를 관리할 수 있도록 VPC 엔드포인트를 생성하려면 어떻게 해야 합니까?를 참조하세요.
**참고:**각 인터페이스 엔드포인트는 제공된 서브넷에 탄력적 네트워크 인터페이스를 생성합니다.
프라이빗 서브넷에 대한 보안 모범 사례로 다음 규칙이 적용되었는지 확인합니다.
- VPC 엔드포인트가 사용하는 네트워크 인터페이스에 연결된 보안 그룹은 인스턴스에 연결된 보안 그룹의 포트 443 인바운드를 허용합니다.
- 인스턴스에 연결된 보안 그룹은 VPC 엔드포인트가 사용하는 네트워크 인터페이스의 프라이빗 IP 주소로 포트 443 아웃바운드를 허용합니다.
올바른 IAM 역할이 인스턴스에 연결되어 있는지 확인
Systems Manager 엔드포인트에 API를 호출하려면 AmazonSSMManagedInstanceCore 권한 정책을 인스턴스에 연결된 IAM 역할에 연결해야 합니다. 사용자 지정 IAM 정책을 사용하는 경우 사용자 지정 정책이 AmazonSSMManagedInstanceCore에 있는 권한을 사용하는지 확인합니다. 또한 IAM 역할의 신뢰 정책에서 ec2.amazonaws.com이 이 역할을 위임하도록 허용하는지 확인합니다.
자세한 내용은 Systems Manager 인스턴스 프로파일에 권한 추가(콘솔)를 참조하세요.
인스턴스 메타데이터 서비스에 대한 연결 확인
인스턴스에 대한 필수 정보를 가져오려면 SSM 에이전트가 인스턴스 메타데이터 서비스와 통신해야 합니다. Netcat 명령을 사용하여 연결을 테스트하세요.
nc -vz 169.254.169.254 80
인스턴스에서 프록시를 사용하는 경우 프록시가 메타데이터 URL에 대한 연결을 차단할 수 있습니다. SSM 에이전트가 프록시를 사용하도록 구성되었는지 확인합니다. 프록시를 사용하도록 SSM 에이전트를 구성하려면 다음을 참조하세요.
Windows: Windows Server 인스턴스에 프록시를 사용하도록 SSM 에이전트 구성
Linux: 프록시(Linux)를 사용하도록 SSM 에이전트 구성
문제 해결
인스턴스가 계속 Systems Manager 콘솔에 관리형 인스턴스로 표시되지 않는 경우, SSM 에이전트 로그를 참조하여 추가 문제를 해결하세요.
Windows: Windows용 SSM 에이전트 로그는 %PROGRAMDATA%\Amazon\SSM\Logs에 있습니다.
Linux: Linux용 SSM 에이전트 로그는 /var/log/amazon/ssm에 있습니다.
관련 콘텐츠
- 질문됨 2달 전lg...
- 질문됨 9일 전lg...
- 질문됨 한 달 전lg...
- 질문됨 3달 전lg...
- AWS 공식업데이트됨 2년 전
- AWS 공식업데이트됨 2달 전