2016-07-12 2 views
-2

단일 LB 아래에있는 여러 개의 ec2 인스턴스에 업데이트 된 파일을 업로드해야합니다. 내 문제는 일부 ec2 인스턴스를 놓친 것이고 내 웹 페이지가 파손되었습니다. 한 번의 클릭으로 여러 파일을 여러 EC2 Windows 서버에 업로드 할 수있는 도구가 있습니까?Amazon AWS - 단일 LB로 여러 인스턴스에 파일 업로드

일주일에 몇 번씩 파일을 업데이트 할 예정입니다. Elastic beanstalk, Amazon Code Deploy 및 Amazon EFS를 확인했습니다. 그러나 사용하기가 어렵습니다. 아무도 도와주세요

+0

어떻게 파일을 ec2 인스턴스로 전송합니까? –

+0

현재 파일 업로드에 WinSCP 클라이언트를 사용하고 있습니다. – Rahmathullah

답변

2

AWS S3 및 AWS CLI 사용을 제안합니다. 모든 EC2 인스턴스에 AWS CLI를 설치하면됩니다. AWS S3에서 버킷 생성.

아래의 구문을 사용하여 각 EC2 인스턴스에서 Cron 작업을 시작하십시오. 모든 이미지가 자동으로로드 밸런서 뒤에 모든 EC2 인스턴스와 동기화 할 S3 버킷에 새로운 이미지를 업로드 할 때

aws s3 sync s3://bucket-name/folder-on-bucket /path/to/local/folder 

은 그래서 일어날 것 같습니다. AWS s3는 이미지를 업로드하고 삭제하는 중앙 디렉토리입니다.

0

일부 robocopy 명령을 포함하는 스크립트를 만들고 서버의 파일을 업데이트 할 때 실행하십시오. 다음과 같은 내용 :

robocopy Source Destination1 files 
robocopy Source Destination2 files 

컴퓨터에있는 사용자와 함께 복사 할 폴더가 필요합니다.

1

당신은 당신은 이렇게 가고 기본적으로

aws elb describe-load-balancers --load-balancer-name <name_of_your_lb> --query LoadBalancerDescriptions[].Instances --output text |\ 
xargs -I {} aws ec2 describe-instances --instance-id {} --query Reservations[].Instances[].PublicIpAddress |\ 
xargs -I {} scp <name_of_your_file> <your_username>@{}:/some/remote/directory 

같은 것을 실행할 수는 AWS CLI 활용할 수 :

  1. 각에 대한 부하 분산
  2. 에 연결된 모든 EC2 인스턴스를 찾아 ec2 인스턴스 중 PublicIPAddress을 찾으십시오 (scp를 통해 연결할 수 있기 때문에).
  3. r EC2 서버에 어딘가에 한 파일을 복사하는 유엔 scp 명령은 많은 파일을 밀어해야하는 경우

당신이,

아마존 ElasticFileSystem 아마 지금 가장 쉬운 옵션이 될 것입니다 쉽게이있을 수 있습니다, 또한 copy folder를 복사 할 수 있습니다 파일 시스템을 작성하여 Load Balancer에 연결된 모든 ec2 인스턴스에 연결하고 파일을 EFS로 전송하면 EFS가 연결된 모든 ec2 인스턴스에서 사용할 수 있습니다. (EFS를 작성하는 설정 당신의 ec2 인스턴스에 한번 마운트해야합니다.)

관련 문제