1. Ringkasan
PowerShell adalah shell command line dan bahasa skrip terkait yang dibuat di .NET Framework. Ini adalah {i>tool<i} otomatisasi dan {i>konfigurasi<i} tugas {i>default<i} yang digunakan di dunia Windows. {i>Cmdlet<i} PowerShell adalah perintah ringan yang dipanggil dalam PowerShell.
Cloud Tools for PowerShell adalah kumpulan cmdlet untuk mengakses dan memanipulasi resource Google Cloud seperti Google Compute Engine, Google Cloud Storage, Google Cloud SQL, dan Google Cloud DNS. Fitur-fitur lainnya akan segera hadir.
Ikuti lab ini untuk mempelajari cara berinteraksi dengan resource Google Cloud dari PowerShell.
Yang akan Anda pelajari
- Cara menginstal Cloud Tools for PowerShell.
- Cara melakukan autentikasi dengan Google Cloud SDK.
- Cara membuat dan mengelola Google Compute Engine dari PowerShell.
- Cara mencadangkan data ke Google Cloud Storage dari PowerShell.
Yang Anda butuhkan
Bagaimana Anda akan menggunakan tutorial ini?
Bagaimana penilaian Anda terhadap pengalaman dengan Google Cloud Platform?
2. Penyiapan dan Persyaratan
Untuk codelab ini, Anda memerlukan project Google Cloud untuk berinteraksi dengan PowerShell. Jika sudah memiliki project, Anda dapat menggunakannya atau membuat project baru menggunakan langkah-langkah berikut.
Penyiapan lingkungan mandiri
Jika belum memiliki Akun Google (Gmail atau G Suite), Anda harus membuatnya. Login ke konsol Google Cloud ( console.cloud.google.com) dan buat project baru:
Ingat project ID tersebut, yang merupakan nama unik di semua project Google Cloud Platform. Project ID tersebut selanjutnya akan dirujuk di codelab ini sebagai PROJECT_ID
.
Selanjutnya, Anda harus mengaktifkan penagihan di Konsol Google Cloud untuk menggunakan resource Google Cloud Platform, seperti Google Cloud Datastore dan Cloud Storage.
Pengguna baru Google Cloud Platform memenuhi syarat untuk mendapatkan uji coba gratis senilai$300. Menjalankan operasi dalam codelab ini seharusnya tidak menghabiskan biaya lebih dari beberapa dolar, tetapi bisa lebih mahal jika Anda memutuskan untuk menggunakan lebih banyak resource atau jika Anda membiarkannya berjalan (lihat bagian "pembersihan" di akhir dokumen ini).
3. Penginstalan
Penginstalan lingkungan mandiri
Cmdlet PowerShell sebagai bagian dari Cloud SDK for Windows. Jika Anda belum melakukannya, download dan instal Google Cloud SDK untuk Windows, seperti yang dijelaskan dalam panduan Memulai untuk Windows. Pastikan Anda telah memeriksa opsi PowerShell saat menginstal Cloud SDK.
4. Autentikasi
Cloud Tools for PowerShell menggunakan kredensial dan setelan yang disimpan di Cloud SDK. Jadi, untuk mulai menggunakan cmdlet, Anda harus login menggunakan Cloud SDK terlebih dahulu.
Autentikasi lingkungan mandiri
Mulai Google Cloud SDK Shell dan jalankan perintah berikut.
gcloud init
Terima opsi untuk login menggunakan akun pengguna Google Anda.
To continue, you must log in. Would you like to log in (Y/n)? Y
Di browser, login ke akun pengguna Google Anda saat diminta, lalu klik Izinkan untuk memberikan izin guna mengakses resource Google Cloud Platform.
Di command prompt, pilih project Cloud Platform dari daftar project yang izin Owner, Editor, atau Viewer-nya Anda miliki.
Pick a cloud project to use:
[1] [my-project-1]
[2] [my-project-2]
...
Please enter your numeric choice:
5. Menjalankan cmdlet Google Cloud dalam PowerShell
Setelah diautentikasi, Anda siap menggunakan cmdlet Google Cloud dalam PowerShell. Cari dan buka shell command line PowerShell.
Untuk memastikan cmdlet Google Cloud diinstal dengan benar, jalankan cmdlet Get-GceInstance
. Perintah ini akan menampilkan instance Compute Engine yang Anda miliki di project Anda.
6. Membuat dan Mengelola instance Google Compute Engine
Di bagian ini, Anda akan membuat dan mengelola Google Compute Engine dari dalam Google Cloud Tools for PowerShell.
Membuat konfigurasi instance
Sebelum membuat instance, Anda harus membuat konfigurasi instance terlebih dahulu. Setidaknya, langkah ini memerlukan nama, jenis mesin, dan boot disk image atau boot disk yang sudah ada. Gunakan Get-GceImage
untuk membuat disk image dan New-GceInstanceConfig
untuk membuat konfigurasi.
$disk = Get-GceImage "windows-cloud" -Family "windows-2012-r2"
$config = New-GceInstanceConfig "my-vm-1" `
-MachineType "n1-standard-4" `
-DiskImage $disk
Pada tahap ini, Anda memiliki konfigurasi yang dapat digunakan untuk membuat instance.
Membuat instance
Gunakan cmdlet Add-GceInstance
untuk membuat instance Compute Engine baru. Anda dapat menentukan project dan zona, tetapi jika dihilangkan, nilai parameter akan ditetapkan secara default ke project dan zona dalam konfigurasi Cloud SDK yang aktif saat ini. Jika menentukan project, pastikan untuk mengganti PROJECT_ID
dengan ID project Anda sendiri.
$config | Add-GceInstance -Project PROJECT_ID -Zone europe-west1-b
Mengelola instance
Anda dapat menggunakan cmdlet Get-GceInstance
untuk mengambil instance mesin virtual project. Karena nama instance mungkin tidak unik di setiap project atau zona, Anda dapat menentukan parameter Project atau Zona untuk mempersempit penelusuran. Secara default, cmdlet menggunakan nilai apa pun yang ada di konfigurasi Cloud SDK yang aktif.
$instance = Get-GceInstance "my-vm-1"
Anda dapat menyetel tag instance, disk, konfigurasi akses, dan metadata lainnya setelah membuat instance dengan cmdlet Set-GceInstance
. Tambahkan beberapa metadata, lalu hapus seperti berikut.
Set-GceInstance $instance -AddMetadata @{"newKey" = "newValue"}
Set-GceInstance $instance -RemoveMetadata "newKey"
Set-GceInstance $instance -RemoveTag "beta" -AddTag "alpha"
Sekarang, tambahkan tag yang nantinya akan Anda gunakan untuk menghapus instance.
Set-GceInstance $instance -AddTag "to-be-removed"
Anda dapat memulai, menghentikan, atau memulai ulang instance menggunakan berbagai cmdlet. Anda dapat merujuk ke instance dengan menggunakan nama atau objek dengan tipe kuat yang ditampilkan dari cmdlet Get-GceInstance
. Coba beberapa perintah berikut.
Stop-GceInstance $instance
Start-GceInstance $instance
Restart-GceInstance "my-vm-1"
Terakhir, setelah selesai dengan instance, hapus dari Compute Engine menggunakan cmdlet Remove-GceInstance
dan berikan tag yang Anda tentukan sebelumnya.
Get-GceInstance -Project $project |
Where { $_.Tags.Items -contains "to-be-removed" } |
Remove-GceInstance -WhatIf
7. Mencadangkan data ke Google Cloud Storage
Di bagian codelab ini, Anda akan mencadangkan data dari komputer lokal Anda ke Google Cloud Storage menggunakan Cloud Tools for PowerShell.
Membuat bucket
Sebelum mengupload file ke Cloud Storage, Anda perlu membuat bucket. Gunakan cmdlet New-GcsBucket
untuk membuat bucket baru.
$bucket = "my-gcs-bucket"
New-GcsBucket $bucket
Mengupload file ke bucket
Anda dapat menggunakan New-GcsObject
untuk mengupload file atau seluruh folder ke bucket.
Anda dapat mengupload konten file lokal ke Cloud Storage menggunakan parameter -File
dan menentukan jalur file. Atau, Anda dapat meneruskan konten objek sebagai string melalui pipeline PowerShell, atau menggunakan parameter -Value
.
Pilih file lokal di komputer Anda dan upload ke bucket Anda sebagai berikut.
New-GcsObject -Bucket "my-gcs-bucket" -File "C:\path\to\some\file\hello.txt"
Anda dapat mengupload seluruh direktori dari disk lokal ke Cloud Storage menggunakan parameter -UploadFolder
dan menentukan jalur folder. Jika Anda tidak ingin folder diupload langsung ke root bucket Cloud Storage, gunakan -ObjectNamePrefix
untuk menentukan awalan yang akan diterapkan ke setiap objek yang diupload.
Pilih folder lokal di komputer Anda dan upload ke bucket Anda seperti berikut.
New-GcsObject -Bucket "my-gcs-bucket" -Folder "C:\path\to\some\folder"
Telusuri data
Anda dapat menelusuri data menggunakan cmdlet, atau dengan penyedia melalui cmdlet penelusuran file umum. Coba perintah berikut dengan bucket Anda.
Get-GcsObject $bucket | Select Name, Size | Out-GridView
Anda akan melihat pop-up petak dengan nama dan ukuran.
Membaca data
Anda dapat menggunakan cmdlet Read-GcsObject
untuk membaca data. Sebagai contoh, Anda dapat menggunakan perintah berikut untuk membaca file bernama hello.txt
ke desktop Anda.
Read-GcsObject $bucket "hello.txt" `
-OutFile "$Env:UserProfile\Desktop\hello.txt"
Menghapus data
Terakhir, Anda dapat menghapus data menggunakan cmdlet Remove-GcsObject
. Gunakan perintah berikut untuk menghapus semua konten bucket.
Get-GcsObject $bucket | Remove-GcsObject
8. Selamat!
Dalam codelab ini, Anda telah mempelajari cara mengelola instance Compute Engine dan bucket Cloud Storage dari PowerShell. Namun, masih ada banyak lagi. Anda juga dapat mengelola resource Cloud SQL dan Cloud CDN menggunakan PowerShell. Lihat daftar langkah berikutnya di bawah untuk mempelajari lebih lanjut.
Yang telah kita bahas
- Cara menginstal Cloud Tools for PowerShell.
- Cara melakukan autentikasi dengan Google Cloud SDK.
- Cara membuat dan mengelola Google Compute Engine dari PowerShell.
- Cara mencadangkan data ke Google Cloud Storage dari PowerShell.
Langkah Berikutnya
- Pelajari Cloud Tools for PowerShell lebih lanjut.
- Pelajari lebih lanjut Windows di Google Cloud Platform.
- Pelajari .NET di Google Cloud Platform lebih lanjut.
- Pelajari SQL Server di Google Cloud Platform lebih lanjut.
- Pelajari Cloud Tools for Visual Studio lebih lanjut.