Alibaba Cloud Compute Nest adalah platform terpadu yang menyederhanakan penyebaran perangkat lunak di cloud. Anda dapat mengonfigurasi repositori Git agar sesuai dengan spesifikasi layanan Compute Nest untuk menerapkan perangkat lunak secara otomatis ke cloud. Compute Nest menyediakan templat resmi untuk berbagai arsitektur dan jenis penyebaran. Anda dapat menyalin dan menyesuaikan templat ini dari repositori resmi Compute Nest. Selanjutnya, gunakan Konsol Compute Nest untuk membuat dan menerbitkan layanan, yang akan menerapkan perangkat lunak Anda ke cloud. Topik ini menjelaskan cara membuat repositori Git yang sesuai dengan spesifikasi Compute Nest.
Konfigurasikan repositori Git
Pengembang perangkat lunak biasanya memelihara repositori mereka sendiri di platform seperti GitHub, GitLab, atau Gitee. Penyebaran perangkat lunak sering kali memerlukan penyiapan server dan pembuatan lingkungan secara manual. Alibaba Cloud Compute Nest menyediakan platform terpadu untuk penyebaran perangkat lunak berbasis cloud. Dengan mengonfigurasi repositori Anda agar sesuai dengan spesifikasi layanan Compute Nest, Anda dapat menerapkan perangkat lunak secara otomatis ke cloud sebagai aplikasi berbasis cloud. Jika Anda tidak memiliki repositori, Anda dapat menyalin templat dari repositori resmi Compute Nest ke akun Anda.
Repositori resmi yang direkomendasikan
Hingga 28 Februari 2024, Compute Nest menyediakan 8 templat layanan privat dan 5 templat layanan terkelola sepenuhnya. Templat-templat ini mencakup berbagai skenario arsitektur.
Jenis Layanan | Nama Templat | Arsitektur | Tipe Penyebaran | Alamat GitHub |
Layanan privat | Spring Boot package untuk ECS Edisi Dasar | ECS Tunggal | Paket (penyebaran file) | https://github.com/aliyun-computenest/springboot-ecs-package-demo.git |
Spring Boot image untuk ECS Edisi Dasar | ECS Tunggal | Penyebaran Citra ECS | https://github.com/aliyun-computenest/springboot-ecs-image-demo.git | |
kodbox untuk Function Compute | Layanan FC | Tidak ada | ||
WordPress | Edisi Dasar: ECS + RDS Edisi Ketersediaan Tinggi: Beberapa Instance ECS + RDS + SLB + EIP | Paket (penyebaran file) | https://github.com/aliyun-computenest/wordpress-ecs-demo.git | |
Spring Boot package untuk ECS dengan Penyesuaian Skala Otomatis | ECS + SLB + EIP + ESS | Paket (penyebaran file) | https://github.com/aliyun-computenest/springboot-scaling-ecs-demo.git | |
Spring Boot untuk Kontainer ACK | ACK + SLB + EIP | Citra Kontainer | https://github.com/aliyun-computenest/springboot-ack-docker-demo.git | |
Spring Boot untuk Kontainer ECS | ECS Tunggal | Citra Kontainer | https://github.com/aliyun-computenest/springboot-ecs-docker-demo.git | |
Spring Boot untuk ACK Helm | ACK + SLB + EIP | Citra Kontainer, Penyebaran Helm Chart | https://github.com/aliyun-computenest/springboot-ack-helm-demo.git | |
Layanan terkelola sepenuhnya untuk penyewa tunggal | Spring Boot edisi terkelola untuk penyewa tunggal | ECS + RDS + EIP | Paket (penyebaran file) | https://github.com/aliyun-computenest/springboot-managed-demo.git |
Arsitektur ECS + SLB untuk MySQL (mendukung PrivateLink) | ECS + SLB | Paket (penyebaran file) | https://github.com/aliyun-computenest/mysql-managed-demo.git | |
Edisi terkelola WordPress untuk penyewa tunggal pada ECS | ECS + MySQL lokal + EIP | Paket (penyebaran file) | https://github.com/aliyun-computenest/wordpress-managed-demo.git | |
Edisi terkelola WordPress untuk penyewa ganda pada ACK | ACK + MySQL lokal | Tidak ada artefak penyebaran. Pod diterapkan menggunakan YAML. | https://github.com/aliyun-computenest/wordpress-managed-ack-demo.git | |
Edisi terkelola MariaDB untuk penyewa ganda pada ACK | ACK + MariaDB lokal | Tidak ada artefak penyebaran. Pod diterapkan menggunakan YAML. | https://github.com/aliyun-computenest/mariadb-managed-ack-demo.git |
Deskripsi direktori dan file repositori
Bagian ini menggunakan repositori edisi terkelola WordPress untuk penyewa tunggal pada ECS sebagai contoh untuk menjelaskan direktori dan file dalam repositori. Tinjau fungsi setiap file untuk memastikan bahwa Anda dapat menyematkan perangkat lunak Anda dengan benar.
wordpress-managed-demo
├── README.md - README
├── docs - File dokumentasi layanan
│ └── index.md
├── resources - File sumber daya layanan
│ ├── icons
│ │ └── service_logo.png - Ikon layanan default
│ └── artifact_resources - File sumber daya untuk artefak
│ └── file - Direktori untuk artefak file
│ ├── epel-release-latest-7.noarch.rpm - Paket instalasi EPEL
│ ├── remi-release-7.rpm - Paket instalasi Remi
│ └── wordpress-6.2-zh_CN.tar.gz - Artefak file WordPress
├── ros_templates - Template ROS layanan. Banyak template dapat disertakan.
│ └── cluster.yaml - Template ROS untuk Edisi Kluster
│ └── template.yaml - Template ROS untuk Edisi Dasar
├── config.yaml - File konfigurasi layanan. Alat baris perintah Compute Nest (computenest-cli) menggunakan file ini untuk membangun layanan.
├── preset_parameters.yaml - Parameter preset untuk penyedia layanan, seperti VpcId dan VSwitchId. Isi dari template ROS dirender sebagai formulir untuk penyedia isi.Konfigurasikan file config.yaml
File ini merupakan konfigurasi inti yang digunakan oleh computenest-cli untuk membangun layanan. Dalam file ini, Anda dapat menentukan konfigurasi layanan. Computenest-cli kemudian memanggil Compute Nest OpenAPI yang sesuai dan melewati parameter yang ditentukan. Selama pembuatan layanan, API dipanggil untuk membuat layanan Compute Nest, artefak penyebaran, serta citra ECS jika Anda menggunakan penyebaran berbasis citra.
Service:
RegionId: cn-hangzhou # Wilayah tempat layanan diterapkan.
DeployType: ros # Jenis penyebaran. Ini menggunakan Resource Orchestration Service (ROS).
TenantType: SingleTenant # Jenis penyewa. Ini adalah layanan penyewa tunggal.
DeployMetadata: # Konfigurasi metadata penyebaran.
ServiceInstanceNameRule:
Prefix: wp # Awalan untuk nama instans layanan.
SupplierDeployMetadata: # Metadata penyebaran penyedia.
RoleName: ${RoleName} # Nama peran yang digunakan.
UserType: Aliyun # Jenis pengguna. Ini adalah pengguna Alibaba Cloud.
SupplierTemplateConfigs: # Array konfigurasi template penyedia.
- Name: Edisi Ketersediaan Tinggi # Nama template.
Url: 'templates/template.yaml' # URL file template.
PredefinedParameters: [] # Daftar parameter yang telah ditentukan sebelumnya.
HiddenParameterKeys: # Daftar kunci parameter tersembunyi.
- VpcId
- VSwitchId
- ZoneId
ParameterMappings: # Konfigurasi pemetaan parameter.
- ParameterKey: RegionId
ParameterMappingKeys: # Kunci pemetaan parameter.
- VpcId
- ZoneId
- VSwitchId
ParameterValueMapping: # Konfigurasi pemetaan nilai parameter. Ini menentukan nilai parameter untuk wilayah.
cn-hangzhou:
Parameters:
VpcId: ${VpcId}
ZoneId: ${ZoneId}
VSwitchId: ${VSwitchId}
FileArtifactRelation: # Konfigurasi asosiasi artefak penyebaran file.
'{{ computenest::file::wordpress }}': # Pengenal untuk asosiasi artefak penyebaran file. Anda dapat menggunakan pengenal ini di templates/template.yaml untuk menentukan artefak penyebaran.
ArtifactId: ${Artifact.Artifact_1.ArtifactId} # ID artefak penyebaran file.
ArtifactVersion: ${Artifact.Artifact_1.ArtifactVersion} # Versi artefak penyebaran file.
TemplateConfigs: # Array konfigurasi template.
- Name: Edisi Ketersediaan Tinggi
Url: templates/parameters.yaml # URL file template parameter.
AllowedRegions: # Daftar wilayah yang diizinkan.
- cn-hangzhou
ServiceType: managed # Jenis layanan. Ini adalah layanan terkelola.
ServiceInfo: # Konfigurasi informasi layanan.
Locale: en-US # Konfigurasi lokal. Ini untuk Bahasa Inggris (AS).
ShortDescription: Demo WordPress # Deskripsi singkat.
Image: 'icons/service_logo.jpg' # Ikon layanan.
Name: Edisi Terkelola WordPress # Nama layanan.
ShareType: Public # Jenis berbagi. Ini adalah layanan publik.
ApprovalType: Manual # Jenis persetujuan. Ini memerlukan persetujuan manual.
Artifact: # Konfigurasi artefak penyebaran. Setelah dikonfigurasi, artefak penyebaran Compute Nest yang sesuai dibangun.
Artifact_1:
ArtifactType: File # Jenis artefak penyebaran. Ini adalah file.
ArtifactName: WordPress # Nama artefak penyebaran.
Description: WordPress # Deskripsi.
ArtifactProperty: # Konfigurasi properti artefak penyebaran.
RegionId: cn-hangzhou # Wilayah tempat artefak penyebaran berada.
Url: 'artifacts/wordpress-6.2-en_US.tar.gz' # URL file artefak penyebaran.Terbitkan layanan
Setelah mengonfigurasi repositori, Anda dapat masuk ke Konsol Compute Nest dan membuat layanan langsung dari repositori untuk menerapkan perangkat lunak Anda ke cloud.