Menggunakan AWS CLI Untuk Akses Object Storage non AWS

Yusuf Ayuba
3 min readMay 1, 2023

--

Bagi pengguna Amazon Web Services (AWS), tentu tidak akan asing dengan AWS Command Line Interface (CLI) ini. AWS CLI adalah tools yang dapat digunakan untuk mengelola layanan-layanan yang ada di AWS yang salah satunya adalah Amazon Simple Storage Service (Amazon S3). Amazon S3 adalah layanan penyimpanan (storage) berbasis objek yang menawarkan skalabilitas, ketersediaan data, keamanan, dan kinerja terdepan dalam industri.

Saat ini, sudah banyak provider-provider diluar AWS yang menyediakan storage S3, sebut saja provider local seperti Cloudkilat dengan layanannnya yang bernama Kilat Storage, Biznet dengan layanannya NEO Object Storage,dan lain sebagainya yang kesemuanya diklaim kompatibel dengan Amazon S3.

Karena saya menggunakan Kilat Storage, maka dalam artikel ini hanya akan membahas kilat storage. Berikut langkah-langkah setup AWS CLI di Linux untuk Kilat Storage.

1. Download dan install AWS CLI. AWS CLI yang digunakan adalah versi 2

cd /tmp
curl \"https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip\" -o \"aws2.zip\"
unzip aws2.zip
cd aws
sudo ./install

2. Konfigurasi AWS CLI<

aws configure
AWS Access Key ID [none]: INSERT_ACCESS_KEY
WS Secret Access Key [none]: INSERT_SECRET_KEY
Default region name [none]: id-jkt-1

Silahkan ganti INSERT_ACCESS_KEY dan SECRET_KEY dengan Access Key dan Secret key dari Kilat Storage.

3. Testing

Untuk testingnya, kita bisa menggunakan perintah-perintah yang ada di AWS CLI ini, seperti beberapa contoh- dibawah

Membuat Bucket baru

aws --endpoint-url https://s3-id-jkt-1.kilatstorage.id s3 mb s3://bucket-baru
make_bucket: bucket-baru

List Object

aws --endpoint-url https://s3-id-jkt-1.kilatstorage.id s3 ls
2020–03–11 11:05:25 bucket-baru

Mengupload file

aws --endpoint-url https://s3-id-jkt-1.kilatstorage.id s3 cp file.txt s3://bucket-baru
upload: ./file.txt to s3://bucket-baru/file.txt

Menghapus File

aws --endpoint-url https://s3-id-jkt-1.kilatstorage.id s3 rm s3://bucket-baru/file.txt
delete: s3://bucket-baru/file.txt

Sinkronisasi File

aws --endpoint-url https://s3-id-jkt-1.kilatstorage.id s3 sync . s3://bucket-baru
upload: ./file.txt to s3://bucket-baru/file.txt

Create Pre-Sign URL

aws --endpoint-url https://s3-id-jkt-1.kilatstorage.id s3 presign s3://bucket-baru/file.txt
https://s3-id-jkt-1.kilatstorage.id/bucket-baru/file.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256&amp;X-Amz-Expires=3600&amp;X-Amz-Credential=3fea7fc7f6d0ab5ef3eb%2F20200311%2Fid-jkt-1%2Fs3%2Faws4_request&amp;X-Amz-SignedHeaders=host&amp;X-Amz-Date=20200311T041121Z&amp;X-Amz-Signature=a9268ca63675c96069fb3fd4798b9f5c7aa86c44249d5aa02192f0b25a5762e8

Dari beberapa contoh diatas, terlihat ada penambahan parameter--endpoint-url https://s3-id-jkt-1.kilatstorage.id disetiap baris perintah. Hal ini dimaksudkan adalah untuk meng-override endpoint AWS CLI yang secara default mengarah ke http://s3.{region}.amazonaws.com.

Default endpoint aws cli

Hal ini bagi sebagian orang akan sedikit merepotkan ketika harus mengetikkan perintah yang panjang. Namun jangan kuatir, setidaknya ada dua cara yang bisa kita gunakan untuk mengatasi hal tersebut.

Cara pertama adalah membuat Alias baru. Trik ini termasuk yang paling mudah, kita hanya cukup membuat alias baru

alias aws=\'aws --endpoint-url https://s3-id-jkt-1.kilatstorage.id\'
aws s3 ls
2020–03–11 11:05:25 bucket-baru

Cara kedua adalah menggunakan plugin pihak ketiga yaitu awscli_plugin_endpoint. Berikut cara install dan konfigurasinya

pip install git+https://github.com/wbingli/awscli-plugin-endpoint.git
aws configure set plugins.endpoint awscli_plugin_endpoint
aws configure set s3.endpoint_url https://s3-id-jkt-1.kilatstorage.id
aws s3 ls
2020–03–11 11:05:25 bucket-baru

Bagaimana, cukup mudah khn mengakses Kilat Storage menggunakan AWS CLI? Sekian artikel singkat ini, semoga bermanfaat (*)

--

--

Yusuf Ayuba
0 Followers

Perkenalkan nama saya Yusuf Ayuba, saat in saya bekerja sebagai tenaga pengajar di salah satu Perguruan Tinggi di Kota Luwuk.