728x90
๋ฐ์ํ
boto3 ๋?
boto3๋ ํ์ด์ฌ์์ Amazon Web Services(AWS)๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ๊ณต์ SDK(์ํํธ์จ์ด ๊ฐ๋ฐ ํคํธ)์ ๋๋ค.
์ด๋ฅผ ํตํด AWS์ ๋ค์ํ ์๋น์ค๋ฅผ ๊ด๋ฆฌํ๊ณ ์ ์ดํ ์ ์์ต๋๋ค.
์ฃผ๋ก ํด๋ผ์ฐ๋ ์๋น์ค๋ฅผ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก ๋ค๋ฃจ๋ ๋ฐ์ ์ฌ์ฉ๋ฉ๋๋ค.
boto3๋ฅผ ์ฌ์ฉํ๋ฉด EC2 ์ธ์คํด์ค ์์ฑ, S3 ๋ฒํท ๊ด๋ฆฌ, DynamoDB ํ ์ด๋ธ ์กฐ์, Lambda ํจ์ ๋ฐฐํฌ ๋ฑ์ ํ ์ ์์ต๋๋ค.
boto3 ์ค์นํ๊ธฐ
๋จผ์ boto3๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก pip๋ฅผ ์ฌ์ฉํ์ฌ ์ค์นํฉ๋๋ค.
pip install boto3
์ฌ์ฉ๋ฒ ์์
์๋ ์์๋ S3 ๋ฒํท์ ๋ง๋ค๊ณ ๋ชฉ๋ก์ ๋์ดํ๋ ๊ฐ๋จํ boto3 ์ฌ์ฉ๋ฒ์ ๋๋ค.
import boto3
# AWS ์ธ์ฆ ์ค์
s3 = boto3.resource('s3', aws_access_key_id='YOUR_ACCESS_KEY_ID', aws_secret_access_key='YOUR_SECRET_ACCESS_KEY', region_name='YOUR_REGION')
# S3 ๋ฒํท ๋ง๋ค๊ธฐ
bucket_name = 'your-unique-bucket-name'
s3.create_bucket(Bucket=bucket_name)
# ์์ฑํ ๋ฒํท ๋ชฉ๋ก ์ถ๋ ฅ
for bucket in s3.buckets.all():
print(bucket.name)
์ฌ์ฉ๋ฒ ์ค๋ช
- `boto3.resource()` ํจ์๋ฅผ ์ฌ์ฉํ์ฌ AWS ๋ฆฌ์์ค ๊ฐ์ฒด๋ฅผ ์์ฑํฉ๋๋ค. ์ฌ๊ธฐ `aws_access_key_id`, `aws_secret_access_key`, `region_name`์ AWS ๊ณ์ ์ ์๊ฒฉ ์ฆ๋ช ๋ฐ ๋ฆฌ์ ์ ์ค์ ํ๋๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
- `s3.create_bucket()` ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์๋ก์ด S3 ๋ฒํท์ ์์ฑํฉ๋๋ค.
- `s3.buckets.all()`์ ํตํด ํ์ฌ AWS ๊ณ์ ์ ๋ชจ๋ ๋ฒํท ๋ชฉ๋ก์ ๊ฐ์ ธ์ต๋๋ค.
์ฐธ๊ณ ์ฌํญ
- ์ด ์์๋ AWS ์๊ฒฉ ์ฆ๋ช ์ ํ๋์ฝ๋ฉ์ผ๋ก ์ ๊ณตํ์ง๋ง, ์ค์ ํ๊ฒฝ์์๋ ๋ณด์์ ์ํด IAM(Identity and Access Management) ์ญํ ์ ์ฌ์ฉํ์ฌ ์๊ฒฉ ์ฆ๋ช ์ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
- ๋ ๋ง์ AWS ์๋น์ค์ ๋ํ ์ ๋ณด์ ์ฌ์ฉ๋ฒ์ ๊ณต์๋ฌธ์๋ฅผ ์ฐธ์กฐํ์๋ฉด ๋ฉ๋๋ค.
728x90
๋ฐ์ํ
'๐ Development > AWS(Amazon Web Services)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
PySpark(ํ์ด์คํํฌ)์ AWS Glue(๊ธ๋ฃจ) ETL ๋? (0) | 2024.02.19 |
---|---|
[AWS] IAM ์ด๋? (1) | 2024.02.19 |
[AWS] Redshift ๋? (0) | 2024.01.19 |
[AWS์์์ ์จ๋๋งจ๋ ๊ฐ๋ ] ์จ๋๋งจ๋(On-demand) ์๋น์ค ๋? (0) | 2023.11.20 |