3단계: 서브넷에서 인스턴스 시작
퍼블릭 서브넷에서 인스턴스를 시작하고 연결합니다.
--query
옵션과 --output
텍스트 옵션을 사용하여 개인 키를 확장자가 .pem
인 파일로 직접 파이프합니다.$ aws ec2 create-key-pair --key-name MyKeyPair --query "KeyMaterial" --output text > MyKeyPair.pem
이 예에서는 Amazon Linux 인스턴스를 시작합니다. Linux 또는 Mac OS X 운영 체제에서 SSH 클라이언트를 사용하여 인스턴스에 연결하는 경우 다음 명령을 사용하여 자신만 읽을 수 있도록 프라이빗 키 파일의 권한을 설정합니다.
$ chmod 400 MyKeyPair.pem
create-security-group
명령을 사용하여 VPC에서 보안 그룹을 생성합니다.$ aws ec2 create-security-group --group-name SSHAndHTTPccess --description "Security group for SSH and HTTP access" --vpc-id vpc-2f09a348
{
"GroupId": "sg-e1fb8c9a"
}
authorize-security-group
명령을 사용하여 어디서나 SSH 액세스를 허용하는 규칙을 추가합니다.$ aws ec2 authorize-security-group-ingress --group-id sg-e1fb8c9a --protocol tcp --port 22 --cidr 0.0.0.0/0
어디에서나 인바운드 HTTP 트래픽을 허용하는 다른 규칙을 추가합니다.
$ aws ec2 authorize-securty-group-ingress --group-id sg-e1fb8c9a --protocol tcp --port 80 --cidr 0.0.0.0/0
ℹ Note
If you use0.0.0.0/0
, you enable all IPv4 addresses to access your instance using SSH. This is acceptable for this short exercise, but in production, authorize only a specific IP address or range of addresses.
Amazon EC2에서 인스턴스를 시작할 때 일반적인 자동 구성 작업을 수행하고 인스턴스가 시작된 후 스크립트를 실행하는 데 사용할 수 있는 인스턴스에 사용자 데이터를 전달할 수 있는 옵션이 있습니다. 두 가지 유형의 사용자 데이터를 Amazon EC2에 전달할 수 있습니다: 셸 스크립트 및 cloud-init 지시문.
이 데이터를 일반 텍스트, 파일(명령줄 도구를 사용하여 인스턴스를 시작하는 데 유용함) 또는 base64 인코딩 텍스트(API 호출용)로 시작 마법사에 전달할 수도 있습니다. 간단한 웹 서버를 만들고 구성하는 다음 스크립트를 사용하여 셸 파일을 만듭니다.
#!/bin/bash
# User data for new EC2 instances
# install httpd (Linux 2 version)
yum update -y
yum install -y httpd
systemctl start httpd
systemctl enable httpd
echo "<h1>Hello World!</h1> <h1>This is $(hostname -f)</h1>" > /var/www/html/index.html
다음 명령은 쉘 파일을 사용하여 스크립트를 지정하는 방법을 보여줍니다.
file://
접두사를 사용하여 파일을 지정해야 합니다.$ aws ec2 run-instances --image-id ami-03ededff12e34e59e --count 1 --instance-type t2.micro --key-name MyKeyPair --security-group-ids sg-e1fb8c9a --subnet-id subnet-b46032ec --user-data file://my_script.sh
ℹ Note
In this example, the AMI is an Amazon Linux 2 AMI in the US East (N. Virginia) Region. If you're in a different Region, you'll need the AMI ID for a suitable AMI in your Region. For more information, see Finding a Linux AMI in the Amazon EC2 User Guide for Linux Instances.
running
상태여야 합니다. 인스턴스가 사용자 데이터의 지시문을 시작하고 실행할 수 있도록 충분한 시간을 허용한 다음 지시문이 의도한 작업을 완료했는지 확인하십시오. 다음 명령을 사용하여 인스턴스의 상태 및 IP 주소를 설명합니다.$ aws ec2 describe-instances --instance-id i-0146854b7443af453 --query "Reservations[*].Instances[*].{State:State.Name,Address:PublicIpAddress}"
다음은 예제 출력입니다.
[
[
{
"State": "running",
"Address": "52.87.168.235"
}
]
]
이 예에서는 웹 브라우저에서 공용 IP 주소를 입력합니다.
http://52.87.168.235
"Hello World"메시지와 인스턴스의 IP 주소가 표시되어야 합니다.
$ ssh -i "MyKeyPair.pem" [email protected]
Windows 컴퓨터에서 연결하는 경우 다음 지침을 따르십시오. Connecting to your Linux instance from Windows using PuTTY .
Reference
이 문제에 관하여(3단계: 서브넷에서 인스턴스 시작), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sebastiantorres86/step-3-launch-an-instance-into-your-subnet-21o5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)