Dokumen ini membantu Anda merencanakan dan merancang fase pengoptimalan migrasi ke Google Cloud. Setelah men-deploy workload di Google Cloud, Anda dapat mulai mengoptimalkan lingkungan.
Dokumen ini adalah bagian dari rangkaian multi-bagian berikut tentang migrasi ke Google Cloud:
- Bermigrasi ke Google Cloud: Memulai
- Bermigrasi ke Google Cloud: Menilai dan menemukan workload Anda
- Bermigrasi ke Google Cloud: Merencanakan dan membangun fondasi Anda
- Bermigrasi ke Google Cloud: Mentransfer set data besar Anda
- Bermigrasi ke Google Cloud: Men-deploy workload Anda
- Bermigrasi ke Google Cloud: Bermigrasi dari deployment manual ke deployment otomatis dalam container
- Migrasi ke Google Cloud: Mengoptimalkan lingkungan Anda (dokumen ini)
- Bermigrasi ke Google Cloud: Praktik terbaik untuk memvalidasi rencana migrasi
- Bermigrasi ke Google Cloud: Meminimalkan biaya
Diagram berikut menggambarkan jalur perjalanan migrasi Anda.
Pada fase pengoptimalan, Anda meningkatkan kualitas lingkungan agar lebih efisien daripada deployment awal.
Dokumen ini berguna jika Anda berencana mengoptimalkan lingkungan yang ada setelah bermigrasi ke Google Cloud, atau jika Anda mengevaluasi peluang untuk mengoptimalkan dan ingin mempelajari seperti apa tampilannya.
Struktur fase pengoptimalan mengikuti framework migrasi yang dijelaskan dalam seri ini: menilai, merencanakan, men-deploy, dan mengoptimalkan. Anda dapat menggunakan framework serbaguna ini untuk merencanakan seluruh migrasi dan menguraikan tindakan independen di setiap fase. Setelah menyelesaikan langkah terakhir fase pengoptimalan, Anda dapat memulai fase ini dari awal dan menemukan target baru untuk pengoptimalan. Fase pengoptimalan didefinisikan sebagai loop pengoptimalan. Eksekusi loop didefinisikan sebagai iterasi pengoptimalan.
Pengoptimalan adalah tugas yang berlangsung dan berkelanjutan. Anda terus mengoptimalkan lingkungan Anda seiring perkembangannya. Untuk menghindari upaya yang tidak terkendali dan berulang, Anda dapat menetapkan sasaran pengoptimalan yang terukur dan menghentikannya saat mencapai sasaran ini. Setelah itu, Anda selalu dapat menetapkan tujuan baru yang lebih ambisius, tetapi pertimbangkan bahwa pengoptimalan memerlukan biaya, dalam hal sumber daya, waktu, usaha, dan keterampilan.
Diagram berikut menunjukkan loop pengoptimalan.
Untuk gambar diagram yang lebih besar, lihat Pohon keputusan pengoptimalan.
Dalam dokumen ini, Anda melakukan langkah-langkah berulang berikut dari loop pengoptimalan:
- Evaluasi lingkungan, tim, dan loop pengoptimalan yang Anda ikuti.
- Tetapkan persyaratan dan sasaran pengoptimalan.
- Optimalkan lingkungan Anda dan latih tim Anda.
- Sesuaikan loop pengoptimalan.
Dokumen ini membahas beberapa prinsip dan konsep site reliability engineering (SRE). Google mengembangkan disiplin SRE untuk menjalankan infrastruktur global secara efisien dan andal yang melayani miliaran pengguna. Mengadopsi disiplin SRE secara lengkap dalam organisasi mungkin tidak praktis jika Anda perlu memodifikasi banyak proses bisnis dan kolaborasi. Mungkin akan lebih mudah untuk menerapkan subset disiplin SRE yang paling sesuai dengan organisasi Anda.
Menilai lingkungan, tim, dan loop pengoptimalan
Sebelum memulai tugas pengoptimalan, Anda perlu mengevaluasi lingkungan Anda. Anda juga perlu menilai keterampilan tim karena mengoptimalkan lingkungan mungkin memerlukan keterampilan yang mungkin tidak dimiliki tim Anda. Terakhir, Anda perlu menilai loop pengoptimalan. Loop adalah resource yang dapat Anda optimalkan seperti resource lainnya.
Mengevaluasi lingkungan Anda
Anda membutuhkan pemahaman mendalam tentang lingkungan Anda. Agar pengoptimalan berhasil, Anda harus memahami cara kerja lingkungan Anda, dan harus mengidentifikasi area yang berpotensi ditingkatkan. Penilaian ini menetapkan dasar pengukuran sehingga Anda dapat membandingkan penilaian Anda dengan fase pengoptimalan dan iterasi pengoptimalan berikutnya.
Migrasi ke Google Cloud: Menilai dan menemukan workload Anda berisi panduan lengkap tentang penilaian workload dan penilaian lingkungan Anda. Jika baru saja menyelesaikan migrasi ke Google Cloud, Anda sudah memiliki informasi mendetail tentang cara lingkungan Anda dikonfigurasi, dikelola, dan dipelihara. Jika tidak, Anda akan menggunakan panduan tersebut untuk menilai lingkungan Anda.
Menilai tim Anda
Ketika Anda memiliki pemahaman yang jelas tentang lingkungan Anda, nilai tim Anda untuk memahami keterampilan mereka. Anda mulai dengan membuat daftar semua keterampilan, tingkat keahlian untuk setiap keterampilan, dan anggota tim yang paling berpengetahuan untuk setiap keterampilan. Gunakan penilaian ini di fase berikutnya untuk menemukan keterampilan yang belum dimiliki yang diperlukan untuk memenuhi sasaran pengoptimalan. Misalnya, jika mulai menggunakan layanan terkelola, Anda memerlukan keterampilan untuk menyediakan, mengonfigurasi, dan berinteraksi dengan layanan tersebut. Jika ingin menambahkan lapisan cache ke aplikasi di lingkungan Anda menggunakan Memorystore, Anda memerlukan keahlian untuk menggunakan layanan tersebut.
Perhatikan bahwa mengoptimalkan lingkungan dapat memengaruhi proses bisnis dan kolaborasi Anda. Misalnya, jika Anda mulai menggunakan layanan terkelola sepenuhnya, bukan layanan yang dikelola sendiri, Anda dapat memberi operator lebih banyak waktu untuk menghilangkan toil.
Menilai loop pengoptimalan Anda
Loop pengoptimalan adalah resource yang juga dapat Anda optimalkan. Gunakan data yang dikumpulkan dalam penilaian ini untuk mendapatkan insight yang jelas tentang performa tim Anda selama iterasi pengoptimalan terakhir. Misalnya, jika Anda ingin mempersingkat durasi iterasi, Anda memerlukan data tentang iterasi terakhir, termasuk kompleksitasnya dan tujuan yang ingin Anda kejar. Anda juga memerlukan informasi tentang semua pemblokir yang Anda temui selama iterasi terakhir untuk memastikan bahwa Anda memiliki strategi mitigasi jika pemblokir tersebut terjadi kembali.
Jika iterasi pengoptimalan ini adalah yang pertama, Anda mungkin tidak memiliki cukup data untuk menetapkan dasar pengukuran guna membandingkan performa. Buat draf serangkaian hipotesis tentang performa tim Anda selama iterasi pertama. Setelah iterasi pengoptimalan pertama, evaluasi loop dan performa tim Anda, lalu bandingkan dengan hipotesis.
Menetapkan persyaratan dan sasaran pengoptimalan
Sebelum memulai tugas pengoptimalan, buat draf serangkaian tujuan yang dapat diukur dengan jelas untuk iterasi.
Pada langkah ini, Anda akan melakukan aktivitas berikut:
- Tentukan persyaratan pengoptimalan Anda.
- Tetapkan sasaran pengoptimalan yang terukur sesuai dengan persyaratan pengoptimalan Anda.
Menentukan persyaratan pengoptimalan
Anda mencantumkan persyaratan untuk fase pengoptimalan. Sebuah persyaratan mengungkapkan kebutuhan untuk perbaikan dan tidak harus terukur.
Mulai dari serangkaian karakteristik kualitas untuk workload, lingkungan, dan loop pengoptimalan Anda sendiri, Anda dapat membuat draf kuesioner untuk memandu Anda menetapkan persyaratan. Kuesioner ini mencakup karakteristik yang menurut Anda berharga untuk lingkungan, proses, dan workload.
Ada banyak sumber yang dapat menjadi panduan untuk menentukan karakteristik kualitas. Misalnya, standar ISO/IEC 25010 menentukan karakteristik kualitas untuk produk software, atau Anda dapat meninjau checklist penyiapan Google Cloud.
Misalnya, kuesioner dapat mengajukan pertanyaan berikut:
- Dapatkah infrastruktur Anda dan komponennya diskalakan secara vertikal atau horizontal?
- Apakah infrastruktur Anda mendukung perubahan roll back tanpa intervensi manual?
- Apakah Anda sudah memiliki sistem pemantauan yang mencakup infrastruktur dan workload Anda?
- Apakah Anda memiliki sistem manajemen insiden untuk infrastruktur?
- Berapa banyak waktu dan upaya yang diperlukan untuk menerapkan pengoptimalan yang direncanakan?
- Apakah Anda dapat memenuhi semua tujuan dalam iterasi masa lalu?
Mulai dari jawaban hingga kuesioner, Anda dapat membuat draf daftar persyaratan untuk iterasi pengoptimalan ini. Misalnya, persyaratan Anda mungkin sebagai berikut:
- Meningkatkan performa aplikasi.
- Meningkatkan ketersediaan komponen lingkungan.
- Meningkatkan keandalan komponen lingkungan.
- Mengurangi biaya operasional lingkungan.
- Mempersingkat durasi iterasi pengoptimalan untuk mengurangi risiko yang melekat.
- Meningkatkan kecepatan pengembangan dan mengurangi waktu penyiapan produk.
Setelah Anda memiliki daftar area peningkatan, evaluasi persyaratan dalam daftar tersebut. Dalam evaluasi ini, Anda akan menganalisis persyaratan pengoptimalan, menemukan ketidaksesuaian, dan memprioritaskan persyaratan dalam daftar. Misalnya, meningkatkan performa aplikasi mungkin bertentangan dengan pengurangan biaya operasional.
Menetapkan sasaran yang dapat diukur
Setelah menyelesaikan daftar persyaratan, tentukan sasaran yang dapat diukur untuk setiap persyaratan. Satu tujuan mungkin berkontribusi pada lebih dari satu persyaratan. Jika ada area yang tidak pasti atau jika Anda tidak dapat menentukan semua sasaran yang diperlukan untuk mencakup persyaratan Anda, kembali ke fase penilaian pada iterasi ini untuk mengumpulkan informasi yang belum lengkap dan kemudian saring persyaratan Anda.
Untuk membantu menentukan sasaran ini, Anda dapat mengikuti salah satu disiplin SRE, definisi indikator tingkat layanan (SLI) dan tujuan tingkat layanan (SLO):
- SLI adalah ukuran kuantitatif tingkat layanan yang Anda berikan. Misalnya, SLI kunci mungkin berupa latensi permintaan rata-rata, tingkat error, atau throughput sistem.
- SLO adalah nilai target atau rentang nilai untuk tingkat layanan yang diukur dengan SLI. Misalnya, SLO mungkin adalah bahwa latensi permintaan rata-rata lebih rendah dari 100 milidetik.
Setelah menentukan SLI dan SLO, Anda mungkin menyadari bahwa Anda tidak mengumpulkan semua metrik yang diperlukan untuk mengukur SLI Anda. Koleksi metrik ini adalah sasaran pengoptimalan pertama yang dapat Anda tangani. Anda menetapkan sasaran yang terkait dengan memperluas sistem pemantauan agar dapat mengumpulkan semua metrik yang diperlukan untuk SLI Anda.
Mengoptimalkan lingkungan dan tim Anda
Setelah menilai lingkungan, tim, dan loop pengoptimalan, serta menetapkan persyaratan dan sasaran untuk iterasi ini, Anda siap untuk melakukan langkah pengoptimalan.
Pada langkah ini, Anda akan melakukan aktivitas berikut:
- Mengukur lingkungan, tim, dan loop pengoptimalan Anda.
- Menganalisis data yang berasal dari pengukuran ini.
- Melakukan aktivitas pengoptimalan.
- Mengukur dan menganalisis lagi.
Mengukur lingkungan, tim, dan loop pengoptimalan Anda
Anda memperluas sistem pemantauan untuk mengumpulkan data tentang perilaku lingkungan, tim, dan loop pengoptimalan untuk menetapkan dasar pengukuran yang dapat dibandingkan setelah pengoptimalan.
Aktivitas ini dibuat berdasarkan dan memperluas apa yang Anda lakukan di fase penilaian. Setelah menetapkan persyaratan dan sasaran, Anda akan mengetahui metrik yang harus dikumpulkan untuk pengukuran yang relevan dengan sasaran pengoptimalan Anda. Misalnya, jika Anda menentukan SLO dan SLI yang sesuai guna mengurangi latensi respons untuk salah satu workload di lingkungan, Anda harus mengumpulkan data untuk mengukur metrik tersebut.
Pemahaman metrik ini juga berlaku untuk tim Anda dan loop pengoptimalan. Anda dapat memperluas sistem pemantauan untuk mengumpulkan data sehingga dapat mengukur metrik yang relevan dengan tim Anda dan loop pengoptimalan. Misalnya, jika memiliki SLO dan SLI untuk mengurangi durasi iterasi pengoptimalan, Anda harus mengumpulkan data untuk mengukur metrik tersebut.
Saat mendesain metrik yang diperlukan untuk memperluas sistem pemantauan, pertimbangkan bahwa pengumpulan data dapat memengaruhi performa lingkungan dan proses Anda. Evaluasi metrik yang perlu Anda terapkan untuk pengukuran, dan interval sampelnya, guna memahami apakah metrik tersebut dapat memengaruhi performa. Misalnya, metrik dengan frekuensi sampel tinggi dapat menurunkan performa, sehingga Anda perlu mengoptimalkannya lebih lanjut.
Di Google Cloud, Anda dapat menggunakan Cloud Monitoring untuk menerapkan metrik yang diperlukan untuk mengumpulkan data. Untuk menerapkan metrik kustom dalam workload secara langsung, Anda dapat menggunakan Library Klien Cloud untuk Cloud Monitoring, atau OpenTelemetry. Jika menggunakan Google Kubernetes Engine (GKE), Anda dapat menggunakan pengukuran penggunaan GKE untuk mengumpulkan informasi tentang penggunaan resource, seperti penggunaan CPU, GPU, dan TPU, lalu bagi penggunaan resource dengan namespace atau label.
Terakhir, Anda dapat menggunakan Cloud Architecture Center dan Laporan Resmi Google Cloud sebagai titik awal untuk menemukan keterampilan baru yang mungkin diperlukan tim Anda untuk mengoptimalkan lingkungan Anda.
Menganalisis data
Setelah mengumpulkan data, Anda menganalisis dan mengevaluasinya untuk memahami performa lingkungan, tim, dan loop pengoptimalan terhadap persyaratan dan sasaran pengoptimalan Anda.
Secara khusus, Anda mengevaluasi lingkungan berdasarkan hal berikut:
- SLO
- Praktik terbaik industri.
- Lingkungan tanpa utang teknis apa pun.
SLO yang Anda buat sesuai dengan sasaran pengoptimalan dapat membantu Anda memahami apakah Anda memenuhi ekspektasi atau tidak. Jika belum memenuhi SLO, Anda perlu meningkatkan tim atau loop pengoptimalan. Misalnya, jika Anda menetapkan SLO untuk latensi respons agar workload berada dalam persentil tertentu dan workload tersebut tidak memenuhi batasnya, itu adalah sinyal bahwa Anda perlu mengoptimalkan bagian workload tersebut.
Selain itu, Anda dapat membandingkan situasi Anda dengan serangkaian praktik terbaik yang diakui di industri ini. Misalnya, checklist penyiapan Google Cloud membantu Anda mengonfigurasi lingkungan siap produksi untuk workload perusahaan.
Setelah mengumpulkan data, Anda dapat mempertimbangkan cara mengoptimalkan lingkungan untuk membuatnya lebih hemat biaya. Anda dapat mengekspor data Penagihan Cloud ke BigQuery dan menganalisis data dengan Looker Studio untuk memahami jumlah resource yang Anda gunakan, dan mengekstrak pola pengeluaran apa pun dari sana.
Terakhir, bandingkan lingkungan Anda dengan lingkungan yang tidak memiliki utang teknis, untuk melihat apakah Anda memenuhi tujuan jangka panjang dan untuk melihat apakah utang teknis meningkat. Misalnya, Anda dapat membuat SLO untuk mengetahui jumlah resource di lingkungan yang Anda pantau dibandingkan dengan jumlah resource yang telah Anda sediakan sejak iterasi terakhir. Jika Anda tidak memperluas sistem pemantauan untuk menutupi resource baru, utang teknis Anda meningkat. Saat menganalisis perubahan utang teknis, pertimbangkan juga faktor-faktor yang menyebabkan perubahan tersebut. Misalnya, kebutuhan bisnis mungkin memerlukan kenaikan utang teknis, atau mungkin hal tersebut tidak terduga. Mengetahui faktor-faktor yang menyebabkan perubahan pada utang teknis akan memberikan insight tentang target pengoptimalan di masa mendatang.
Untuk memantau lingkungan di Google Cloud, Anda dapat menggunakan Monitoring untuk mendesain diagram, dasbor, dan pemberitahuan. Selanjutnya, Anda dapat merutekan data Cloud Logging untuk mendapatkan analisis yang lebih mendalam dan periode retensi data yang lebih lama. Misalnya, Anda dapat membuat sink gabungan dan menggunakan Cloud Storage, Pub/Sub, atau BigQuery sebagai tujuan. Jika mengekspor data ke BigQuery, Anda dapat menggunakan Looker Studio untuk memvisualisasikan data sehingga dapat mengidentifikasi tren dan membuat prediksi. Anda juga dapat menggunakan alat evaluasi seperti Pemberi Rekomendasi dan Security Command Center untuk menganalisis lingkungan dan proses Anda secara otomatis, mencari target pengoptimalan.
Setelah menganalisis semua data pengukuran, Anda perlu menjawab dua pertanyaan:
Apakah Anda memenuhi sasaran pengoptimalan?
Jika Anda menjawab ya, berarti iterasi pengoptimalan ini telah selesai, dan Anda dapat memulai yang baru. Jika menjawab tidak, Anda dapat beralih ke pertanyaan kedua.
Dengan resource yang Anda anggarkan, dapatkah Anda mencapai sasaran pengoptimalan yang Anda tetapkan untuk iterasi ini?
Untuk menjawab pertanyaan ini, pertimbangkan semua resource yang Anda perlukan, seperti waktu, uang, dan keahlian. Jika menjawab ya, Anda dapat melanjutkan ke bagian berikutnya; jika tidak, tingkatkan sasaran pengoptimalan, dengan mempertimbangkan resource yang dapat Anda gunakan untuk iterasi ini. Misalnya, jika dibatasi oleh jadwal tetap, Anda mungkin perlu menjadwalkan beberapa sasaran pengoptimalan untuk iterasi berikutnya.
Mengoptimalkan tim Anda
Mengoptimalkan lingkungan adalah tantangan yang berkelanjutan dan dapat memerlukan keterampilan yang mungkin belum dimiliki tim Anda, yang Anda temukan selama penilaian dan analisis. Oleh karena itu, mengoptimalkan tim Anda dengan memperoleh keterampilan baru dan membuat proses lebih efisien sangat penting untuk keberhasilan aktivitas pengoptimalan Anda.
Untuk mengoptimalkan tim, Anda perlu melakukan hal berikut:
- Merancang dan mengimplementasikan program pelatihan.
- Mengoptimalkan struktur dan budaya tim Anda.
Agar tim Anda memperoleh keterampilan yang belum dimiliki, Anda harus merancang dan mengimplementasikan program pelatihan atau memilih program yang sudah disiapkan oleh pelatih Google Cloud profesional. Untuk informasi selengkapnya, lihat Bermigrasi ke Google Cloud: Menilai dan menemukan workload Anda.
Saat mengoptimalkan tim, Anda mungkin menemukan bahwa ada ruang untuk memperbaiki struktur dan budaya. Sulit untuk merumuskan situasi ideal di awal, karena setiap perusahaan memiliki sejarah dan keistimewaan sendiri yang berkontribusi pada evolusi struktur dan budaya tim Anda.
Kepemimpinan transformasi adalah titik awal yang baik untuk mempelajari framework umum untuk menjalankan dan mengukur perubahan organisasi yang bertujuan untuk mengadopsi praktik DevOps. Untuk mendapatkan panduan praktis mengenai cara mengimplementasikan budaya DevOps yang efektif di organisasi Anda, lihat Site Reliability Engineering, deskripsi metodologi SRE yang komprehensif. Site Reliability Workbook, pendamping buku ini, menggunakan contoh konkret untuk menunjukkan cara kerja prinsip dan praktik SRE.
Mengoptimalkan lingkungan Anda
Setelah mengukur dan menganalisis data metrik, Anda mengetahui area mana yang perlu dioptimalkan.
Bagian ini membahas teknik pengoptimalan umum untuk lingkungan Google Cloud Anda. Anda juga dapat melakukan aktivitas pengoptimalan yang spesifik untuk infrastruktur dan layanan yang Anda gunakan.
Mengodifikasi semuanya
Salah satu keuntungan terbesar penggunaan lingkungan cloud publik seperti Google Cloud adalah Anda dapat menggunakan antarmuka yang terdefinisi dengan baik seperti Cloud API untuk menyediakan, mengonfigurasi, dan mengelola resource. Anda dapat menggunakan alat pilihan Anda sendiri untuk menentukan proses Infrastructure as Code (IaC), dan pilihan sistem kontrol versi Anda sendiri.
Anda dapat menggunakan alat seperti Terraform untuk menyediakan resource Google Cloud, lalu alat seperti Ansible, Chef, atau Puppet untuk mengonfigurasi resource ini. Proses IaC membantu Anda menerapkan strategi rollback yang efektif untuk tugas pengoptimalan. Anda dapat mengembalikan perubahan apa pun yang diterapkan pada kode yang menjelaskan infrastruktur Anda. Selain itu, Anda dapat menghindari kegagalan tak terduga saat mengupdate infrastruktur dengan menguji perubahan yang Anda buat.
Selain itu, Anda dapat menerapkan proses serupa untuk mengodifikasi aspek lain di lingkungan Anda, seperti kebijakan sebagai kode, menggunakan alat seperti Agen Kebijakan Terbuka, dan operasi sebagai kode, seperti GitOps.
Oleh karena itu, jika mengadopsi proses IaC pada iterasi pengoptimalan awal, Anda dapat menentukan aktivitas pengoptimalan lebih lanjut sebagai kode. Anda juga dapat mengadopsi proses ini secara bertahap sehingga dapat mengevaluasi apakah proses ini sesuai dengan lingkungan Anda.
Mengotomatiskan semuanya
Untuk sepenuhnya mengoptimalkan seluruh lingkungan, Anda perlu menggunakan resource secara efisien. Artinya, Anda perlu menghilangkan kerja keras untuk menghemat resource dan berinvestasi kembali pada tugas yang lebih penting yang menghasilkan nilai, seperti aktivitas pengoptimalan.
Sesuai dengan rekomendasi SRE, cara untuk menghilangkan toil adalah dengan meningkatkan otomatisasi. Tidak semua tugas otomatisasi memerlukan keterampilan software engineering yang sangat khusus atau upaya yang hebat. Terkadang, skrip pendek yang dapat dieksekusi yang dijalankan secara berkala dapat menghemat waktu beberapa jam per hari. Google Cloud menyediakan alat-alat, seperti Google Cloud CLI, dan layanan terkelola seperti Cloud API, Cloud Scheduler, Cloud Composer, dan Cloud Run yang dapat digunakan tim Anda untuk mengotomatiskan tugas berulang.
Memantau semuanya
Jika tidak dapat mengumpulkan langkah-langkah mendetail tentang lingkungan, Anda tidak dapat memperbaikinya, karena tidak memiliki data untuk mendukung asumsi Anda. Artinya, Anda tidak tahu apa yang harus dilakukan untuk memenuhi sasaran pengoptimalan.
Sistem pemantauan yang komprehensif adalah komponen yang diperlukan untuk lingkungan Anda. Sistem ini memantau semua metrik penting yang perlu Anda evaluasi untuk mencapai sasaran pengoptimalan. Saat mendesain sistem pemantauan, rencanakan untuk memantau minimal empat sinyal emas.
Anda dapat menggunakan layanan terkelola seperti Monitoring dan Logging untuk memantau lingkungan tanpa harus menyiapkan solusi pemantauan yang rumit.
Anda mungkin perlu menerapkan sistem pemantauan yang dapat memantau lingkungan hybrid dan multi-cloud untuk memenuhi kebijakan pembatasan data yang memaksa Anda menyimpan data hanya di lokasi fisik tertentu, atau layanan yang menggunakan beberapa lingkungan cloud secara bersamaan.
Mengadopsi pendekatan cloud-ready
Cloud-ready adalah paradigma yang menjelaskan cara efisien untuk mendesain dan menjalankan aplikasi di cloud. Cloud Native Computing Foundation (CNCF) mendefinisikan aplikasi native cloud sebagai aplikasi yang skalabel, tangguh, dan mudah dikelola, serta dapat diamati oleh teknologi seperti container, mesh layanan, microservice, infrastruktur yang tidak dapat diubah, dan API deklaratif. Google Cloud menyediakan layanan terkelola seperti GKE, Cloud Run, Cloud Service Mesh, Logging, dan Monitoring agar pengguna dapat mendesain dan menjalankan aplikasi yang siap digunakan di cloud.
Pelajari lebih lanjut teknologi yang siap untuk cloud dari CNCF Trail Map dan CNCF Cloud Native Interactive Landscape.
Pengelolaan biaya
Karena model penagihan dan biayanya yang berbeda, mengoptimalkan biaya lingkungan cloud publik seperti Google Cloud berbeda dengan mengoptimalkan lingkungan lokal.
Untuk mengetahui informasi selengkapnya, lihat Bermigrasi ke Google Cloud: Meminimalkan biaya.
Mengukur dan menganalisis lagi
Setelah menyelesaikan aktivitas pengoptimalan untuk iterasi ini, Anda mengulangi pengukuran dan analisis untuk memeriksa apakah Anda telah mencapai sasaran. Jawablah pertanyaan berikut:
Apakah sasaran pengoptimalan Anda sudah tercapai?
Jika menjawab ya, Anda dapat melanjutkan ke bagian berikutnya.
Jika Anda menjawab tidak, kembali ke awal fase Mengoptimalkan lingkungan dan tim Anda.
Menyesuaikan loop pengoptimalan
Di bagian ini, Anda akan memperbarui dan mengubah loop pengoptimalan yang Anda ikuti dalam iterasi ini agar lebih sesuai dengan struktur dan lingkungan tim Anda.
Mengodifikasi loop pengoptimalan
Untuk mengoptimalkan loop pengoptimalan secara efisien, Anda perlu mendokumentasikan dan menentukan loop dalam bentuk yang standar, sederhana, dan mudah dikelola, sehingga memberikan ruang untuk perubahan. Anda dapat menggunakan layanan yang terkelola sepenuhnya seperti Cloud Composer untuk membuat, menjadwalkan, memantau, dan mengelola alur kerja. Anda juga dapat menampilkan proses terlebih dahulu dengan bahasa seperti notasi dan model proses bisnis (BPMN). Setelah itu, Anda dapat mengkodifikasi proses ini dengan bahasa standar seperti bahasa eksekusi proses bisnis (BPEL). Setelah mengadopsi IaC, mendeskripsikan proses dengan kode memungkinkan Anda mengelolanya saat Anda melakukan sisa lingkungan.
Mengotomatiskan loop pengoptimalan
Setelah mengodekan loop pengoptimalan, Anda dapat mengotomatiskan tugas berulang untuk menghilangkan toil, menghemat waktu, dan membuat loop pengoptimalan lebih efisien. Anda dapat mulai mengotomatiskan semua tugas yang tidak memerlukan keputusan manual, seperti mengukur data dan menghasilkan laporan agregat untuk dianalisis oleh tim Anda. Misalnya, Anda dapat mengotomatiskan analisis data dengan Cloud Monitoring untuk memeriksa apakah lingkungan Anda memenuhi SLO yang Anda tetapkan. Mengingat bahwa pengoptimalan adalah tugas yang tidak pernah berakhir dan Anda melakukan iterasi pada loop pengoptimalan, bahkan otomatisasi kecil dapat meningkatkan efisiensi secara signifikan.
Memantau loop pengoptimalan
Seperti yang Anda lakukan pada semua resource di lingkungan, Anda perlu memantau loop pengoptimalan untuk memastikan bahwa loop pengoptimalan berfungsi seperti yang diharapkan dan juga mencari hambatan dan sasaran pengoptimalan pada masa mendatang. Anda dapat mulai memantaunya dengan melacak jumlah waktu dan resource yang dihabiskan tim pada setiap langkah pengoptimalan. Misalnya, Anda dapat menggunakan sistem pelacakan masalah dan alat pengelolaan project untuk memantau proses dan mengekstrak statistik yang relevan tentang metrik seperti waktu penyelesaian masalah dan waktu penyelesaian.
Langkah selanjutnya
- Baca Praktik terbaik untuk memvalidasi rencana migrasi.
- Baca buku SRE untuk mempelajari konsep dan teknik lain untuk mempersiapkan pengoptimalan.
- Pelajari kapan harus menemukan bantuan untuk migrasi.
- Untuk mengetahui lebih banyak tentang arsitektur referensi, diagram, dan praktik terbaik lainnya, jelajahi Pusat Arsitektur Cloud.
Kontributor
Penulis: Marco Ferrari | Cloud Solutions Architect