2016-07-12 3 views
1

지난 한 달 동안 우분투 상자에서 작업 해 왔습니다. 사용자 정의 및 원하는 모든 소프트웨어 설치에 많은 시간을 할애했습니다. 그것. 나는이 모든 것을 정상적인 방미 제 tutorial (일명 특별한 것은 없음)을 통해 시작했습니다. 내 package.box 파일로 내 현지 방야 상자. 이제, 개발 환경 (예 : package.box 파일)을 AWS의 Amazon EC2 인스턴스로 이동하려고합니다. 나는 소프트웨어 권장 사항을 요구하지 않아도된다는 것을 알고 있지만 기본적으로 내 질문은 할 수있다. 그렇다면 그것을하는 사람들의 몇 가지 예를 가르쳐 줄 수 있겠는가? 나는 packer이 옵션 일 수 있다고 읽었지 만, 어쩌면 나는 으로 시작했음을 이제는 사용하지 말고 (매우 미숙 한 관점) 보입니다. 어떤 도움을 주시면 고맙겠습니다. 저는 로컬 환경에서 새로운 환경을 구축 할 때 몇 주를 보내고 싶지 않습니다.AWS에 로컬 Vagrant package.box 업로드

편집 :

진행! 나는 @ error2007s 링크를 따라 갔고 튜토리얼을 따라 갔다. VMDK 이미지를 s3에 업로드하고이를 사용하여 인스턴스를 프로비저닝 한 시점에 있습니다 (모두 CLI의 ec2-import-instance 명령을 사용하여 자동으로 수행됨). 그러나 공용 IP를 시작한 후에 새 인스턴스에 액세스 할 수는 없습니다.
이게 어떤 식 으로든 cloud-init과 관련이 있다고 생각하지만, 그게 실제로 무엇인지 모르겠습니다. 상자에 들어있는 /etc/cloud/cloud.cfg 파일과 here에 나열된 파일 두 개를 모두 사용해 보았습니다. 업로드 한 두 개의 상자 중 어느 것도 공용 IP로 액세스 할 수 없었습니다.

편집 2 : 여기

내가 콘솔에서 볼 수있는 몇 가지 있습니다 (그들은 모두 잘 내게 보이지만, 경험이 많은 눈은 뭔가 잘못 볼 수 있습니다) :

서브넷 정보 :

Auto-assign Public IP: yes

네트워크 ACL : enter image description here

VPC 정보 :

DNS resolution: yes

DNS hostnames: yes

ClassicLink DNS Support: no

VPC CIDR: 172.31.0.0/16

DHCP 옵션 설정 :

Options: domain-name = ec2.internal domain-name-servers = AmazonProvidedDNS

내 관점에서 볼 때이 모든 것이 옳은 것입니까, 아니면 뭔가 빠져 있습니까?
these instructions에 대해 탄성 IP가 할당되었지만, ssh [email protected]<elastic-ip> 일 때 ssh: connect to host <elastic-ip> port 22: Connection refused이라고 표시됩니다. 인스턴스에 할당 된 보안 그룹은 모든 포트의 모든 프로토콜을 허용하도록 설정됩니다. 또한, 이것이 Elastic IP를 처음 접했을 때 나는 정확히 무엇을하고 있는지 확신 할 수 없습니다.

+0

당신은 EC2 인스턴스에 액세스하기위한 방랑에 따라 계속 하시겠습니까? – error2007s

+0

아마도 그렇지 않을 수도 있습니다. 내가 원했던 것은 amazon에 AMI를 등록하는 것이고, 그 시점부터는 방랑 (@ rodrigo-m이 아래에 지적한대로)을 사용하여 쉽게 작업 할 수 있습니다. 현재 답변에있는 지침을 따르고 있습니다. 작동하는지 확인해 보겠습니다. –

+0

하나의 좋은 패턴은 EC2로 인스턴스를 푸시 할 때와 개발 중에 Vagrant를 계속 사용하는 것입니다. 그런 다음 AMI를 미리 준비 할 필요가없고 방해 요소 구성 옵션이 느슨합니다. AWS 공급자로 구성한 후에는 물론 AMI 이미지를 저장할 수 있습니다. –

답변

0

여기에서 찾을 :이 방랑 1.2+ 방랑에 AWS 제공자를 추가 플러그인, 가 방랑을 허용하고

https://github.com/mitchellh/vagrant-aws

EC2 및 VPC에서 기계 제어 및 공급.

이렇게하면 Vagrant를 사용하여 AWS 인스턴스를 프로비저닝 할 수 있으므로 동일한 로컬 개발 환경을 AWS EC2 인스턴스로 마이그레이션 할 수 있습니다.

여기 좋은 튜토리얼이 있습니다 :

당신은 AWS에 해당 지역을 이동하는

https://nurmrony.wordpress.com/2015/03/15/vagrant-deploy-and-provisioning-an-amazon-ec2-instance/

+0

예, 이전에 발견했습니다. 내 이해에서, 그것은 wagrant + AWS를 사용하여 _ 시작하는 것입니다. 다음 번에 처음부터 다시 시작하겠습니다. –

+0

중요하지 않다고 생각합니다. 기존의 변경 파일에 6-10 개의 필드를 추가 한 다음,'vagrant up --provider = aws'를 실행하면 작업 인스턴스가 생깁니다. 필요하다면 거기에서 AMI를 만드십시오. –

관련 문제