반응형
AWS EC2 마이그레이션
- 내부 온프레미스 환경(Vmware WorkStation) → EC2 마이그레이션 하기
- 환경 : Vmware WorkStation
- 형식 : OVA
- 참조 문서 : https://docs.aws.amazon.com/ko_kr/vm-import/latest/userguide/vmimport-image-import.html
- JSON 유효성 체크 : https://jsonformatter.curiousconcept.com/#
1. VM Import
- 기존 VM -> OVA 형식 추출
1.1 Vmware Workstaion OVA 추출
- File -> Export to OVF
ovf → ova 확장자 변경
2. AWS CLI 설치
- 설치 참조 문서 : https://aws.amazon.com/ko/cli/
2.1 CLI 설정
#aws configure
access key :
secret access key :
region :
format : JSON
3. CLI S3 Import
- 사전 작업 : 로컬 환경 → S3 Import 하기 위함 Plicy 정책 만들기
참조 문서(필수 서비스 역할) : https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html)
3.1 IAM Policy 생성하기
vi vmpolicy.json
3.2 vmimport 권한 부여
- VM Import/Export 하기 위한 권한
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": { "Service": "vmie.amazonaws.com" },
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals":{
"sts:Externalid": "vmimport"
}
}
}
]
}
3.3 vmimport 정책 적용
aws iam create-role --role-name vmimport --assume-role-policy-document "file://vmpolicy.json"
3.4 OVA → AMI 변환 권한 부여
- s3polic.json 파일 생성
- evan-import : S3 Bucket 이름
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action":[
"s3:GetBucketLocation",
"s3:GetObject",
"s3:ListBucket"
],
"Resource":[
"arn:aws:s3:::evan-import",
"arn:aws:s3:::evan-import/*"
]
},
{
"Effect":"Allow",
"Action":[
"ec2:ModifySnapshotAttribute",
"ec2:CopySnapshot",
"ec2:RegisterImage",
"ec2:Describe*"
],
"Resource":"*"
}
]
}
aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document "file://s3policy.json"
3.5 OVA 이미지 S3 업로드
aws s3 cp **Windows_Server_2016.ova** s3://**S3 Bucket Name**
3.6 OVA → AMI 변환하기 위한 Json 파일
[
{
"Description": "My Server OVA",
"Format": "ova",
"UserBucket": {
"S3Bucket": "S3 Bucket Name",
"S3Key": "파일명.ova"
}
}
]
3.7 OVA → AMI 변환 명령어
- file://”경로”
#절대경로
aws ec2 import-image --description "My Server OVA" --disk-containers "file:///Users/kimjintae/Study/AWS_CLI/S3/containers.json"
#상대경로
aws ec2 import-image --description "My Server OVA" --disk-containers file://containers.json
3.8 AMI 변환 확인(CLI)
aws ec2 describe-import-image-tasks --import-task-ids "ImportTaskId 명"
3.9 AMI → EC2 생성하기
- 인스턴스 시작
- 프리티어는 사용 불가(ova 작업한 스펙이 프리티어 스펙이 아니라 적용 불가)
리눅스는 제약 조건이 존재하여 작업 전 확인 필수 입니다.
- 리눅스 / Uninx 제약 조건 참조
Kernel 버전 확인
#uname -r
kernel 확인(Ubuntu)
**#Ubuntu**
dpkg -l | grep -i linux-image
**#Centos**
hostnamectl | grep Kernel
반응형
'AWS > AWS 구축' 카테고리의 다른 글
[AWS ALB] Application Load Balancer Access Log 수집 (0) | 2021.11.08 |
---|---|
[AWS ELB] AWS Elastic Load Balance 생성 (0) | 2021.09.06 |
댓글