Boto3 란?
boto3는 AWS의 Python SDK입니다.
boto3를 사용하여 Python 코드로 AWS의 다양한 서비스들(S3, EC2, Lambda 등)을 쉽게 제어하고 관리할 수 있습니다.
[사전 필요사항]
boto3를 사용하기 전에 아래 항목들이 설치되어 있는지 확인하고, 설치되어있지 않다면 설치해 줍니다.
- python
- boto3
- aws cli
- boto3를 사용하기 위해선 aws access key가 필요합니다. 생성되어있지 않다면 생성해 줍니다.
[boto3 사용해보기]
boto3를 사용해 s3 list를 출력해보도록 하겠습니다.
우선 aws configure 명령어를 통해 앞서 생성했던 access key를 등록해줍니다.
다음은 s3 list를 가져오는 간단한 boto3 코드입니다.
import boto3 # S3 클라이언트 생성 s3 = boto3.client('s3') # S3 버킷 목록 조회 response = s3.list_buckets() # 버킷 이름 출력 for bucket in response['Buckets']: print(f"버킷 이름: {bucket['Name']}")
- 코드 설명
import boto3
:
boto3 라이브러리를 불러옵니다.
s3_client = boto3.client('s3')
:
S3 서비스에 접근하기 위한 클라이언트를 생성합니다.
s3 외에도 다양한 서비스를 사용 가능하며, 각 클라이언트는 해당 AWS 서비스의 API를 Python에서 쉽게 사용할 수 있게 해줍니다.
response = s3_client.list_buckets()
:
S3의 모든 버킷 목록을 조회하는 API를 호출합니다.
list_buckets는 AWS S3 API의 메서드 중 하나로, 이 외에도 다른 메서드를 사용하여 S3와 관련된 다양한 작업이 가능합니다.
for bucket in response['Buckets']:
:
print(bucket['Name'])
:
버킷 정보들이 담긴 리스트를 순회하며 각 버킷의 이름을 출력합니다.
버킷 정보 중 'Name' 키의 값을 가져옵니다.
- 코드 실행 결과
코드 실행시 s3 list가 잘 출력되는 것을 확인할 수 있습니다.
마치며...
실제로 수동으로 처리하던 AWS 여러 작업들을 boto3를 통해 자동화함으로써 업무 효율을 크게 개선할 수 있었습니다.
작업들을 몇 줄의 코드로 처리할 수 있게 되어 시간 절약은 물론 실수도 줄일 수 있었죠.
현재는 gpt등을 통해 필요한 boto3 코드를 쉽게 얻을 수 있어 사용하기 훨씬 쉬워졌습니다.
그래도 boto3에 대한 기본 지식을 갖고 있어야 코드를 더 잘 이해하고 필요시 코드 수정/디버깅을 할 수 있겠죠? :)
boto3 사용을 적극 추천드리며.. 이것으로 boto3에 대한 소개를 마치도록 하겠습니다.
아티클이 유용했나요?
훌륭합니다!
피드백을 제공해 주셔서 감사합니다.
도움이 되지 못해 죄송합니다!
피드백을 제공해 주셔서 감사합니다.
피드백 전송
소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.