Tutorial ini menunjukkan cara memulai Compute Engine. Ikuti tutorial ini dengan men-deploy aplikasi web Hello World Go ke Compute Engine. Untuk mendapatkan bantuan dalam memulai App Engine, lihat lingkungan standar App Engine.
Tujuan
- Gunakan Cloud Shell untuk mendownload dan men-deploy aplikasi contoh Hello World.
- Gunakan Cloud Build untuk membangun aplikasi contoh Halo Dunia.
- Deploy aplikasi contoh Hello World ke satu instance Compute Engine.
Biaya
Dalam dokumen ini, Anda menggunakan komponen Google Cloud yang dapat ditagih berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan API Compute Engine and Cloud Build.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan API Compute Engine and Cloud Build.
-
Di konsol Google Cloud, buka aplikasi di Cloud Shell.
Cloud Shell menyediakan akses command line ke resource cloud Anda langsung dari browser.
-
Jika Anda setuju untuk meng-clone repositori, klik Confirm untuk mendownload kode contoh dan beralih ke direktori aplikasi.
-
Di Cloud Shell, konfigurasikan gcloud CLI untuk menggunakan project Google Cloud yang baru:
# Configure gcloud for your project gcloud config set project YOUR_PROJECT_ID
Menjalankan aplikasi di Cloud Shell
Di Cloud Shell, mulai server web lokal:
go build -o app ./app
Di Cloud Shell, klik Web preview , lalu pilih Preview on port 8080. Tindakan ini akan membuka jendela baru dengan aplikasi yang sedang berjalan.
Di browser web, Anda melihat
Hello, World!
.Jika Anda siap melanjutkan, hentikan server web lokal dengan menekan Control+C di Cloud Shell.
Men-deploy ke satu instance
Bagian ini akan memandu Anda dalam menjalankan satu instance aplikasi di Compute Engine.
Dari Cloud Shell, Anda dapat men-deploy ke satu virtual machine (VM) instance Compute Engine yang menjalankan aplikasi Anda.
Menggunakan Cloud Build untuk membangun aplikasi
Cloud Build digunakan untuk membangun aplikasi, mengompresinya dalam file tar, dan mengupload file ke bucket Cloud Storage. Bucket adalah container dasar yang menyimpan data Anda di Cloud Storage.
Di jendela terminal, buat bucket Cloud Storage, dengan
YOUR_BUCKET_NAME
mewakili nama bucket Anda:gsutil mb gs://YOUR_BUCKET_NAME
Anda dapat memilih nama apa pun untuk bucket Cloud Storage. Sebaiknya beri nama yang sama untuk bucket Anda dengan project ID. Nama bucket harus unik di seluruh Google Cloud. Jadi, ada kemungkinan Anda tidak dapat menggunakan project ID sebagai nama bucket.
Mulai proses Cloud Build:
gcloud builds submit --substitutions=_DEPLOY_DIR=gs://
YOUR_BUCKET_NAME
,_DEPLOY_FILENAME=app.tar.gzPerintah
gcloud builds submit
menggunakan--substitutions
untuk mengonfigurasi lokasi tempat file tar yang dihasilkan diupload. Kemudian, file {i>tar<i} didownload ke instance Compute Engine.Cloud Build menggunakan file konfigurasi YAML untuk menentukan langkah-langkah yang diperlukan build.
Menggunakan skrip startup untuk menginisialisasi instance
Anda memerlukan cara untuk menginstruksikan instance agar mendownload dan menjalankan kode. Instance dapat memiliki skrip startup yang berjalan setiap kali instance dimulai atau dimulai ulang.
Skrip startup berjalan saat instance pertama kali melakukan booting.
Skrip startup melakukan tugas-tugas berikut:
Menginstal agen Cloud Logging dan mengonfigurasinya untuk memantau log aplikasi.
Mendownload dan mengekstrak file tar deployment.
Memulai layanan
systemd
untuk menjalankan aplikasi.
Membuat dan mengonfigurasi instance Compute Engine
Buat instance Compute Engine
Linux/macOS
gcloud compute instances create my-app-instance \ --image-family=debian-10 \ --image-project=debian-cloud \ --machine-type=g1-small \ --scopes userinfo-email,cloud-platform \ --metadata-from-file startup-script=startup-script.sh \ --metadata app-location="gs://YOUR_BUCKET_NAME/app.tar.gz" \ --zone YOUR_ZONE \ --tags http-server
Ganti
YOUR_ZONE
dengan zona pengembangan, misalnyaus-central1-a
. Untuk mengetahui informasi lebih lanjut tentang region dan zona, baca bagian Geografi dan region.Flag
--metadata app-location
memberi tahu skrip startup tempat mendownload file tar aplikasi.Windows
gcloud compute instances create my-app-instance ^ --image-family=debian-10 ^ --image-project=debian-cloud ^ --machine-type=g1-small ^ --scopes userinfo-email,cloud-platform ^ --metadata-from-file startup-script=startup-script.sh ^ --metadata app-location="gs://YOUR_BUCKET_NAME/app.tar.gz" ^ --zone YOUR_ZONE ^ --tags http-server
Ganti
YOUR_ZONE
dengan zona pengembangan, misalnyaus-central1-a
. Untuk mengetahui informasi lebih lanjut tentang region dan zona, baca bagian Geografi dan region.Flag
--metadata app-location
memberi tahu skrip startup tempat mendownload file tar aplikasi.Tindakan ini akan membuat instance baru, memungkinkannya mengakses layanan Google Cloud, dan menjalankan skrip startup Anda. Nama instance adalah
my-app-instance
.Periksa progres pembuatan instance:
gcloud compute instances get-serial-port-output my-app-instance --zone YOUR_ZONE
Setelah skrip startup selesai, Anda akan melihat pesan berikut:
startup-script: INFO Finished running startup scripts.
Buat aturan firewall untuk mengizinkan traffic ke instance Anda:
gcloud compute firewall-rules create default-allow-http-80 \ --allow tcp:80 \ --source-ranges 0.0.0.0/0 \ --target-tags http-server \ --description "Allow port 80 access to http-server"
Dapatkan alamat IP eksternal instance Anda:
gcloud compute instances list
Untuk melihat aplikasi Anda berjalan, masukkan URL ini di browser:
http://YOUR_INSTANCE_IP
Ganti
YOUR_INSTANCE_IP
dengan alamat IP eksternal instance Anda.
Mengelola dan memantau instance
Anda dapat menggunakan konsol Google Cloud untuk memantau dan mengelola instance.
- Di konsol Google Cloud, buka halaman Instance VM.
- Di daftar instance virtual machine, klik SSH di baris instance yang ingin Anda hubungkan.
- Untuk melihat semua log yang dihasilkan oleh resource Compute Engine, buka halaman Logs Explorer.
Buka Logs Explorer
Cloud Logging dikonfigurasi secara otomatis untuk mengumpulkan log dari berbagai layanan umum, termasuk
syslog
.
Pembersihan
Agar tidak perlu membayar biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.
Menghapus project
- Di konsol Google Cloud, buka halaman Manage resource.
- Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.
Menghapus resource satu per satu
gcloud compute instances delete my-app-instance --zone=YOUR_ZONE --delete-disks=all gcloud compute firewall-rules delete default-allow-http-80
Langkah selanjutnya
Pelajari arsitektur referensi, diagram, dan praktik terbaik tentang Google Cloud. Lihat Cloud Architecture Center kami.
Untuk resource Go lainnya dalam membangun aplikasi, lihat yang berikut ini:
- Kelola dan pantau deployment Grup Instance Anda di Compute Engine > Grup instance.
- Kelola konfigurasi load balancing Anda, termasuk peta URL dan layanan backend, di Layanan jaringan > Load balancing.
- Men-deploy aplikasi ke Google Kubernetes Engine
- Jelajahi layanan Google Cloud lainnya.