본문 바로가기
공부/AWS

[AWS] Private하게 DataSync 사용하기

by haejang 2021. 12. 11.
728x90
728x90

 

 

 

AWS DataSync란?


https://aws.amazon.com/ko/datasync/

 

온라인 데이터 전송 및 마이그레이션—AWS DataSync—Amazon Web Services

AWS DataSync는 온프레미스와 AWS 스토리지 서비스 사이에서 데이터 이동을 자동화 및 가속화하는 안전한 온라인 서비스입니다. DataSync는 NFS(Network File System) 공유, SMB(Server Message Block) 공유, Hadoop 분

aws.amazon.com

NFS/SMB 등의 파일 시스템 + AWS S3/EFS/FSx 들 간의 데이터 마이그레이션 서비스이다

 

https://docs.aws.amazon.com/ko_kr/datasync/latest/userguide/datasync-network.html#using-vpc-endpoint

 

DataSync 네트워크 요구 사항 - AWSDataSync

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

Private한 DataSync 사용을 위한 VPC Endpoint 네트워크 요구사항은 위와 같다

 

 

왼쪽 하단의 AWS Management Console이 도대체 무슨 소리인지 이해가 안가서 많이 헤맸는데, 결국 AWS Console에 접속할 수 있는 별도의 Window Bastion 서버가 필요한 것이었다

 

일단 해보자!

 

 

1. 전체 Architecture


 

 

2. SMB Server 설정


- SMB Server Private IP : 10.0.1.79

 

1) Network Share 설정

제어판 > Network and Internet > Networking and Sharing Center > Change advanced sharing settings

 

 

둘 다 Turn on 해주고 Save changes 눌러줌

 

2) SMB Folder 생성 후 속성

 

 

끝이다. 실행 커맨드로 \\서버IP\공유폴더이름 으로도 접속 가능하다

여기에 대충 아무 파일 몇개 집어넣어놓겠다

 

 

 

3. DataSync Agent 생성


아웃바운드 제어를 딱히 하지 않는다고 했을 때, Bastion 서버로부터의 80 Port 인바운드만 열려있는 보안그룹을 먼저 하나 만들어주자

그리고 위에서 만들었던 SMB 서버에서 Agent로부터 139/445를 받을 수 있게 해줘야한다

그리고 EC2 AMI 에서 datasync로 검색하면 Community AMI에 많은 datasync용 AMI들이 나온다

 

 

뭐로 만들어도 크게 다른점은 없는 것 같다

어차피 직접 들어가서 설정이 필요한 것도 아니니 아무거나 골라서 만들어주자 (난 맨 위에거로 함)

- DataSync Agent Private IP : 10.0.2.101

 

 

4. VPC Endpoint 생성


datasync Endpoint를 만들어준다

datasync Agent로부터 1024-1064 / 443 Port를 받을 수 있도록 보안그룹을 생성해서 붙여주자

 

 

5. S3 생성


SMB Sever로부터 데이터를 Sync 받을 S3를 만들어주자

datasync라는 폴더도 만들어줬다

 

 

 

 

6. Bastion Server 생성 & Agent 생성


그냥 윈도우 서버에서 Chrome 쓸 수 있게 해준 후 AWS Console에 접속하면 된다

Activation을 위해 이 서버에서 DataSync 생성을 진행해야 한다

 

우선 윈도우 서버를 시작하면 Explorer밖에 없으므로,,,인터넷을 사용할 수 있게 해줘야 한다

Server manager > Local Server > IE Enhanced Security Configuration을 Off로 바꿔준다

 

 

그 다음에 Explorer에서 Chrome을 다운받아준 뒤 AWS Console에 들어가두자 (Explorer는 너무 별로니까...)

 

DataSync Console에 들어온 뒤, Get started를 누르면 자동으로 Create Agent가 시작된다

 

 

마지막에 DataSync Agent의 사설 IP를 적어주고 Get key를 눌러주면

 

 

이렇게 Activation Key 를 받을 수 있고 Agent 생성을 마무리할 수 있게 된다

이제 Bastion 서버는 더이상 필요 없다...다시 로컬에서 Datasync 생성을 마무리하자

 

 

7. DataSync Task 생성


DataSync > Tasks > Create Task

 

Configuration source location

 

 

Source는 아까 만들어 둔 SMB 서버로 설정해준다

User/PW는 SMB용 User를 따로 만들어주는게 아무래도 더 권장되겠지만,,,귀찮으니 그냥 Administrator로 넣었다

 

Configuration destination location

 

 

IAM Role은 Autogenerate로 자동생성해줬다

 

 

Test니까 Log는 비활하고,,,이정도만 설정해준 뒤 Create task를 눌렀다

 

 

task 생성이 완료된 후, Start with defaults로 task를 실행시켰다

조금 기다리고,,,Task가 완료된 후 S3로 가보니

 

 

아까 SMB 서버에 넣어놓은 파일들이 잘 옮겨져 있다

 

끝!!!

 

 

필요 통신 요약

 

 

728x90
728x90

댓글