2022. 5. 16. 23:57ใAWS/troubleshooting
โ๏ธ ๋ฌธ์
AWS Systems Manager(์ดํ SSM)์์ ์ ๊ท๋ก ์์ฑํ EC2๋ฅผ ์ธ์ํ์ง ๋ชปํจ.
(SSM > Fleet Manager & Run command์์ EC2 ๋ชฉ๋ก์ ํด๋น ์ธ์คํด์ค ์กด์ฌํ์ง ์์)
⇒ AWS EC2 ์ฝ์์์ ํด๋น EC2 ์ธ์คํด์ค์ session manger๋ก ์ฐ๊ฒฐ์ด ๋ถ๊ฐ๋ฅ.
๐ ํ๊ฒฝ
- OS : Windows 2019(AWS EC2)
๐ซ ํด๊ฒฐ ๋ฐฉ๋ฒ
1. AWS SSM Agent ํ์ธ
1-1. ์ธ์คํด์ค ๋ด AWS Systems Agent(amazon-ssm-agent)๊ฐ ์ค์น ๋ฐ ์คํ ์ค์ธ์ง ํ์ธ.
- ์ค์น๋์ด ์๋ค๋ฉด amazon-agent๊ฐ ์ต์ ๋ฒ์ ์ธ์ง ํ์ธ ๋ฐ ์ ๋ฐ์ดํธ
- ์ค์น๋์ด ์์ง ์๋ค๋ฉด ssm ์์ด์ ํธ ์ค์น ๋ฐ ๊ตฌ์ฑ
- Windows Powershell์์ ์๋ ๋ช ๋ น์ด๋ก๋ ํ์ธ ๊ฐ๋ฅํ๋ค.
Get-Service AmazonSSMAgent
1-2. ssm-user ์ฌ์ฉ์ ๊ณ์ ์ด ์๋์ง ํ์ธํ๋ค.
- SSM Agent๋ ์ต์ด ์์ ๋๋ ์ค์น ํ ์ฌ์์ ์ ssm-user ๋ก์ปฌ ์ฌ์ฉ์ ๊ณ์ ์ ์์ฑํ๋ค.
- Linux ๋ฐ macOS : ssm-user๋ /etc/sudoers์ ํฌํจ๋์ด ์์ด์ผ ํ๋ค.
- Windows : Administrators ๊ทธ๋ฃน์ ํฌํจ๋์ด ์์ด์ผ ํ๋ค.
2. EC2 IAM Role ํ์ธ
- AWS Systems Manager๊ฐ EC2 ์ธ์คํด์ค์ ์ก์ธ์คํ ์ ์๋๋ก IAM์ ์ด์ฉํ์ฌ ๊ถํ์ ๋ถ์ฌํด์ผ ํ๋ค.
- EC2 ์ธ์คํด์ค์ ์ฐ๊ฒฐ๋์ด ์๋ IAM ์ญํ ์๋ AWS Managed Policy์ธ AmazonSSMManagedInstanceCore๊ฐ ํฌํจ๋์ด ์์ด์ผ ํ๋ค.
3. ์ธ์คํด์ค ๋ฉํ๋ฐ์ดํฐ ์๋น์ค ์ฐ๊ฒฐ ํ์ธ
3-1. SSM Agent๋ ์ธ์คํด์ค์ ๋ํ ์ ๋ณด๋ฅผ ์ป๊ธฐ ์ํด ์ธ์คํด์ค ๋ฉํ๋ฐ์ดํฐ ์๋น์ค์ ์ฐ๊ฒฐ๋์ด ์์ด์ผ ํ๋ค.
telnet 169.254.169.254 80
์ผ๋ก TCP connection ํ์ธ.- Windows์ ๊ฒฝ์ฐ์๋ ๋ธ๋ผ์ฐ์ ์์ http://169.254.169.254/latest/meta-data/ ์ ์ํด์ ํ์ธํ๋ ๋ฐฉ๋ฒ๋ ์๋ค.
- ๋ง์ฝ ์ฐ๊ฒฐ์ ์คํจํ๋ค๋ฉด, OS ๋ด ๋ผ์ฐํ
์ค์ ํ์ธ ํ์ ⇒
route print
๋ก gateway์ ์ฃผ์๊ฐ ์๋ธ๋ท CIDR ๋ฒ์์ ์ฒซ๋ฒ์งธ IP์ธ์ง ํ์ธํ๋ค.
3-2. SSM ์๋ํฌ์ธํธ์ 443 ํฌํธ๋ก ์ ์ฐ๊ฒฐ์ด ๋๋์ง ํ์ธํ๋ค.
tnc -p 443 ec2messages.ap-northeast-2.amazonaws.com
tnc -p 443 ssm.ap-northeast-2.amazonaws.com
tnc -p 443 ssmmessages.ap-northeast-2.amazonaws.com
⇒ ๋ณด์๊ทธ๋ฃน ์ค์ ๋ฐ NAT Gateway๋ก์ ๋ผ์ฐํ ์ค์ ์ ์ด์๋ ์์์ผ๋ฉฐ ๋ชจ๋ PingSucceeded์์ False์ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํจ.
(Windows Firewall Profiles๋ ์ด๋ฏธ ๋ชจ๋ ํด์ ๋์ด ์๋ ์ํ. ํด์ ํ๋ ๋ช ๋ น์ด๋ ๋ค์์ ์ฐธ๊ณ )
netsh advfirewall set allprofiles state off
3-3. DNS ์๋ฒ๋ฅผ ํ์ธํ๋ค.
- DNS ์๋ฒ๊ฐ VPC CIDR ๋์ญ์ ๋ ๋ฒ์งธ IP์ธ์ง ํ์ธํ๋ค.
- ์ ์ดํ > ๋คํธ์ํฌ ๋ฐ ์ธํฐ๋ท > ๋คํธ์ํฌ ์ฐ๊ฒฐ > (์ฐํด๋ฆญ) ์์ฑ > ์ธํฐ๋ท ํ๋กํ ์ฝ ๋ฒ์ 4(TCP/IPv4)
- [ ๋ค์ DNS ์๋ฒ ์ฃผ์ ์ฌ์ฉ ] ์์ [ ๊ธฐ๋ณธ ์ค์ DNS ์๋ฒ ] IP ํ์ธํ์ฌ VPC CIDR ๋์ญ์ 2๋ฒ์งธ IP์ธ์ง ํ์ธ
ex)10.0.0.0/24
์์10.0.0.1
์ VPC ๋ผ์ฐํฐ๋ฅผ ์ํด AWS์์ ์์ฝ๋ IP
⇒ DNS ์๋ฒ๊ฐ ๋ค๋ฅธ IP๋ก ์ค์ ๋์ด ์์ด VPC ๋คํธ์ํฌ ์ฃผ์์ 2๋ฒ์งธ IP๋ก ๋ณ๊ฒฝ ํ, SSM์์ ์ ์์ ์ผ๋ก ์ธ์๋จ
4. SSM Logs ํ์ธ
- 3๋ฒ๊น์ง ํ์ธ ๋ฐ ์ด์ ์์์๋ ๋ถ๊ตฌํ๊ณ , SSM์์ ์ธ์คํด์ค๊ฐ ์ ๋๋ก ์ธ์๋์ง ์๋๋ค๋ฉด SSM Agent์ ๋ก๊ทธ๋ฅผ ํ์ธํด๋ณด์.
- Linux ๋ฐ macOS :
/var/log/amazon/ssm/
- Windows :
%PROGRAMDATA%\\Amazon\\SSM\\InstanceData\\
- Linux ๋ฐ macOS :
โ ์์ฝ : Checklist
1. ์ธ์คํด์ค์ AWS Systems Agent(amazon-ssm-agent) ์ค์น & ์คํ ์ค์ธ์ง? (+์ต์ ๋ฒ์ ์ธ์ง)
2. ์๋ฒ ๋ด๋ถ์ ssm-user ์ฌ์ฉ์ ๊ณ์ ์ด ์๋์ง?
3. EC2์ ์ฐ๊ฒฐ๋์ด ์๋ IAM Role์ AmazonSSMManagedInstanceCore ์ ์ฑ ํฌํจ๋์ด ์๋์ง?
4. ๋ณด์ ๊ทธ๋ฃน, NAT Gateway๋ก์ ๋ผ์ฐํ , (Windows์ธ ๊ฒฝ์ฐ Windows ๋ฐฉํ๋ฒฝ) ์ค์ ์ ๋ฌธ์ ์๋์ง?
5. DNS ์๋ฒ ์ฃผ์ ์ ๋๋ก ์ค์ ๋์ด ์๋์ง?
๐ก ์์ธ ๋ถ์
EC2 Launch Initialize ์์ ์ ์ํํ์ง ์๊ณ Windows 2019 ์ธ์คํด์ค์์ AMI๊ฐ ์์ฑ๋๋ ๊ฒฝ์ฐ, ๋ฉํ๋ฐ์ดํฐ๋ก์ ๋ผ์ฐํ ์ ๋ณด๋ฅผ ํฌํจํ ์์คํ ๊ด๋ จ ์ ๋ณด๊ฐ OS ๊ตฌ์ฑ์ ์ผ๋ถ๋ก ์ธ์๋์ด AMI์ ํฌํจ๋๊ฒ ๋๋ค. ํด๋น AMI์์ ์์ฑ๋๋ ์ ๊ท ์ธ์คํด์ค๋ ์๋ธ๋ท๊ณผ ๊ด๊ณ์์ด AMI๊ฐ ๋ง๋ค์ด์ก๋ ์ธ์คํด์ค์ ๊ฒฝ๋ก์ ๋์ผํ ๊ฒฝ๋ก๋ฅผ ์ฌ์ฉํ๋ค. ๋ฐ๋ผ์, ๋ฉํ๋ฐ์ดํฐ ๋ฐ ํ์ฑํ์ ๊ฐ์ ์์ ์ด ๋ค๋ฅธ ์๋ธ๋ท์ด๋ VPC์์ ์์๋๋ฉด ์คํจํ๊ฒ ๋๋ค.
๋ฌธ์ ์๋ฒ๋ ๊ฐ์ VPC์์ ๋ง๋ Windows AMI์์ ์์ํ ์ธ์คํด์ค์ธ๋ฐ, ์ด๋ฏธ์ง๊ฐ ๋ง๋ค์ด์ง ์๋ฒ๊ฐ AD์ ์กฐ์ธ๋์ด ์๋ ์๋ฒ๋ผ DNS ์๋ฒ ์ฃผ์๊ฐ AD ์๋ฒ์ IP๋ก ์ค์ ๋์ด ์์๋ค. ์ด๋ก ์ธํด AWS System Manager์์ ์ธ์คํด์ค ์ธ์ ๋ถ๊ฐ๋ฅ.
๐ ์ฐธ๊ณ ๋งํฌ
- Systems Manager ์ฝ์์ ๊ด๋ฆฌํ ์ธ์คํด์ค์ EC2 ์ธ์คํด์ค๊ฐ ๋ํ๋์ง ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?
- 2๋จ๊ณ: Session Manager ๊ถํ์ ์ฌ์ฉํ์ฌ IAM ์ญํ ํ์ธ ๋๋ ์์ฑ
- 7๋จ๊ณ: (์ต์ ) ssm-user ๊ณ์ ๊ด๋ฆฌ ๊ถํ ์ค์ ๋๋ ํด์
- Subnets for your VPC
- ์๋์ฐ10 DNS ์๋ฒ ๋ณ๊ฒฝ๊ณผ ์๋ฏธ ์ถ์ฒ DNS ์ ๋ฆฌ ์ค๋ฅ ์บ์ ์ด๊ธฐํ ๋ฐฉ๋ฒ๊น์ง