Sebagai arsitek cloud, Anda tahu bahwa penyimpanan merupakan salah satu resource penting di organisasi mana pun. Setiap hari, ribuan file dan dokumen baru dibuat, dimodifikasi, dan diakses di perusahaan Anda. Anda menetapkan rencana pemulihan dari bencana (disaster recovery) yang sukses untuk menyimpan cadangan dan membuat arsitektur redundan, termasuk yang berikut ini:
Penyimpanan level objek yang aman, skalabel, dan sangat tersedia
Kontrol akses terperinci
Pembuatan versi
Kemampuan pengelolaan siklus proses
Sinkronisasi langsung antara direktori lokal dan cloud
Akun penyimpanan dibutuhkan untuk membuat container. Untuk membuat container, buka akun penyimpanan Anda, pilih container di bagian Penyimpanan data dan tetapkan tingkat akses yang diperlukan untuk container. Untuk membuat Akun Penyimpanan, pilih jenis penyimpanan yang Anda butuhkan (blob, tabel, disk, file, dan antrean) dan tingkat penyimpanan untuk container (hot, cool, atau archive). Selain itu, Anda juga dapat mengonfigurasi Kebijakan akses untuk level Akun Penyimpanan guna menetapkan izin untuk container. Lalu, buka dan konfigurasi kebijakan pengelolaan siklus proses untuk menghapus data yang disimpan setelah jumlah hari yang ditentukan. Aktifkan pembuatan versi, lalu sinkronisasikan direktori pada VM dengan container penyimpanan di Azure Storage. Untuk keamanan tambahan di Azure, Anda memiliki opsi untuk mengenkripsi data dengan kunci yang dikelola pelanggan menggunakan Azure Key Vault.
Terakhir, buat grup resource baru di Azure. Tetapkan pengguna atau grup dari satu project ke peran dalam grup resource baru. Peran tersebut akan mengizinkan pengguna atau grup mengakses resource di grup resource baru.
Sekarang, Anda akan mempelajari berbagai fitur Cloud Storage untuk menyimpan data Anda dengan aman di Google Cloud menggunakan Konsol Cloud dan alat gsutil.
Ringkasan
Cloud Storage adalah resource dasar di Google Cloud. Resource ini memiliki banyak fitur canggih. Di lab ini, Anda akan menjalankan berbagai fitur Cloud Storage yang dapat bermanfaat dalam desain Anda. Anda akan mengeksplorasi Cloud Storage menggunakan konsol dan alat gsutil.
Tujuan
Di lab ini, Anda akan mempelajari cara melakukan tugas-tugas berikut:
Membuat dan menggunakan bucket
Menetapkan daftar kontrol akses untuk membatasi akses
Menggunakan kunci enkripsi Anda sendiri
Menerapkan kontrol versi
Menggunakan sinkronisasi direktori
Penyiapan Qwiklabs
Untuk setiap lab, Anda akan memperoleh project Google Cloud baru serta serangkaian resource selama jangka waktu tertentu, tanpa biaya.
Klik tombol Start Lab. Jika Anda perlu membayar lab, jendela pop-up akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri adalah panel Lab Details yang memuat sebagai berikut:
Tombol Open Google Cloud console
Waktu tersisa
Kredensial sementara yang harus Anda gunakan untuk lab ini
Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab Details.
Klik Next.
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab Details.
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
Klik halaman berikutnya:
Setujui persyaratan dan ketentuan.
Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk melihat menu yang berisi daftar produk dan layanan Google Cloud, klik Navigation menu di kiri atas, atau ketik nama layanan atau produk di kolom Search.
Tugas 1. Persiapan
Dalam tugas ini, Anda akan membuat bucket Cloud Storage. Kemudian, Anda akan mendownload file contoh yang akan digunakan dalam tugas berikutnya.
Membuat bucket Cloud Storage
Pada Konsol Google Cloud, di Navigation menu (), klik Cloud Storage > Buckets.
Catatan: nama bucket harus unik secara global. Anda dapat menggunakan bagian dari PROJECT_ID_1 sebagai nama agar bersifat unik. Misalnya, jika PROJECT_ID_1 adalah myproj-154920, Anda dapat menamai bucket sebagai storecore154920
Klik Create.
Tentukan nilai berikut dan tetap gunakan nilai default untuk setelan lainnya:
Properti
Nilai (masukkan nilai atau pilih opsi yang ditentukan)
Name
Masukkan nama yang unik secara global
Location type
Region
Region
Enforce public access prevention on this bucket
tidak dicentang
Access control
Fine-grained (object-level permission in addition to your bucket-level permissions)
Catat nama bucket. Nama bucket tersebut akan digunakan lagi di lab ini dan disebut sebagai [BUCKET_NAME_1].
Klik Create.
Klik Check my progress untuk memverifikasi tujuan.
Membuat bucket Cloud Storage
Mendownload file sampel menggunakan CURL dan membuat dua salinan
Di Konsol Cloud, klik Activate Cloud Shell ().
Jika diminta, klik Continue.
Simpan [BUCKET_NAME_1] dalam variabel lingkungan:
export BUCKET_NAME_1=<enter bucket name 1 here>
Verifikasi dengan echo:
echo $BUCKET_NAME_1
Jalankan perintah berikut untuk mendownload file sampel (file sampel ini adalah file HTML dokumentasi Hadoop yang tersedia secara publik):
Salin nilai kunci yang dibuat, kecuali b' dan \n', dari output perintah. Format kunci harus mirip seperti tmxElCaabWvJqR7uXEWQF39DhWTcDvChzuCmpHe6sb0=.
Mengubah file boto
Kontrol enkripsi terdapat di dalam file konfigurasi gsutil bernama .boto.
Untuk melihat dan membuka file boto, jalankan perintah berikut:
ls -al
nano .boto
Catatan: jika file .boto kosong, tutup editor nano dengan menekan Ctrl+X, lalu buat file .boto baru menggunakan perintah gsutil config -n. Kemudian, coba buka kembali file menggunakan perintah di atas.
Jika file .boto masih kosong, Anda mungkin harus mencarinya menggunakan perintah gsutil version -l.
Cari baris yang berisi "#encryption_key="
Catatan: bagian bawah editor nano menyediakan pintasan untuk menavigasi file dengan cepat. Gunakan pintasan Where Is untuk menemukan baris secara cepat dengan #encryption_key=.
Hapus tanda komentar di baris dengan menghapus karakter #, lalu tempel kunci yang telah Anda buat sebelumnya di bagian akhir.
Klik [BUCKET_NAME_1]. File setup2.html dan setup3.html menunjukkan bahwa keduanya telah dienkripsi oleh pelanggan.
Klik Check my progress untuk memverifikasi tujuan.
Kunci enkripsi yang disediakan pelanggan (CSEK)
Menghapus file lokal, menyalin file baru, dan memverifikasi enkripsi
Untuk menghapus file lokal Anda, jalankan perintah berikut di Cloud Shell:
rm setup*
Untuk menyalin kembali file dari bucket, jalankan perintah berikut:
gsutil cp gs://$BUCKET_NAME_1/setup* ./
Untuk melakukan cat pada file yang dienkripsi guna mengetahui apakah file berhasil disalin, jalankan perintah berikut:
cat setup.html
cat setup2.html
cat setup3.html
Tugas 4. Merotasi kunci CSEK
Dalam tugas ini, Anda akan merotasi CSEK yang digunakan untuk mengenkripsi data di Cloud Storage, sehingga memastikan keamanan data yang berkelanjutan.
Memindahkan kunci enkripsi CSEK saat ini ke kunci dekripsi
Jalankan perintah berikut untuk membuka file .boto:
nano .boto
Jadikan baris encryption_key saat ini sebagai komentar dengan menambahkan karakter # di awal baris.
Catatan: bagian bawah editor nano menyediakan pintasan untuk menavigasi file dengan cepat. Gunakan pintasan Where Is untuk menemukan baris secara cepat dengan #encryption_key=.
Hapus tanda komentar di decryption_key1 dengan menghapus karakter #, lalu salin kunci saat ini dari baris encryption_key ke baris decryption_key1.
Salin nilai kunci yang dibuat, kecuali b' dan \n', dari output perintah. Format kunci harus mirip seperti tmxElCaabWvJqR7uXEWQF39DhWTcDvChzuCmpHe6sb0=.
Untuk membuka file boto, jalankan perintah berikut:
nano .boto
Hapus tanda komentar pada enkripsi dan tempel nilai kunci baru untuk encryption_key=.
Tekan Ctrl+O, lalu ENTER untuk menyimpan file boto, kemudian tekan Ctrl+X untuk keluar dari nano.
Menulis ulang kunci untuk file 1 dan menjadikan kunci dekripsi lama sebagai komentar
Ketika file yang dienkripsi ditulis ulang, file tersebut akan didekripsi menggunakan decryption_key1 yang Anda tetapkan sebelumnya, lalu dienkripsi menggunakan encryption_key baru.
Anda menulis ulang kunci setup2.html, tetapi tidak melakukannya untuk setup3.html, sehingga dapat melihat yang terjadi jika Anda tidak merotasi kunci dengan benar.
Jalankan perintah berikut:
gsutil rewrite -k gs://$BUCKET_NAME_1/setup2.html
Untuk membuka file boto, jalankan perintah berikut:
nano .boto
Jadikan baris decryption_key1 saat ini sebagai komentar dengan menambahkan kembali karakter #.
Untuk mendownload setup3.html, jalankan perintah berikut:
gsutil cp gs://$BUCKET_NAME_1/setup3.html recover3.html
Catatan: Apa yang terjadi? File setup3.html tidak ditulis ulang menggunakan kunci baru, sehingga tidak dapat didekripsi lagi, dan proses menyalin akan gagal. Anda telah berhasil merotasi kunci CSEK.
Tugas 5. Mengaktifkan pengelolaan siklus proses
Dalam tugas ini, Anda akan mengaktifkan pengelolaan siklus proses untuk bucket Cloud Storage guna mengotomatiskan penghapusan objek setelah jangka waktu tertentu.
Melihat kebijakan siklus proses saat ini untuk bucket
Jalankan perintah berikut untuk melihat kebijakan siklus proses saat ini:
gsutil lifecycle get gs://$BUCKET_NAME_1
Catatan: tidak ada konfigurasi siklus proses. Anda akan membuat konfigurasi siklus proses di langkah berikutnya.
Membuat file kebijakan siklus proses JSON
Untuk membuat file bernama life.json, jalankan perintah berikut:
nano life.json
Tempelkan nilai berikut ke file life.json:
{
"rule":
[
{
"action": {"type": "Delete"},
"condition": {"age": 31}
}
]
}
Catatan: perintah ini memberi tahu Cloud Storage untuk menghapus objek setelah 31 hari.
Tekan Ctrl+O, lalu ENTER untuk menyimpan file, kemudian tekan Ctrl+X untuk keluar dari nano.
Menetapkan dan memverifikasi kebijakan
Untuk menetapkan kebijakan, jalankan perintah berikut:
gsutil lifecycle set life.json gs://$BUCKET_NAME_1
Untuk memverifikasi kebijakan, jalankan perintah berikut:
gsutil lifecycle get gs://$BUCKET_NAME_1
Klik Check my progress untuk memverifikasi tujuan.
Mengaktifkan pengelolaan siklus proses
Tugas 6. Mengaktifkan pembuatan versi
Dalam tugas ini, Anda akan mengaktifkan pembuatan versi untuk bucket Cloud Storage guna melindungi data dari penghapusan atau perubahan yang tidak disengaja.
Melihat status pembuatan versi bucket dan mengaktifkan pembuatan versi
Jalankan perintah berikut untuk melihat status pembuatan versi bucket saat ini:
gsutil versioning get on gs://$BUCKET_NAME_1
Catatan: Kebijakan "Suspended" berarti bahwa pembuatan versi tidak diaktifkan.
Untuk mengaktifkan pembuatan versi, jalankan perintah berikut:
gsutil versioning set on gs://$BUCKET_NAME_1
Untuk memverifikasi bahwa pembuatan versi telah diaktifkan, jalankan perintah berikut:
gsutil versioning get gs://$BUCKET_NAME_1
Klik Check my progress untuk memverifikasi tujuan.
Mengaktifkan pembuatan versi
Membuat beberapa versi file sampel dalam bucket
Periksa ukuran file sampel:
ls -al setup.html
Buka file setup.html:
nano setup.html
Hapus 5 baris mana pun dari setup.html untuk mengubah ukuran file.
Tekan Ctrl+O, lalu ENTER untuk menyimpan file, kemudian tekan Ctrl+X untuk keluar dari nano.
Salin file ke bucket menggunakan opsi pembuatan versi -v:
Untuk menampilkan semua versi file, jalankan perintah berikut:
gcloud storage ls -a gs://$BUCKET_NAME_1/setup.html
Tandai dan salin nama versi file terlama (yang ditampilkan pertama) yang disebut sebagai [VERSION_NAME] di langkah berikutnya.
Catatan: pastikan Anda menyalin jalur lengkap file, dimulai dengan gs://
Simpan nilai versi dalam variabel lingkungan [VERSION_NAME].
export VERSION_NAME=<Enter VERSION name here>
Verifikasi dengan echo:
echo $VERSION_NAME
Hasil (ini adalah contoh output):
gs://BUCKET_NAME_1/setup.html#1584457872853517
Mendownload file versi asli terlama dan memverifikasi pemulihan
Download file versi asli:
gcloud storage cp $VERSION_NAME recovered.txt
Untuk memverifikasi pemulihan, jalankan perintah berikut:
ls -al setup.html
ls -al recovered.txt
Catatan: Anda telah memulihkan file asli dari versi backup. Perhatikan bahwa ukuran dokumen asli lebih besar daripada versi saat ini karena Anda telah menghapus beberapa baris.
Tugas 7. Menyinkronkan direktori dengan bucket
Dalam tugas ini, Anda akan menyinkronkan direktori lokal dan subdirektorinya dengan bucket Cloud Storage menggunakan perintah gsutil rsync.
Membuat direktori bertingkat dan menyinkronkan dengan bucket
Buat struktur direktori bertingkat sehingga Anda dapat memeriksa yang terjadi saat direktori disalin secara rekursif ke bucket.
Di Konsol Cloud, pada Navigation menu (), klik Cloud Storage > Buckets.
Klik [BUCKET_NAME_1]. Subfolder terdapat di dalam bucket.
Klik /firstlevel, lalu /secondlevel.
Bandingkan apa yang Anda lihat di Konsol Cloud dengan hasil yang didapat dari perintah berikut:
gcloud storage ls -r gs://$BUCKET_NAME_1/firstlevel
Keluar dari Cloud Shell:
exit
Tugas 8. Ulasan
Di lab ini Anda tidak hanya telah belajar membuat dan menggunakan bucket dan objek, tetapi Anda juga telah mempelajari fitur-fitur Cloud Storage:
CSEK: Kunci enkripsi yang disediakan pelanggan
Menggunakan kunci enkripsi Anda sendiri
Merotasi kunci
ACL: Daftar kontrol akses
Menetapkan ACL sebagai pribadi, lalu mengubahnya menjadi publik
Pengelolaan siklus proses
Menetapkan kebijakan untuk menghapus objek setelah 31 hari
Pembuatan versi
Membuat versi dan memulihkan versi sebelumnya
Sinkronisasi direktori
Menyinkronkan direktori VM dengan bucket secara rekursif
Azure dan Google Cloud memberikan solusi penyimpanan yang skalabel dan aman untuk data tidak terstruktur. Solusi penyimpanan sangat mirip dalam hal fungsionalitas, tetapi terdapat perbedaan dalam cara enkripsi, autentikasi, dan keamanan ditangani. Mari kita lihat beberapa kesamaan dan perbedaan antara kedua layanan.
Kesamaan:
Kedua layanan menawarkan beberapa tingkat penyimpanan untuk membantu pelanggan mengoptimalkan biaya dan performa berdasarkan kebutuhan mereka.
Kedua layanan mendukung beberapa kelas penyimpanan untuk pola akses yang berbeda, termasuk hot, cool, dan archive.
Kedua layanan menyediakan fitur pembuatan versi dan pengelolaan siklus proses.
Perbedaan:
Tingkat penyimpanan Google Cloud
Tingkat penyimpanan Azure
Standard Storage
Hot
Nearline Storage
Cool
Coldline Storage
Archive Storage
Archive
Google Cloud Storage dan Azure Storage memiliki batasan yang berbeda untuk jumlah maksimal objek yang dapat disimpan, yang dapat memengaruhi jenis dan ukuran data yang dapat Anda simpan di masing-masing layanan. Saat ini, Anda dapat menyimpan 5000 bucket per project di Cloud Storage dan 500 container per akun penyimpanan di Azure Storage. Di penyimpanan blob Azure, Anda membuat satu atau lebih container dalam akun penyimpanan dan mengonfigurasi setelan container untuk kebijakan akses dan metadata. Di Cloud Storage, Anda mengonfigurasi bucket untuk menyertakan kelas penyimpanan, lokasi, kontrol akses, dan opsi logging.
Di Azure, Anda juga dapat menggunakan storage explorer untuk menjalankan opsi penyimpanan di UI. Di Google Cloud, tidak ada antarmuka eksklusif dan Anda dapat mengonfigurasinya menggunakan Konsol Google Cloud.
Di Google Cloud Storage, nama bucket harus bersifat unik di semua Google Cloud Storage, sementara di Azure, nama container harus bersifat unik di dalam akun penyimpanan tersebut.
Mengakhiri lab Anda
Setelah Anda menyelesaikan lab, klik Akhiri Lab. Google Cloud Skills Boost menghapus resource yang telah Anda gunakan dan membersihkan akun.
Anda akan diberi kesempatan untuk menilai pengalaman menggunakan lab. Pilih jumlah bintang yang sesuai, ketik komentar, lalu klik Submit.
Makna jumlah bintang:
1 bintang = Sangat tidak puas
2 bintang = Tidak puas
3 bintang = Netral
4 bintang = Puas
5 bintang = Sangat puas
Anda dapat menutup kotak dialog jika tidak ingin memberikan masukan.
Untuk masukan, saran, atau koreksi, gunakan tab Support.
Hak cipta 2020 Google LLC Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.
Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
Di kiri atas layar, klik Start lab untuk memulai
Gunakan penjelajahan rahasia
Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
Klik Open console dalam mode pribadi
Login ke Konsol
Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
Setujui persyaratan, dan lewati halaman resource pemulihan
Jangan klik End lab kecuali jika Anda sudah menyelesaikan lab atau ingin mengulanginya, karena tindakan ini akan menghapus pekerjaan Anda dan menghapus project
Konten ini tidak tersedia untuk saat ini
Kami akan memberi tahu Anda melalui email saat konten tersedia
Bagus!
Kami akan menghubungi Anda melalui email saat konten tersedia
Satu lab dalam satu waktu
Konfirmasi untuk mengakhiri semua lab yang ada dan memulai lab ini
Gunakan penjelajahan rahasia untuk menjalankan lab
Gunakan jendela Samaran atau browser pribadi untuk menjalankan lab ini. Langkah ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
Dalam lab ini, Anda akan membuat dan menggunakan bucket Cloud Storage serta menggunakan banyak fitur lanjutan, termasuk membatasi akses dengan Daftar Akses, menerapkan kontrol versi, memuat dan mengelola kunci enkripsi Anda sendiri, sinkronisasi direktori, dan masih banyak lagi.