GNU/Linux >> Belajar Linux >  >> Linux

Cara membuat Bucket S3 menggunakan Python Boto3 di AWS

Dalam artikel ini, kita akan belajar membuat bucket S3 menggunakan library Python Boto3. Kita juga akan melihat langkah-langkah untuk menghapus bucket yang kita buat. Kami akan menggunakan metode "create_bucket" &"delete_bucket" untuk membuat dan menghapus bucket masing-masing.

Sebelum melanjutkan, saya berasumsi bahwa Anda akrab dengan bucket S3, tetapi jika Anda tidak terbiasa dengan layanan bucket S3, klik di sini untuk mempelajari cara membuat bucket dari AWS Console.

Prasyarat

  1. Akun AWS (Buat jika Anda belum memilikinya)
  2. Pemahaman dasar tentang S3
  3. Pemahaman dasar tentang Python
  4. Python tersedia di sistem

Apa yang akan kami lakukan

  1. Instal Boto3
  2. Ketahui metode yang diperlukan.
  3. Buat dan hapus bucket S3.

Instal dependensi Boto3

Python hadir secara default di Server Ubuntu, jadi Anda tidak perlu menginstalnya.

Untuk memeriksa versi Python di sistem Anda, gunakan perintah berikut.

python mana
/usr/bin/python --version

ATAU

python --versi

Jika Anda tidak memiliki pip dan menggunakan Ubuntu, jalankan perintah berikut untuk memperbarui repo lokal terlebih dahulu.

sudo apt update

Untuk menginstal pip, gunakan perintah berikut.

sudo apt install python-pip

Untuk memeriksa versi Pip yang diinstal, jalankan perintah berikut.

pip --versi

Setelah Anda memiliki python dan pip, Anda dapat menginstal Boto3.

Menginstal Boto3 sangat sederhana dan mudah. Untuk menginstal Boto3 gunakan perintah berikut.

pip instal boto3

Untuk memeriksa apakah Boto3 diinstal dan versinya, jalankan perintah berikut.

pip tampilkan boto3

Ketahui metode yang diperlukan

Untuk membuat bucket, kita akan menggunakan metode "create_bucket". Berikut ini adalah sintaks metode dengan semua parameter yang dapat diterimanya. Kami tidak akan menggunakan semua parameter ini untuk membuat Bucket, tetapi Anda dapat mencobanya jika mau.

Sintaks Permintaan dari metode create_bucket

response = client.create_bucket(
    ACL='private'|'public-read'|'public-read-write'|'authenticated-read',
    Bucket='string',
    CreateBucketConfiguration={
        'LocationConstraint': 'EU'|'eu-west-1'|'us-west-1'|'us-west-2'|'ap-south-1'|'ap-southeast-1'|'ap-southeast-2'|'ap-northeast-1'|'sa-east-1'|'cn-north-1'|'eu-central-1'
    },
    GrantFullControl='string',
    GrantRead='string',
    GrantReadACP='string',
    GrantWrite='string',
    GrantWriteACP='string',
    ObjectLockEnabledForBucket=True|False
)
  1. ACL:  ACL kalengan untuk diterapkan ke bucket.
  2. Ember:  Nama bucket yang akan dibuat. Ini harus unik secara global dan tidak boleh ada 2 bucket yang memiliki nama yang sama.
  3. CreateBucketConfiguration:  Informasi konfigurasi untuk bucket.
    LocationConstraint:  Menentukan Region tempat Anda ingin membuat bucket. Wilayah AS Timur (Virginia Utara) (us-timur-1) adalah wilayah default dan keranjang dibuat di sini jika wilayah tidak ditentukan..
  4. GrantFullControl:  Mengizinkan penerima izin membaca, menulis, membaca ACP, dan menulis ACP di keranjang.
  5. GrantRead : Memungkinkan penerima hibah untuk membuat daftar objek di keranjang.
  6. GrantReadACP: Mengizinkan penerima hibah membaca ember ACL.
  7. GrantTulis: Mengizinkan penerima hibah membuat, menimpa, dan menghapus objek apa pun di bucket.
  8. GrantWriteACP: Mengizinkan penerima hibah menulis ACL untuk bucket yang berlaku.
  9. ObjectLockEnabledForBucket: Menentukan apakah Anda ingin S3 Object Lock diaktifkan untuk bucket baru.

Berikut adalah sintaks metode untuk menghapus keranjang yang kita buat.

Sintaks Permintaan dari metode delete_bucket

response = client.delete_bucket(
    Bucket='string'
)
  1. Ember:  Menentukan ember yang sedang dihapus. Anda perlu menentukan nama Bucket S3 Anda di sini yang ingin Anda hapus.

Membuat dan menghapus Bucket S3

Buat file "config.properties" yang akan berisi Pengguna AWS Anda aws_access_key_id_value ,aws_secret_access_key_value dan wilayah. Tambahkan kunci Anda di file ini.

config.properties

aws_access_key_id_value='ACCESS-KEY-OF-THE-AWS-ACCOUNT'
aws_secret_access_key_value='SECRETE-KEY-OF-THE-AWS-ACCOUNT'
region_name_value='eu-west-3'

Sekarang, buat file "create-s3-bucket.py" dan tambahkan kode berikut di dalamnya. Kode ini akan membaca nilai yang ditentukan pada langkah sebelumnya dan membuat keranjang dengan nama yang Anda tentukan dalam file ini. Di sini, saya akan membuat ember bernama "rahul-boto3-test-delete", ubah ke yang Anda inginkan.

vim create-s3-bucket.py

import boto3

def getVarFromFile(filename):
    import imp
    f = open(filename)
    global data
    data = imp.load_source('data', '', f)
    f.close()


getVarFromFile('config.properties')

client = boto3.client(
's3',
    aws_access_key_id=data.aws_access_key_id_value,
    aws_secret_access_key=data.aws_secret_access_key_value
)

response = client.create_bucket(
    Bucket='rahul-boto3-test-delete',
    CreateBucketConfiguration={
        'LocationConstraint': 'eu-west-3',
    },
)

print (response)

Buat file "delete-s3-bucket.py" yang akan berisi kode untuk menghapus bucket. Copy-paste kode berikut di dalamnya.

vim delete-s3-bucket.py

def getVarFromFile(filename):
    import imp
    f = open(filename)
    global data
    data = imp.load_source('data', '', f)
    f.close()


getVarFromFile('config.properties')

client = boto3.client(
's3',
    aws_access_key_id=data.aws_access_key_id_value,
    aws_secret_access_key=data.aws_secret_access_key_value
)

response = client.delete_bucket(Bucket='rahul-boto3-test-delete')

print (response)

Sekarang Anda siap membuat keranjang.

Untuk membuat keranjang, jalankan file "create-s3-bucket.py" menggunakan perintah berikut.

python create-s3-bucket.py

Jika Anda tidak lagi membutuhkan bucket dan ingin menghapusnya, jalankan file "delete-s3-bucket.py" menggunakan perintah berikut.

python delete-s3-bucket.py

Kesimpulan

Kami melihat betapa mudahnya membuat bucket S3 menggunakan pustaka Boto3 Python dan juga menghapusnya. Kami membuat bucket sederhana, Anda dapat menyesuaikan kode sesuai kebutuhan &persyaratan dan membuat bucket menggunakan parameter berbeda yang tersedia di metode create_bucket.


Linux
  1. Buat instans EC2 di AWS menggunakan Terraform

  2. Cara membuat instans RDS di AWS menggunakan Terraform

  3. Cara Melacak Skrip Python menggunakan trace.py

  1. Cara membuat Peran IAM di AWS menggunakan Terraform

  2. Cara membuat Pengguna Linux Menggunakan Ansible

  3. Cara membuat Kamus Python

  1. Cara Membuat Situs Web Statis di Bucket AWS S3

  2. Cara membuat Network Load Balancer di AWS

  3. Cara membuat user di linux menggunakan python