Halaman ini menampilkan cara membuat dan memulai tugas transfer dari Amazon S3 ke Cloud Storage.
Konfigurasikan izin
Sebelum membuat transfer, Anda harus mengonfigurasi izin di Amazon S3 direktori VM dengan bucket. Lihat Mengonfigurasi akses ke sumber: Amazon S3 untuk mengetahui detailnya.
Anda juga harus mengonfigurasi izin untuk Entitas Google Cloud:
Akun pengguna yang digunakan untuk membuat transfer. Ini adalah yang login ke Konsol Google Cloud, atau akun yang yang ditentukan saat mengautentikasi ke CLI `gcloud`. Akun pengguna dapat akun pengguna biasa, atau akun layanan yang dikelola pengguna. | |
Akun layanan yang dikelola Google, juga dikenal sebagai layanan
, yang digunakan oleh Storage Transfer Service. Akun ini umumnya
diidentifikasi oleh
alamat emailnya, yang menggunakan format
project-PROJECT_NUMBER@storage-transfer-service. .
|
Lihat Izin transfer tanpa agen untuk petunjuk.
Opsi traffic keluar
Storage Transfer Service menyediakan beberapa opsi untuk cara mentransfer data S3 Anda ke Cloud Storage.
Opsi traffic keluar | Deskripsi |
---|---|
Tanpa agen default | Opsi ini menggunakan transfer terkelola dan tanpa agen
dari S3. Anda akan dikenai biaya traffic keluar oleh Amazon.
Ikuti petunjuk di halaman ini untuk menggunakannya sebelumnya. |
Distribusi CloudFront | Menggunakan distribusi Amazon CloudFront sebagai traffic keluar
. Transfer data melalui CloudFront dapat
mendapatkan manfaat dari biaya traffic keluar AWS yang lebih rendah dibandingkan
yang mentransfer langsung dari S3. Lihat
Harga CloudFront dan biaya traffic keluar S3
untuk mengetahui detailnya.
Ikuti petunjuk di Transfer dari S3 melalui CloudFront untuk menyiapkan distribusi Anda, lalu lakukan transfer. |
Jaringan pribadi terkelola | Transfer data Anda melalui server yang dikelola Google
jaringan. Anda tidak membayar traffic keluar S3
tagihan; sebagai gantinya, Anda membayar tarif per GiB untuk
Google Cloud. Lihat Harga
untuk detailnya. Anda mungkin masih ditagih
biaya operasi dari AWS (misalnya, LIST atau GET
panggilan telepon); lihat harganya untuk detailnya.
Semua project transfer melalui berbagi jaringan pribadi terkelola {i>bandwidth <i}yang sama. Pada saat penggunaan yang tinggi, transfer Anda mungkin lambat. Transfer dengan file besar lebih terpengaruh daripada yang dengan file berukuran kecil. Ikuti petunjuk di halaman ini untuk menggunakan opsi ini. Menentukan opsi Managed private network di Konsol Google Cloud atau kolom managedPrivateNetwork di REST API. gcloud CLI
dan library klien tidak mendukung jaringan pribadi terkelola
transfer data. Lihat
wilayah yang didukung. |
Berbasis agen | Valid untuk semua penyimpanan yang kompatibel dengan S3, termasuk Amazon S3. Menurut
menginstal perangkat lunak agen
pada komputer yang memiliki akses
ke bucket S3, Anda dapat mengontrol
jalur dan {i>bandwidth<i}. Opsi ini memerlukan agen
dan kumpulan agen.
Ikuti petunjuknya di Transfer dari sumber yang kompatibel dengan S3 untuk digunakan menggunakan opsi ini. |
Region yang didukung
Storage Transfer Service mendukung region Amazon S3 berikut:
af-south-1 ap-east-1 ap-northeast-1 ap-northeast-2 ap-northeast-3 ap-south-1 ap-south-2 ap-southeast-1 ap-southeast-2 ap-southeast-3 |
ap-southeast-4 ca-central-1 ca-west-1 eu-central-1 eu-central-2 eu-north-1 eu-south-1 eu-south-2 eu-west-1 eu-west-2
|
eu-west-3 il-central-1 me-central-1 me-south-1 sa-east-1 us-east-1 us-east-2 us-west-1 us-west-2
|
Transfer yang menggunakan jaringan pribadi terkelola mendukung region AWS berikut:
us-east-1 us-east-2 us-west-1 us-west-2 ca-west-1 ca-central-1 |
Opsi transfer
Fitur Storage Transfer Service berikut tersedia untuk transfer dari S3 ke Cloud Storage
- Mentransfer file tertentu menggunakan manifes
- Anda dapat meneruskan daftar file agar Storage Transfer Service dapat ditindaklanjuti. Lihat Mentransfer file tertentu atau menggunakan manifes untuk mengetahui detailnya.
- Menentukan kelas penyimpanan
- Anda dapat menentukan
Kelas penyimpanan Cloud Storage yang akan digunakan untuk data Anda di tujuan
direktori VM dengan bucket. Lihat
StorageClass
opsi untuk detail REST, atau gunakan--custom-storage-class
dengan Google Cloud CLI.Perhatikan bahwa setelan kelas penyimpanan apa pun akan diabaikan jika tujuan bucket mengaktifkan Autoclass. Jika Autoclass diaktifkan, objek yang ditransfer ke dalam bucket pada awalnya akan ke Standard Storage.
- Penyimpanan metadata
-
Saat mentransfer file dari S3, Storage Transfer Service dapat secara opsional mempertahankan atribut tertentu sebagai metadata khusus.
Lihat bagian Amazon S3 ke Cloud Storage pada Penyimpanan metadata untuk detail tentang metadata yang dapat dipertahankan, dan cara mengonfigurasi transfer Anda.
- Transfer berdasarkan peristiwa
- Storage Transfer Service dapat memproses Notifikasi Peristiwa Amazon S3 yang dikirimkan ke Amazon SQS untuk otomatis mentransfer data yang telah ditambahkan atau diperbarui di lokasi sumber. Lihat Berbasis peristiwa transfer untuk mendapatkan informasi.
- Logging dan pemantauan
- Transfer dari S3 dapat dilihat di Cloud Logging dan dan konfigurasi di Cloud Monitoring. Lihat Cloud Logging untuk Storage Transfer Service dan Memantau transfer lowongan untuk mengetahui detailnya. Anda juga dapat mengonfigurasi Pub/Sub notifikasi.
Buat transfer
Storage Transfer Service menyediakan beberapa antarmuka untuk membuat transfer data.
Jangan sertakan informasi sensitif seperti informasi identitas pribadi (PII) atau data keamanan dalam nama tugas transfer Anda. Nama resource mungkin disebarkan ke nama resource Google Cloud lainnya dan dapat diekspos ke sistem internal Google di luar project Anda.
Konsol Google Cloud
Buka halaman Storage Transfer Service di Konsol Google Cloud.
Klik Buat tugas transfer. Halaman Buat tugas transfer ditampilkan.
Di bagian Source type, pilih Amazon S3.
Sebagai Jenis tujuan, pilih Google Cloud Storage.
Pilih Mode penjadwalan. Transfer batch yang dijalankan pada satu kali atau terjadwal. Transfer berbasis peristiwa secara terus-menerus memantau sumber dan mentransfer data ketika ditambahkan atau diubah.
Untuk mengonfigurasi transfer berbasis peristiwa, ikuti petunjuk di Transfer berbasis peristiwa.
Klik Next step.
Di kolom Bucket or folder name, masukkan bucket sumber nama.
Nama bucket adalah nama seperti yang terlihat dalam Konsol Pengelolaan AWS.
Jika Anda menggunakan distribusi CloudFront untuk mentransfer dari S3, masukkan nama domain distribusi di domain CloudFront kolom tersebut. Contoh,
https://dy1h2n3l4ob56.cloudfront.net
. Lihat Transfer dari S3 melalui CloudFront untuk mengonfigurasi distribusi CloudFront.Agar dapat menggunakan Jaringan pribadi terkelola untuk transfer ini, pilih . Lihat Opsi traffic keluar untuk mengetahui detailnya.
Pilih metode autentikasi Amazon Web Services (AWS) Anda. Lihat Konfigurasikan akses ke sumber: Amazon S3 untuk mengetahui detailnya.
Kunci akses: Masukkan kunci akses di ID kunci akses dan rahasia yang terkait dengan kunci akses Anda di kolom Kunci akses rahasia.
Peran IAM AWS untuk penggabungan identitas: Masukkan ARN Anda di Kolom AWS IAM role ARN, dengan sintaksis berikut:
arn:aws:iam::ACCOUNT:role/ROLE-NAME-WITH-PATH
Dengan keterangan:
ACCOUNT
: ID akun AWS tanpa tanda hubung.ROLE-NAME-WITH-PATH
: Peran AWS termasuk jalur.
Untuk informasi selengkapnya tentang ARN, lihat IAM ARN.
Secret resource: Pilih opsi ini untuk menggunakan kredensial Amazon disimpan di Secret Manager. Pilih rahasia dari daftar, atau masukkan secara manual dalam format
projects/PROJECT_NUMBER/secrets/SECRET_NAME
.
Jika ini adalah transfer berbasis peristiwa, masukkan Amazon SQS ARN queue, yang menggunakan format berikut:
arn:aws:sqs:us-east-1:1234567890:event-queue
- Secara opsional, pilih untuk
memfilter objek berdasarkan awalan
atau tanggal terakhir diubah. Jika Anda menentukan folder sebagai lokasi sumber, filter awalan
relatif terhadap folder tersebut. Misalnya, jika sumber Anda adalah
my-test-bucket/path/
, filter sertakanfile
mencakup semua file yang dimulai denganmy-test-bucket/path/file
. Klik Next step.
Di kolom Bucket or folder, masukkan bucket tujuan dan (opsional) nama folder, atau klik Jelajahi untuk memilih bucket dari daftar bucket yang ada di project saat ini. Untuk membuat bucket baru, klik Buat bucket baru.
Klik Next step.
Pilih setelan untuk tugas transfer.
Di kolom Description, masukkan deskripsi transfer data. Sebagai praktik terbaik, masukkan deskripsi yang bermakna dan unik sehingga Anda dapat membedakan tugas-tugasnya.
Di bagian Metadata options, pilih untuk menggunakan opsi default, atau klik Lihat dan pilih opsi guna menentukan nilai untuk semua metadata yang didukung. Lihat Preservasi metadata untuk mengetahui detailnya.
Di bagian Kapan harus menimpa, pilih salah satu dari opsi berikut:
Jika berbeda: Timpa file tujuan jika file sumbernya dengan nama yang sama memiliki nilai Etag atau {i>checksum<i} yang berbeda.
Always: Selalu menimpa file tujuan saat file sumber memiliki nama yang sama, meskipun identik.
Di bagian Kapan harus dihapus, pilih salah satu opsi berikut:
Tidak pernah: Jangan pernah menghapus file dari sumber atau tujuan.
Hapus file dari sumber setelah ditransfer: Menghapus file dari sumber setelah ditransfer ke tujuan.
Hapus file dari tujuan jika file juga tidak ada di sumber: Jika file di bucket Cloud Storage tujuan juga tidak ada di sumbernya, lalu menghapus file dari Cloud Storage direktori VM dengan bucket.
Opsi ini memastikan bahwa bucket Cloud Storage tujuan sama persis dengan sumber.
Di bagian Notification options, pilih topik Pub/Sub Anda dan peristiwa yang akan diberi tahu. Lihat Notifikasi Pub/Sub untuk secara lebih mendetail.
Klik Next step.
Pilih opsi penjadwalan:
Dari menu drop-down Run once, pilih salah satu opsi berikut:
Jalankan sekali: Menjalankan satu transfer, dimulai pada waktu yang Anda pilih.
Berjalan setiap hari: Menjalankan transfer setiap hari, dimulai pada waktu yang yang dipilih.
Anda dapat memasukkan Tanggal akhir opsional, atau keluar dari Tanggal akhir kosong untuk menjalankan transfer secara terus-menerus.
Jalankan setiap minggu: Menjalankan transfer setiap minggu, dimulai pada waktu tertentu yang Anda pilih.
Jalankan dengan frekuensi khusus: Menjalankan transfer dengan frekuensi yang yang dipilih. Anda dapat memilih untuk mengulangi transfer secara rutin interval Hours, Days, atau Weeks.
Anda dapat memasukkan Tanggal akhir opsional, atau keluar dari Tanggal akhir kosong untuk menjalankan transfer secara terus-menerus.
Dari daftar drop-down Mulai sekarang, pilih salah satu dari berikut ini:
Dimulai sekarang: Memulai transfer setelah Anda mengklik Buat.
Memulai: Memulai transfer pada tanggal dan waktu yang Anda pilih. Klik Kalender untuk menampilkan kalender guna memilih tanggal mulai.
Untuk membuat tugas transfer, klik Buat.
gcloud CLI
Untuk membuat tugas transfer baru, gunakan gcloud transfer jobs create
perintah. Membuat tugas baru akan memulai transfer yang ditentukan, kecuali jika
jadwal atau --do-not-run
ditentukan.
gcloud CLI tidak mendukung transfer melalui CloudFront atau Managed private network.
gcloud transfer jobs create \
s3://S3_BUCKET_NAME gs://STORAGE_BUCKET_NAME \
--source-creds-file="relative_path/to/creds.json"
Dengan keterangan:
S3_BUCKET_NAME adalah sumber data untuk transfer ini. Anda dapat secara opsional menyertakan jalur:
s3://S3_BUCKET_NAME/S3_FOLDER_PATH
STORAGE_BUCKET_NAME adalah bucket Cloud Storage yang akan ditransfer ke dalamnya. Untuk mentransfer ke direktori tertentu, tentukan
gs://STORAGE_BUCKET_NAME/STORAGE_FOLDER_PATH/
, termasuk garis miring.--source-creds-file
menentukan jalur relatif ke file lokal di komputer yang menyertakan kredensial AWS untuk sumber transfer. Isi harus dalam format JSON berikut:{ "accessKeyId": string, "secretAccessKey": string }
Opsi tambahan mencakup:
--do-not-run
mencegah Storage Transfer Service menjalankan tugas setelah pengiriman perintah. Untuk menjalankan tugas, update ke tambahkan jadwal, atau gunakanjobs run
untuk memulainya secara manual.--manifest-file
menentukan jalur ke file CSV di Cloud Storage yang berisi daftar file yang akan ditransfer dari sumber Anda. Untuk file manifes pemformatan, lihat Mentransfer file atau objek tertentu menggunakan manifes.Informasi pekerjaan: Anda dapat menetapkan
--name
dan--description
.Jadwal: Tentukan
--schedule-starts
,--schedule-repeats-every
, dan--schedule-repeats-until
, atau--do-not-run
.Kondisi objek: Gunakan kondisi untuk menentukan objek mana yang ditransfer. Ini termasuk
--include-prefixes
dan--exclude-prefixes
, dan kondisi berbasis waktu dalam--include-modified-[before | after]-[absolute | relative]
. Jika Anda menentukan folder dengan sumber Anda, filter awalan akan relatif terhadap folder tersebut. folder tersebut. Lihat Memfilter objek sumber menurut awalan untuk informasi selengkapnya tidak akurat atau tidak sesuai.Opsi transfer: Tentukan apakah akan menimpa tujuan file (
--overwrite-when=different
ataualways
) dan apakah akan menghapus file tertentu selama atau setelah transfer (--delete-from=destination-if-unique
atausource-after-transfer
); sebutkan nilai metadata yang akan dipertahankan (--preserve-metadata
); dan secara opsional menetapkan kelas penyimpanan pada objek yang ditransfer (--custom-storage-class
).Notifikasi: Konfigurasi Notifikasi Pub/Sub untuk transfer dengan
--notification-pubsub-topic
,--notification-event-types
, dan--notification-payload-format
.Cloud Logging: Aktifkan Cloud Logging dengan
--log-actions
dan--log-action-states
. Lihat Cloud Logging untuk Storage Transfer Service untuk mengetahui detailnya.
Untuk melihat semua opsi, jalankan gcloud transfer jobs create --help
atau lihat
Dokumentasi referensi gcloud
.
REST
Contoh berikut menunjukkan cara menggunakan Storage Transfer Service melalui REST Compute Engine API.
Saat Anda mengonfigurasi atau mengedit tugas transfer menggunakan Storage Transfer Service API, waktu harus dalam UTC. Untuk mengetahui informasi selengkapnya tentang yang menentukan jadwal tugas transfer, Jadwal.
Saat membuat tugas transfer, jangan sertakan awalan s3://
untuk
bucketName
di nama sumber bucket Amazon S3.
Transfer tanpa agen
Contoh berikut membuat tugas transfer menggunakan metode tanpa agen standar konfigurasi Anda. Lihat transferJobs.create referensi untuk detail selengkapnya.
POST https://storagetransfer.googleapis.com/v1/transferJobs { "description": "DESCRIPTION", "status": "ENABLED", "projectId": "PROJECT_ID", "transferSpec": { "awsS3DataSource": { "bucketName": "AWS_SOURCE_NAME", "awsAccessKey": { "accessKeyId": "AWS_ACCESS_KEY_ID", "secretAccessKey": "AWS_SECRET_ACCESS_KEY" } }, "gcsDataSink": { "bucketName": "GCS_SINK_NAME" } } }
Lihat Mengonfigurasi akses ke sumber: Amazon S3 untuk opsi otentikasi lainnya.
Distribusi CloudFront
Jika Anda mentransfer dari S3 melalui distribusi CloudFront, tentukan
nama domain distribusi sebagai nilai
Kolom transferSpec.awsS3DataSource.cloudfrontDomain
:
POST https://storagetransfer.googleapis.com/v1/transferJobs { "description": "DESCRIPTION", "status": "ENABLED", "projectId": "PROJECT_ID", "transferSpec": { "awsS3DataSource": { "bucketName": "AWS_SOURCE_NAME", "cloudfrontDomain": "https://dy1h2n3l4ob56.cloudfront.net", "awsAccessKey": { "accessKeyId": "AWS_ACCESS_KEY_ID", "secretAccessKey": "AWS_SECRET_ACCESS_KEY" } }, "gcsDataSink": { "bucketName": "GCS_SINK_NAME" } } }
Jaringan pribadi terkelola
Untuk mentransfer dari S3 menggunakan jaringan pribadi yang dikelola Google, tentukan
Kolom transferSpec.awsS3DataSource.managedPrivateNetwork
:
POST https://storagetransfer.googleapis.com/v1/transferJobs { "description": "DESCRIPTION", "status": "ENABLED", "projectId": "PROJECT_ID", "transferSpec": { "awsS3DataSource": { "bucketName": "AWS_SOURCE_NAME", "managedPrivateNetwork": TRUE, "awsAccessKey": { "accessKeyId": "AWS_ACCESS_KEY_ID", "secretAccessKey": "AWS_SECRET_ACCESS_KEY" } }, "gcsDataSink": { "bucketName": "GCS_SINK_NAME" } } }
Library klien
Contoh berikut menunjukkan cara menggunakan Storage Transfer Service secara terprogram dengan Go, Java, Node.js, dan Python.
Jika Anda mengonfigurasi atau mengedit tugas transfer secara terprogram, waktunya harus dalam UTC. Untuk mengetahui informasi selengkapnya tentang yang menentukan jadwal tugas transfer, Jadwal.
Untuk informasi selengkapnya tentang library klien Storage Transfer Service, lihat Mulai menggunakan library klien Storage Transfer Service.
Transfer dari Amazon S3 ke Cloud Storage
Dalam contoh ini, Anda akan mempelajari cara memindahkan file dari Amazon S3 ke bucket Cloud Storage.
Saat membuat tugas transfer, jangan sertakan awalan s3://
untuk
bucketName
di nama sumber bucket Amazon S3.
Library klien Storage Transfer Service tidak mendukung transfer melalui CloudFront atau Managed private network.
Go
Java
Mencari sampel lama? Lihat Panduan Migrasi Storage Transfer Service.
Node.js
Python
Mencari sampel lama? Lihat Panduan Migrasi Storage Transfer Service.