Opsi lanjutan

Dokumen ini menjelaskan opsi penyiapan lanjutan untuk transfer sistem file, termasuk:

Menyalin data di volume CIFS atau SMB

Agen transfer tidak didukung langsung di server Windows. Namun, Anda dapat memindahkan data yang disimpan di sistem file yang mematuhi POSIX dengan memasangnya di server Linux atau virtual machine (VM), lalu menjalankan agen dari server Linux atau VM untuk menyalin data ke Cloud Storage.

Untuk memindahkan data dari volume CIFS atau SMB:

  1. Sediakan server atau VM Linux.

    Untuk sistem operasi yang didukung, lihat Prasyarat.

  2. Jalankan perintah berikut di server Linux atau VM yang Anda sediakan untuk memasang volume:

    sudo mount -t cifs -o
    username=WINDOWS-SHARE-USER,password=WINDOWS-SHARE-PASSWORD //IP-ADDRESS/SHARE-NAME /mnt
    

    Ganti kode berikut:

    • IP-ADDRESS: alamat IP server Microsoft Windows tempat volume CIFS atau SMB berada.
    • SHARE-NAME: nama share yang Anda pasang.
    • WINDOWS-SHARE-USER: pengguna yang diberi otorisasi untuk mengakses volume CIFS atau SMB.
    • WINDOWS-SHARE-PASSWORD: sandi untuk pengguna resmi volume CIFS atau SMB.
  3. Pastikan volume CIFS terpasang dengan menjalankan perintah berikut:

    findmnt -l
    
  4. Pastikan pengguna yang akan menjalankan agen dapat mencantumkan dan menyalin file di volume yang terpasang dengan menjalankan perintah berikut:

    sudo -u USERNAME cp /mnt/FILE1 /mnt/FILE2
    

    Ganti kode berikut:

    • USERNAME: pengguna yang akan menjalankan agen.
    • FILE1: file yang akan disalin.
    • FILE2: nama file yang akan disalin.
  5. Instal agen transfer.

Menggunakan kredensial akun layanan

Anda dapat menggunakan kredensial akun layanan untuk menjalankan agen. Menggunakan kredensial akun layanan memberi Anda cara untuk mengautentikasi agen transfer tanpa mengandalkan satu akun pengguna. Untuk informasi selengkapnya tentang jenis akun, lihat Akun utama.

  1. Membuat kunci akun layanan. Untuk informasi selengkapnya, lihat Membuat dan mengelola kunci akun layanan.

  2. Teruskan lokasi kunci layanan ke perintah pembuatan agen:

    gcloud transfer agents install --pool=POOL_NAME --count=NUM_AGENTS \
      --mount-directories=MOUNT_DIRECTORIES \
      --creds-file=RELATIVE_PATH_TO/KEY_FILE.JSON
    

    File kredensial otomatis dipasang oleh gcloud transfer dan tidak perlu ditentukan dengan flag --mount-directories.

Menyesuaikan memori maksimum agen

Agen transfer secara default menggunakan memori sistem maksimum 8 GiB. Anda dapat menyesuaikan memori maksimum yang digunakan oleh agen agar sesuai dengan lingkungan Anda dengan meneruskan --max-physical-mem=MAXIMUM-MEMORY, mengganti MAXIMUM-MEMORY dengan nilai yang sesuai dengan lingkungan Anda.

Berikut adalah persyaratan memori untuk agen Transfer Service for on-premises data:
  • Memori minimum: 1 GiB
  • Memori minimum untuk mendukung upload berperforma tinggi: 6 GiB

Sebaiknya gunakan ukuran default 8 GiB.

Tabel berikut menjelaskan contoh format yang dapat diterima untuk MAXIMUM-MEMORY:

Nilai max-physical-mem Setelan memori maksimum
6g 6 gigabyte
6gb 6 gigabyte
6GiB 6 gibibyte

Membatasi akses direktori agen

Pengguna yang dapat membuat tugas transfer dapat mengambil data dari, dan mendownload data ke, direktori sistem file apa pun yang dapat diakses oleh agen.

Jika agen dijalankan sebagai root dan diberi akses ke seluruh sistem file, pelaku berbahaya mungkin dapat mengambil alih host. Sebaiknya batasi akses agen hanya ke direktori yang diperlukan.

Untuk membatasi akses agen ke direktori tertentu:

gcloud

Untuk menentukan direktori yang dapat diakses agen di sistem file, gunakan tanda --mount-directories dengan gcloud transfer agents install:

gcloud transfer agents install --pool=POOL_NAME --count=NUM_AGENTS \
  --mount-directories=MOUNT_DIRECTORIES

Tentukan beberapa direktori dengan memisahkan setiap direktori dengan koma dan tanpa spasi:

gcloud transfer agents install --pool=POOL_NAME --count=NUM_AGENTS \
  --mount-directories=MOUNT_DIRECTORY_1,MOUNT_DIRECTORY_2

Jika Anda menentukan file kredensial menggunakan flag --creds-file, gcloud transfer akan otomatis memasang file kredensial. File lain di direktori yang sama dengan file kredensial tidak di-mount.

docker run

Untuk menentukan direktori yang dapat diakses agen saat melakukan transfer, teruskan -v HOST_DIRECTORY:CONTAINER_DIRECTORY ke agen, dengan:

  • HOST_DIRECTORY adalah direktori di mesin host yang ingin Anda salin.
  • CONTAINER_DIRECTORY adalah direktori yang dipetakan dalam penampung agen.

HOST_DIRECTORY dan CONTAINER_DIRECTORY harus sama agar agen dapat menemukan file yang akan disalin.

Saat menggunakan opsi ini:

  • Jangan tentukan --enable-mount-directory.
  • Jangan awali jalur file Anda dengan /transfer_root.

Opsi --enable-mount-directory memasang seluruh sistem file di bawah direktori /transfer_root pada penampung. Jika --enable-mount-directory ditentukan, pembatasan direktori tidak akan diterapkan.

Anda dapat menggunakan lebih dari satu flag -v untuk menentukan direktori tambahan yang akan disalin. Contoh:

sudo docker run --ulimit memlock=64000000 -d -rm --volumes-from gcloud-config \
-v /usr/local/research:/usr/local/research \
-v /usr/local/billing:/usr/local/billing \
-v /tmp:/tmp \
gcr.io/cloud-ingest/tsop-agent:latest \
--project-id=PROJECT_ID \
--hostname=$(hostname) \
--agent-id-prefix=ID_PREFIX

Jika Anda menggunakan akun layanan, pastikan Anda memasang file kredensial ke dalam penampung dan meneruskan --creds-file=CREDENTIAL_FILE. Contoh:

sudo docker run --ulimit memlock=64000000 -d -rm \
-v HOST_DIRECTORY:CONTAINER_DIRECTORY \
-v /tmp:/tmp \
-v FULL_CREDENTIAL_FILE_PATH:FULL_CREDENTIAL_FILE_PATH \
gcr.io/cloud-ingest/tsop-agent:latest \
--project-id=PROJECT_ID \
--creds-file=CREDENTIAL_FILE \
--hostname=$(hostname) \
--agent-id-prefix=ID_PREFIX

Ganti kode berikut:

  • HOST_DIRECTORY: direktori di mesin host yang ingin Anda salin.
  • CONTAINER_DIRECTORY: direktori yang dipetakan dalam penampung agen.
  • FULL_CREDENTIAL_FILE_PATH: jalur yang sepenuhnya memenuhi syarat ke file kredensial.
  • PROJECT_ID: project ID yang menghosting resource transfer dibuat dan ditagih.
  • CREDENTIAL_FILE: file kredensial akun layanan dengan format JSON. Untuk informasi selengkapnya tentang cara membuat file kredensial akun layanan, lihat membuat dan mengelola kunci akun layanan.
  • ID_PREFIX: awalan yang ditambahkan di awal ID agen untuk membantu mengidentifikasi agen atau mesinnya di konsol Google Cloud . Jika awalan digunakan, ID agen akan diformat sebagai prefix + hostname + Docker container ID.

Mengkoordinasikan agen dengan Kubernetes

Docker adalah runtime container yang didukung untuk Kubernetes. Anda dapat menggunakan Kubernetes untuk mengatur mulai dan berhentinya banyak agen secara bersamaan. Dari perspektif Kubernetes, penampung agen dianggap sebagai aplikasi stateless, sehingga Anda dapat mengikuti petunjuk Kubernetes untuk men-deploy aplikasi stateless.

Menggunakan endpoint API pribadi di Cloud Interconnect

Untuk menggunakan endpoint API pribadi di Cloud Interconnect:

  1. Login ke host lokal yang ingin Anda gunakan untuk menjalankan agen.

  2. Konfigurasikan Akses Google Pribadi. Untuk informasi selengkapnya, lihat Mengonfigurasi Akses Google Pribadi untuk host lokal.

  3. Pastikan Anda dapat terhubung ke Cloud Storage API:

    1. Untuk Cloud Storage API, jalankan perintah berikut dari mesin yang sama dengan agen transfer untuk menguji pemindahan file ke bucket Cloud Storage Anda: gcloud storage cp test.txt gs://MY-BUCKET dengan MY-BUCKET adalah nama bucket Cloud Storage Anda. Jika transfer berhasil, pengujian akan berhasil.

Menggunakan proxy penerusan

Agen transfer mendukung penggunaan proxy penerusan di jaringan Anda dengan meneruskan variabel lingkungan HTTPS_PROXY.

Contoh:

sudo docker run -d --ulimit memlock=64000000 --rm \
--volumes-from gcloud-config \
-v /usr/local/research:/usr/local/research \
--env HTTPS_PROXY=PROXY\
gcr.io/cloud-ingest/tsop-agent:latest \
--enable-mount-directory \
--project-id=PROJECT_ID \
--hostname=$(hostname) \
--agent-id-prefix=ID_PREFIX

Ganti kode berikut:

  • PROXY: URL dan port HTTP server proxy. Pastikan Anda menentukan URL HTTP, bukan URL HTTPS, untuk menghindari permintaan penggabungan ganda dalam enkripsi TLS. Permintaan yang digabungkan dua kali mencegah server proxy mengirim permintaan keluar yang valid.
  • PROJECT_ID: project ID yang menghosting resource transfer dibuat dan ditagih.
  • ID_PREFIX: awalan yang ditambahkan ke ID agen untuk membantu mengidentifikasi agen atau mesinnya di konsol Google Cloud . Jika awalan digunakan, ID agen akan diformat sebagai prefix + hostname + Docker container ID.

Menyalin ke bucket dengan kebijakan retensi

Untuk mentransfer ke bucket dengan kebijakan retensi, sebaiknya lakukan proses berikut:

  1. Buat bucket Cloud Storage dalam region yang sama dengan bucket akhir. Pastikan bucket sementara ini tidak memiliki kebijakan retensi.

    Untuk mengetahui informasi selengkapnya tentang region, lihat Lokasi bucket.

  2. Gunakan Storage Transfer Service untuk mentransfer data ke bucket sementara yang Anda buat tanpa kebijakan retensi.

  3. Lakukan transfer bucket ke bucket untuk mentransfer data ke bucket dengan kebijakan retensi.

  4. Hapus bucket Cloud Storage yang Anda buat untuk menyimpan data Anda untuk sementara.

Opsi untuk mendapatkan bandwidth jaringan yang lebih besar

Ada beberapa opsi untuk mendapatkan lebih banyak bandwidth jaringan untuk transfer sistem file. Meningkatkan bandwidth jaringan akan membantu mengurangi waktu transfer, terutama untuk set data besar.

  • Peering dengan Google—Peering adalah tempat Anda terhubung langsung dengan Google untuk mendukung pertukaran traffic. Kami memiliki lokasi peering langsung di seluruh dunia. Untuk mempelajari manfaat dan kebijakan kami, lihat Peering.

  • Cloud Interconnect—Cloud Interconnect mirip dengan peering, tetapi Anda akan menggunakan interconnect untuk terhubung ke Google. Ada dua jenis interconnect yang dapat dipilih:

    • Dedicated Interconnect— Anda terhubung langsung dari pusat data Anda ke pusat data Google melalui koneksi khusus pribadi. Untuk mengetahui informasi selengkapnya, lihat ringkasan Dedicated Interconnect.

    • Partner Interconnect—Anda bekerja sama dengan penyedia layanan untuk membuat koneksi ke pusat data Google melalui jaringan partner layanan. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Partner Interconnect.

  • Mendapatkan bandwidth dari ISP—Internet Service Provider (ISP) Anda mungkin dapat menawarkan lebih banyak bandwidth untuk kebutuhan Anda. Pertimbangkan untuk menghubungi mereka untuk menanyakan opsi yang tersedia.