Setelah membuat aplikasi, Anda dapat melihat informasi terkait lingkungannya. Artikel ini menjelaskan cara mengelola lingkungan aplikasi di Serverless Application Center melalui konsol Function Compute, termasuk pembuatan, peninjauan, penghapusan lingkungan, serta isolasi layanan di berbagai lingkungan.
Latar Belakang
Fitur lingkungan menyediakan kemampuan manajemen infrastruktur. Dengan fitur ini, Anda dapat:
Menerapkan layanan dalam lingkungan infrastruktur yang terisolasi untuk mencapai tingkat ketersediaan tinggi atau latensi rendah pada layanan produksi. Sebagai contoh, Anda dapat mengisolasi layanan di wilayah dan virtual private cloud (VPC) yang berbeda.
Mengaitkan aturan pipeline yang berbeda dengan lingkungan tertentu untuk menerapkan kontrol yang akurat dan aman atas proses produksi. Misalnya, tindakan commit cabang pengembangan dapat memicu integrasi berkelanjutan (CI) di lingkungan pengujian, sedangkan tindakan merge cabang utama dapat memicu rilis di lingkungan produksi.
Catatan Penggunaan
Secara default, tidak ada nama domain yang ditetapkan untuk lingkungan. Lingkungan dapat menampung sumber daya Alibaba Cloud seperti Log Service, VPC, dan File Storage NAS (NAS). Sumber daya tersebut diisolasi di setiap lingkungan. Jika Anda ingin menggunakan nama domain berbeda untuk lingkungan tertentu, tentukan bidang customDomains di file
s.yamlrepositori.Izin diperlukan untuk mengakses layanan Alibaba Cloud tertentu ketika lingkungan menampung sumber daya tertentu. Lampirkan kebijakan yang berisi izin yang diperlukan pada layanan Alibaba Cloud tertentu ke peran
AliyunFCServerlessDevsRole.Layanan dapat diterapkan di lingkungan yang berbeda. Anda dapat memilih apakah akan menggunakan konfigurasi yang disediakan oleh lingkungan.
Lihat informasi tentang lingkungan
Masuk ke konsol Function Compute. Di panel navigasi sebelah kiri, klik Applications. Pada halaman Applications, temukan aplikasi yang diinginkan dan klik ikon
di sisi kiri aplikasi untuk melihat lingkungan terkait.
Klik nama lingkungan untuk melihat informasi terkait, termasuk informasi dasar, konfigurasi sumber kode, riwayat penyebaran, dan sumber daya. Anda juga dapat mengembangkan kode terkait lingkungan di cloud serta mengonfigurasi pipeline.
Pengembalian Lingkungan
Pengembalian lingkungan memiliki risiko. Jika terjadi kesalahan, Anda dapat mengembalikan lingkungan ke titik waktu tertentu. Namun, pengembalian hanya berlaku untuk kode bisnis aplikasi. Proses bisnis hulu dan hilir tidak dapat dikembalikan. Sebagai contoh, jika aplikasi saat ini menggunakan database dan database tidak dapat terhubung karena kesalahan, masalah ini mungkin tidak dapat diselesaikan dengan mengembalikan kode bisnis aplikasi.
Untuk mengembalikan lingkungan, buka tab Environment Details pada halaman detail aplikasi, lalu klik Roll Back di bagian Deployment History.

Pengembalian lingkungan menerapkan ulang logika bisnis dan konfigurasi berdasarkan snapshot penyebaran historis. "Logika bisnis dan konfigurasi" merujuk pada kode dan konfigurasi sumber daya, seperti file s.yaml, dalam tindakan commit tertentu di repositori kode.
Manajemen Sumber Daya
Serverless Application Center memungkinkan Anda melihat informasi pengikatan sumber daya. Namun, Anda tidak dapat mengelola sumber daya langsung di Serverless Application Center.
Anda dapat menggunakan informasi pengikatan sumber daya untuk mengelola sumber daya di halaman manajemen sumber daya. Namun, metode ini tidak direkomendasikan. Kami menyarankan Anda menggunakan file deskripsi sumber daya s.yaml di repositori kode untuk mengelola sumber daya. Jika Anda melakukan operasi pada sumber daya di halaman manajemen sumber daya tanpa memodifikasi file s.yaml repositori kode, sumber daya tersebut mungkin tertimpa. Sebagai contoh, jika file s.yaml repositori kode di cabang lingkungan menentukan bahwa ukuran memori fungsi adalah 1.024 MB, tetapi seorang pengembang mengubah ukuran memori menjadi 2.048 MB di halaman manajemen sumber daya tanpa memperbarui file s.yaml, ukuran memori akan kembali menjadi 1.024 MB setelah penyebaran pipeline dipicu.
Pengembangan Berbasis Cloud
Serverless Application Center menyediakan kemampuan pengembangan berbasis cloud. Pada tab Cloud Development halaman detail aplikasi, klik Initialize Repository untuk menginisialisasi kode.
Setelah inisialisasi, Anda dapat melihat kode di WebIDE dan melakukan operasi pengembangan serta debugging dasar. Setelah selesai, Anda dapat menggunakan terminal atau plug-in Git untuk mendorong kode ke repositori. Anda juga dapat mengklik Save Code to Repository di pojok kiri atas untuk menambahkan, commit, dan mendorong kode.

Manajemen Pipeline
Untuk informasi lebih lanjut, lihat Kelola Pipeline.
Buat Lingkungan
Pusat aplikasi mendukung kemampuan multi-lingkungan. Anda dapat mengklik Create Environment di halaman detail aplikasi untuk membuat lingkungan baru. 
Tabel berikut menjelaskan parameter yang harus dikonfigurasikan untuk membuat lingkungan.
Parameter | Deskripsi |
Nama Lingkungan | Nama lingkungan. Nama lingkungan membantu Anda membedakan lingkungan yang berbeda. Jenis lingkungan dapat sesuai dengan beberapa nama lingkungan. |
Jenis Lingkungan | Jenis lingkungan. Jenis lingkungan membantu Anda mengkategorikan dan memfilter lingkungan. Jenis berikut didukung: lingkungan pengujian, lingkungan staging, dan lingkungan produksi. |
Informasi dasar tentang lingkungan | Informasi dasar, seperti deskripsi, wilayah, dan nama peran lingkungan. Konfigurasi, seperti wilayah, logging, jaringan, dan pengaturan penyimpanan, di halaman Buat Lingkungan memiliki prioritas lebih tinggi daripada konfigurasi di file |
Konfigurasi Pipeline | Secara default, setiap lingkungan sesuai dengan satu pipeline di Serverless Application Center. Anda dapat mengonfigurasi pipeline untuk lingkungan yang berbeda. |
Kemampuan multi-lingkungan yang disediakan oleh Serverless Application Center berkaitan erat dengan cabang kode di repositori. Praktik terbaik yang direkomendasikan adalah satu lingkungan sesuai dengan satu pipeline, dan satu pipeline sesuai dengan satu cabang. Sebagai contoh, Anda dapat membuat cabang dev untuk pengembangan pengujian, cabang test untuk lingkungan pengujian, dan cabang main/master untuk lingkungan produksi di repositori kode. Dengan cara ini, Anda dapat melakukan commit kode ke cabang yang berbeda untuk memicu pipeline, memastikan bahwa lingkungan diperbarui sesuai harapan. Anda juga dapat menggunakan fitur pull request (PR) dan merge request (MR) yang disediakan oleh repositori untuk menerapkan aliran kode dari cabang pengembangan ke cabang pengujian dan cabang utama.
Dalam skenario bisnis nyata, beberapa aplikasi mungkin menggunakan kode yang sama untuk pengguna yang berbeda. Dalam kasus ini, beberapa pipeline dapat dipicu melalui satu cabang kode, sehingga beberapa lingkungan dapat berlaku secara bersamaan setelah kode diperbarui.
Hapus Lingkungan
Masuk ke konsol Function Compute. Di panel navigasi sebelah kiri, klik Applications. Pada halaman Applications, temukan aplikasi yang ingin dihapus dan klik Delete di kolom Tindakan.
Anda mungkin perlu menghapus sumber daya saat menghapus lingkungan. Tentukan nama dan jenis sumber daya yang ingin dihapus sebelum melanjutkan. Hilangkan centang kotak di sebelah kiri sumber daya yang tidak ingin dihapus.

Gunakan lingkungan untuk mengisolasi layanan
Serverless Application Center menggunakan GitOps untuk menerapkan praktik terbaik DevOps. Repositori Git digunakan untuk mengelola infrastruktur aplikasi serta proses integrasi berkelanjutan dan pengiriman berkelanjutan (CI/CD). Repositori Git adalah satu-satunya sumber status aplikasi. Anda harus menggunakan file YAML yang memenuhi spesifikasi untuk menerapkan isolasi layanan berbasis lingkungan. Untuk informasi lebih lanjut tentang spesifikasi YAML, lihat Spesifikasi YAML.
Dalam banyak kasus, tanggung jawab pengembangan dan operasi & pemeliharaan dibagi di perusahaan. Kedua jenis peran memiliki pembagian tanggung jawab yang jelas. Biasanya, personel operasi & pemeliharaan mengelola infrastruktur perusahaan dan memberi otorisasi kepada pengembang untuk menggunakannya. Jika semua infrastruktur dikelola di repositori Git, personel operasi & pemeliharaan harus mengirimkan kode untuk mengubah infrastruktur, yang bertentangan dengan kebiasaan sebagian besar insinyur operasi & pemeliharaan. Oleh karena itu, Serverless Application Center menyediakan metode penyebaran berikut:
Metode 1:
Gunakan file YAML yang berbeda untuk lingkungan yang berbeda. Konfigurasikan pipeline di lingkungan dan gunakan file YAML yang ditentukan untuk penyebaran.

Pewarisan YAML didukung di Serverless Devs untuk mengurangi konfigurasi YAML yang berulang. Untuk informasi lebih lanjut, lihat Pewarisan YAML.
Metode 2:
Gunakan file YAML yang sama untuk lingkungan yang berbeda. Konfigurasikan variabel di pipeline untuk merujuk variabel di YAML dan menerapkan isolasi. Contoh kode:
vars: region: ${env(region)} service: name: demo-service-${env(prefix)} internetAccess: true logConfig: project: ${env(LOG_PROJECT)} logstore: fc-console-function-pre vpcConfig: securityGroupId: ${env(SG_ID)} vswitchIds: - ${env(VSWITCH_ID)} vpcId: ${env(VPC_ID)}Metode 3:
Gunakan file YAML yang sama untuk lingkungan yang berbeda dan gunakan informasi sumber daya lingkungan untuk mengonfigurasi layanan tertentu. Contoh kode berikut memberikan ilustrasi.
service: logConfig: project: ${environment.outputs.slsProject} logstore: ${environment.outputs.slsLogStore} vpcConfig: vpcId: ${environment.outputs.vpcId} securityGroupId: ${environment.outputs.securityGroupId} vswitchIds: - ${environment.outputs.vswitchId} nasConfig: userId: 10003 groupId: 10003 mountPoints: - serverAddr: ${environment.outputs.nasMountTargetId} nasDir: /fc-deploy-service fcDir: /mnt/auto
Metode penyebaran yang berbeda cocok untuk skenario yang berbeda:
Metode 1:
Sesuai untuk skenario di mana personel R&D dan operasi & pemeliharaan berasal dari tim yang sama dan semua personel memiliki izin pada file YAML. Metode ini efisien.
Metode 2:
Sesuai untuk skenario di mana perubahan infrastruktur jarang terjadi dan jumlah lingkungan sedikit. Personel operasi & pemeliharaan merencanakan sumber daya terlebih dahulu dan mengonfigurasi sumber daya dalam variabel lingkungan pipeline. Anda hanya perlu mendeklarasikan dan merujuk variabel lingkungan di file YAML. Metode ini sepenuhnya memisahkan tanggung jawab personel R&D dan operasi & pemeliharaan. Namun, metode ini sulit diperluas ketika sejumlah besar infrastruktur digunakan.
Metode 3:
Sesuai untuk pengembangan aplikasi serverless modern. Sebagai contoh, selama proses CI, lingkungan yang berbeda dapat dipicu untuk menarik sumber daya cloud, dan sumber daya lingkungan dapat dihapus setelah pengujian. Lingkungan dapat digunakan untuk mengaktifkan layanan dengan beberapa klik. Tanggung jawab personel R&D dan operasi & pemeliharaan dapat dibagi di lingkungan produksi. Izin akses pada sumber daya produksi dapat diberikan kepada personel R&D sesuai kebutuhan.