본문 바로가기

DevOps/AWS

[AWS] 윈도우 호스트 서버와 AWS 폴더 연동 (백업)

버킷 내 백업 폴더 생성

 


사용자 생성

  • 사용자를 하나 만들어서 버킷에서 작업을 수행하려고 한다. 적절한 권한 인증이 필요하므로 기존계정 외에 하나 더 추가할 예정이다

# 위의 과정을 거치게 되면 .csv 파일로 키를 받을 수 있다.

# 해당 파일을 메모장으로 실행해보자.

# CSV란 무엇인가? Comma-Separated Values 라는 뜻으로 값이 콤마 (,)로 분리되어 있다는 것이다.

# AWS_admin,, 이후로 콤마로 나뉘어져있는 값을 알 수 있다. 가려진 부분은 Access Key와 Secret Key 이다


AWS CLI 설치

https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/install-cliv2.html

 

AWS CLI 버전 2 설치, 업데이트 및 제거 - AWS Command Line Interface

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

docs.aws.amazon.com

 

# 해당 웹 페이지에서 AWS CLI를 설치한다

# 이후 설치를 진행한다.


AWS CLI 설치확인

  • 설치가 잘 되었다면 해당 화면처럼 나온다.

aws --version


버킷에 접근하기

 

aws configure

# 위의 순서대로 입력해준다. Access Key와 Secret Key는 AWS_admin 계정을 생성하며 받은 .csv 파일에 적혀있다.

# 메모장으로 확인하였고 콤마를 기준으로 나뉘어져있었다.

aws s3 ls

# 해당 계정의 버킷들의 목록을 보여준다.


윈도우에서 버킷 폴더로 업로드할 폴더 생성

  • C드라이브에 upload 폴더를 생성 후 이동 후 Hello.txt 파일 생성
mkdir \upload
cd \upload
echo "Hello World" > Hello.txt

# 이제 해당 폴더를 업로드 폴더로 하겠다.

# 이후 aws s3 sync '로컬파일경로' 's3스토리지 경로' 명령어를 기입

 

  • S3 스토리지 경로를 알아보자
    # 아까 생성했던 폴더에서 S3 URL을 복사해서 넣어준다.
aws s3 sync C:\upload s3://jss-20210831/backup_test/

# upload 폴더에 새로운 파일을 생성한 후 해당 명령어를 기입하면 backup_test 폴더로 파일이 복사가 된다.

  • 해당 명령어와 경로를 메모장에 붙여넣어 bat파일로 저장하자.

# 로컬 디스크 c로 이동해서 bat 이라는 폴더를 생성 후 backup.bat 형식으로 저장한다

# bat은 batch 라는 일괄작업의 확장자.


작업스케줄러 응용

  • 윈도우 작업 스케쥴러 실행

# 리눅스의 crontab을 생각해보자.

 

  • 동작 -> 작업만들기 탭에서 설정하자

# 사용자가 로그온할때만 실행을 클릭해야한다. 여부와 관계 없이 실행할 경우 보안에 걸렸었다.

 

  • 이후 트리거 탭에서 나머지 설정

# 매일 오후 3시 15분에 작업을 하도록 설정이 되었다.

# 이후 동작 탭에서 아까 저장한 backup.bat를 넣어준다.