

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# CI/CD aktif AWS
<a name="cicd-on-aws"></a>

CI/CD dapat digambarkan sebagai pipeline, di mana kode baru dikirimkan di satu ujung, diuji melalui serangkaian tahapan (sumber, build, pengujian, pementasan, dan produksi), dan kemudian diterbitkan sebagai kode siap produksi.

![\[Diagram yang menggambarkan contoh pipa AWS kode\]](http://docs.aws.amazon.com/id_id/whitepapers/latest/cicd_for_5g_networks_on_aws/images/cicd_5g2.png)


*Ikhtisar pipa CICD*

Setiap tahap CI/CD pipa disusun sebagai unit logis dalam proses pengiriman. Setiap tahap bertindak sebagai gerbang yang memeriksa aspek tertentu dari kode. Ketika kode berkembang melalui pipeline, asumsinya adalah bahwa kualitas kode lebih tinggi pada tahap selanjutnya, karena lebih banyak aspek terus diverifikasi. Masalah yang ditemukan pada tahap awal menghentikan kode agar tidak berkembang melalui pipa. Hasil dari tes segera dikirim ke tim, dan semua build dan rilis lebih lanjut dihentikan jika perangkat lunak tidak lulus panggung.

AWS membawa satu set lengkap alat CI/CD pengembang untuk mempercepat pengembangan perangkat lunak dan siklus rilis. [AWS CodePipeline](https://aws.amazon.com/codepipeline/)mengotomatiskan fase build, test, dan deploy dari proses rilis setiap kali ada perubahan kode, berdasarkan model rilis yang ditentukan. Ini memungkinkan pengiriman fitur dan pembaruan yang cepat dan andal. 

Pipa kode dapat diintegrasikan dengan layanan lain. Ini bisa berupa AWS Layanan, seperti [Amazon Simple Storage Service](https://aws.amazon.com/s3/) (Amazon S3), atau produk pihak ketiga, seperti. GitHub AWS CodePipeline dapat mengatasi berbagai kasus penggunaan pengembangan dan operasi termasuk:
+ Mengompilasi, membangun, dan menguji kode dengan [AWS CodeBuild](https://aws.amazon.com/codebuild/)
+ Pengiriman berkelanjutan aplikasi berbasis kontainer ke cloud
+ Validasi pra-penerapan artefak (seperti deskriptor dan gambar kontainer) yang diperlukan untuk layanan jaringan atau fungsi jaringan cloud-native tertentu
+ Tes fungsional, integrasi, dan kinerja untuk fungsi jaringan function/virtual jaringan kontainerisasi (CNF/VNF), termasuk pengujian baseline dan regresi
+ Pengujian reliabilitas dan pemulihan bencana (DR).

![\[Diagram yang menggambarkan komponen pipa AWS CICD\]](http://docs.aws.amazon.com/id_id/whitepapers/latest/cicd_for_5g_networks_on_aws/images/cicd_5g3.png)


*AWS Komponen pipa CICD*

AWS dapat mengatur CI/CD saluran pipa menggunakan Alat AWS Pengembang berikut:
+ [AWS CodeCommit](https://aws.amazon.com/codecommit/)
+ [AWS CodeBuild](https://aws.amazon.com/codebuild/)
+ [AWS CodePipeline](https://aws.amazon.com/codepipeline/)
+ [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)
+ [Amazon Elastic Container Registry](https://aws.amazon.com/ecr/)
+ [AWS CodeStar](https://aws.amazon.com/codestar/)

Pembuatan pipa CI/CD dapat diotomatisasi menggunakan [AWS CDK](https://aws.amazon.com/cdk/)dan. [CloudFormation](https://aws.amazon.com/cloudformation/) Dalam domain NFV, otomatisasi AWS asli ini dapat diintegrasikan ke dalam kerangka Management and Orchestration (MANO) dan kerangka kerja orkestrasi layanan CSP. 

 CI/CD Prosesnya meliputi langkah-langkah berikut:
+ Pengaturan jaringan — AWS CDK dan CloudFormation memulai pembuatan prasyarat jaringan:
+ Tumpukan jaringan (VPC, subnet, gateway terjemahan alamat jaringan (NAT), tabel rute, dan gateway internet)
+ Penyebaran infrastruktur — AWS CDK dan CloudFormation memulai pembuatan tumpukan sumber daya berikut:
+ Tumpukan komputasi (pembuatan klaster [Amazon Elastic Kubernetes](https://aws.amazon.com/eks/) Service (Amazon EKS), node EKS Worker,) [AWS Lambda](https://aws.amazon.com/lambda/)
+ Tumpukan penyimpanan (ember Amazon S3, volume [Amazon Elastic Block Store (](https://aws.amazon.com/ebs)Amazon EBS), dan Amazon [Elastic File System (Amazon EFS](https://aws.amazon.com/efs/)) 
+ Tumpukan pemantauan ([ CloudWatch](https://aws.amazon.com/cloudwatch/), [ OpenSearch Layanan Amazon](https://aws.amazon.com/opensearch-service/) (OpenSearch Layanan) 
+ Tumpukan keamanan ([AWS Identity and Access Management](https://aws.amazon.com/iam/)(AWS IAM), grup keamanan [Amazon Elastic Compute Cloud](https://aws.amazon.com/ec2) EC2 (Amazon), daftar kontrol [akses jaringan](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) VPC () NACLs 
+ **Penyebaran Cloud Network Function (CNF)** — Pada tahap ini, CNF diterapkan ke cluster EKS menggunakan alat bagan [Kubectl](https://kubernetes.io/docs/reference/kubectl/overview/) dan Helm. [Tahap ini juga menyebarkan aplikasi atau alat khusus yang dibutuhkan oleh CNFs untuk bekerja secara efisien (seperti [Prometheus](https://prometheus.io/) atau Fluentd).](https://www.fluentd.org/) CNFs dapat digunakan melalui fungsi Lambda atau dengan. AWS CodeBuild
+ Pembaruan dan penyebaran berkelanjutan - Ini adalah urutan langkah yang dilakukan secara berulang untuk menerapkan perubahan yang merupakan bagian dari container/configuration perubahan yang menghasilkan peningkatan. [Mirip dengan kasus penyebaran CNF, pembaruan dan penyebaran berkelanjutan dapat diotomatisasi menggunakan AWS Layanan, dengan pemicu dari, [AWS CodeCommit](https://aws.amazon.com/codecommit/)Amazon [Elastic Container Registry (](https://aws.amazon.com/ecr/)Amazon ECR), atau sistem sumber pihak ketiga seperti Webhooks. GitLab ](https://docs.gitlab.com/ee/user/project/integrations/webhooks.html)

![\[Diagram yang menggambarkan aliran AWS pipa CICD.\]](http://docs.aws.amazon.com/id_id/whitepapers/latest/cicd_for_5g_networks_on_aws/images/cicd_5g4.png)


*Diagram alir pipa AWS CICD*

 CI/CD Pipeline dibangun menggunakan [AWS CodePipeline](https://aws.amazon.com/codepipeline/), dan menggunakan layanan pengiriman berkelanjutan yang memodelkan, memvisualisasikan, dan mengotomatiskan langkah-langkah yang diperlukan untuk merilis perangkat lunak. Dengan mendefinisikan tahapan dalam pipeline, Anda dapat mengambil kode dari repositori kode sumber, membangun kode sumber itu menjadi artefak yang dapat dirilis, menguji artefak, dan menerapkannya ke produksi. Hanya kode yang berhasil melewati semua tahapan ini yang akan digunakan. Anda dapat menambahkan persyaratan lain secara opsional ke pipeline Anda, seperti persetujuan manual, untuk membantu memastikan bahwa hanya perubahan yang disetujui yang diterapkan ke produksi.