Halaman ini menjelaskan bagaimana gsutil menggunakan file konfigurasi boto dan memberikan contoh kolaborasi yang menggunakan file tersebut. File konfigurasi boto juga digunakan oleh boto, yang merupakan Amazon S3 SDK untuk Python.
Ringkasan file konfigurasi
File konfigurasi boto berisi nilai yang mengontrol perilaku gsutil. Misalnya,
variabel prefer_api
menentukan gsutil API mana yang lebih
disukai. Variabel file konfigurasi boto dapat diubah dengan langsung mengedit
file konfigurasi. Meskipun sebagian besar pengguna tidak perlu mengedit
variabel ini, variabel tersebut biasanya perlu diedit karena salah satu alasan berikut:
- Menyiapkan gsutil agar dapat diproses melalui proxy.
- Menggunakan kunci enkripsi yang dikelola pelanggan atau yang disediakan pelanggan.
- Melakukan penyesuaian khusus perilaku gsutil global.
Location
Lokasi default untuk file konfigurasi boto adalah di direktori utama pengguna, ~/.boto, untuk Linux dan macOS, serta di %HOMEDRIVE%%HOMEPATH%,
untuk Windows. Anda bisa mendapatkan lokasi file konfigurasi dengan menjalankan
perintah gsutil version -l
.
Anda dapat mengganti lokasi tempat gsutil diperkirakan akan menemukan file konfigurasi dengan menetapkan
variabel lingkungan BOTO_CONFIG
. Anda juga dapat menyiapkan jalur file konfigurasi
boto yang akan dimuat dengan menetapkan variabel lingkungan BOTO_PATH
menggunakan jalur :
yang dibatasi (atau ;
untuk Windows). Misalnya, menetapkan
variabel lingkungan BOTO_PATH
ke:
/etc/projects/my_group_project.boto.cfg:/home/mylogin/.boto
menyebabkan gsutil memuat setiap file konfigurasi yang ditemukan dalam jalur secara berurutan. Hal ini berguna jika Anda ingin menyiapkan beberapa status konfigurasi bersama di antara banyak pengguna. Lihat contoh penggunaan file konfigurasi untuk skenario berbagi data dan kolaborasi.
Struktur
File konfigurasi berisi sejumlah bagian: [Credentials]
, [Boto]
,
[GSUtil]
, dan [OAuth2]
. Berikut adalah setelan konfigurasi yang saat ini ditentukan
dan dikelompokkan berdasarkan bagian. Penggunaannya didokumentasikan dalam
file konfigurasi boto itu sendiri, dalam komentar sebelum setiap setelan:
[Credentials] aws_access_key_id aws_secret_access_key gs_access_key_id gs_host gs_host_header gs_json_host gs_json_host_header gs_json_port gs_oauth2_refresh_token gs_port gs_secret_access_key gs_service_client_id gs_service_key_file gs_service_key_file_password s3_host s3_host_header s3_port [Boto] proxy proxy_type proxy_port proxy_user proxy_pass proxy_rdns http_socket_timeout ca_certificates_file https_validate_certificates debug max_retry_delay num_retries [GoogleCompute] service_account [GSUtil] check_hashes content_language decryption_key1 ... 100 default_api_version disable_analytics_prompt encryption_key json_api_version max_upload_compression_buffer_size parallel_composite_upload_component_size parallel_composite_upload_threshold sliced_object_download_component_size sliced_object_download_max_components sliced_object_download_threshold parallel_process_count parallel_thread_count gzip_compression_level prefer_api resumable_threshold resumable_tracker_dir (deprecated in 4.6, use state_dir) rsync_buffer_lines software_update_check_period state_dir tab_completion_time_logs tab_completion_timeout task_estimation_threshold test_cmd_regional_bucket_location test_notification_url use_magicfile test_hmac_service_account test_hmac_alt_service_account test_hmac_list_service_account [OAuth2] client_id client_secret oauth2_refresh_retries provider_authorization_uri provider_label provider_token_uri token_cache
Saat Anda mengedit file, berhati-hatilah agar tidak salah mengedit nama setelan,
seperti gs_access_key_id
, dan jangan menghapus pemisah bagian, seperti
[Credentials]
.
Mengupdate ke file konfigurasi terbaru
Fitur yang dapat dikontrol konfigurasi baru akan ditambahkan ke file konfigurasi boto
dari waktu ke waktu, tetapi sebagian besar pengguna gsutil membuat file konfigurasi satu kali, kemudian
menyimpannya dalam waktu yang lama. Artinya, fitur baru tidak akan terlihat saat Anda
mengupdate ke versi gsutil yang lebih baru. Jika ingin mendapatkan file konfigurasi terbaru, yang menyertakan setelan dan dokumentasi terbaru, ganti nama file Anda saat ini (misalnya, menjadi .boto_old
), jalankan gcloud init
(atau jika menggunakan penyangga lama
versi gustil saja, gsutil config
dengan tanda -a
atau -e
), lalu
transfer setelan konfigurasi apa pun yang ingin Anda simpan dari file lama ke file yang baru dibuat. Namun, perhatikan bahwa jika Anda menggunakan kredensial OAuth2 dan
kembali ke proses konfigurasi OAuth2, tindakan tersebut akan membuat kredensial OAuth2 Anda
yang sebelumnya menjadi tidak valid.
Contoh penggunaan file konfigurasi
Dalam contoh ini, sebuah perusahaan kecil ingin menggunakan Cloud Storage sebagai sistem penyimpanan untuk karyawannya. Sebagai admin IT, Anda membuat project di Google Cloud Console dan membuat bucket untuk setiap karyawan. Untuk memudahkan karyawan menggunakan Cloud Storage, Anda perlu membuat dan menyimpan setelan di seluruh perusahaan, seperti konfigurasi proxy dan nilai minimum upload komposit paralel, dalam file pusat yang dapat dituju karyawan di jalur konfigurasi BOTO mereka. Dengan cara ini, setiap karyawan tidak perlu lagi menetapkan bagian bersama dari konfigurasi secara manual, sehingga Anda, sebagai administrator, dapat dengan mudah mengubah konfigurasi bersama ini jika diperlukan.
Untuk melakukannya, lakukan langkah-langkah berikut:
Buat file konfigurasi boto pusat yang dapat dibaca oleh semua karyawan.
Hal ini dapat dilakukan menggunakan
gcloud init
.File konfigurasi boto mungkin berisi, misalnya:
[Boto] proxy = yourproxy.com proxy_port = 8080 proxy_type = http [GSUtil] parallel_composite_upload_threshold = 150M
Instruksikan karyawan untuk menginstal Google Cloud CLI.
Selama penginstalan, karyawan harus menentukan project ID yang digunakan perusahaan. Mereka juga harus membuat kredensial autentikasi individual karena Anda tidak boleh membagikan kredensial autentikasi secara terpusat.
Instruksikan karyawan untuk menambahkan variabel lingkungan BOTO_PATH.
Variabel lingkungan BOTO_PATH mencantumkan jalur file konfigurasi yang berada di tengah, yang diikuti dengan file konfigurasi lokal karyawan. Misalnya, jika file konfigurasi pusat terletak di direktori
centralhub/
, maka untuk penggunajane
, variabel lingkungan BOTO_PATH-nya adalah:BOTO_PATH =/centralhub/boto.cfg:home/jane/.boto
Saat karyawan menjalankan gsutil, mereka akan otomatis menggunakan konfigurasi yang ditetapkan di file boto pusat. Jika perlu, administrator dapat mengubah setelan proxy, nilai minimum upload gabungan paralel, dan setelan lainnya di file konfigurasi pusat, serta menerapkan perubahan tersebut untuk semua karyawan yang menggunakan file konfigurasi pusat.