View a markdown version of this page

Tutorial: Terapkan ke instans Amazon EC2 dengan CodePipeline - AWS CodePipeline

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

Tutorial: Terapkan ke instans Amazon EC2 dengan CodePipeline

Tutorial ini membantu Anda membuat tindakan penerapan CodePipeline yang menerapkan kode Anda ke instans yang telah Anda konfigurasikan di Amazon EC2.

catatan

Sebagai bagian dari pembuatan pipeline di konsol, bucket artefak S3 akan digunakan oleh CodePipeline untuk artefak. (Ini berbeda dari bucket yang digunakan untuk aksi sumber S3.) Jika bucket artefak S3 berada di akun yang berbeda dari akun untuk pipeline Anda, pastikan bucket artefak S3 dimiliki oleh Akun AWS itu aman dan dapat diandalkan.

catatan

T EC2 indakan penerapan hanya tersedia untuk pipeline tipe V2.

Prasyarat

Ada beberapa sumber daya yang harus Anda miliki sebelum Anda dapat menggunakan tutorial ini untuk membuat pipeline CD Anda. Berikut adalah hal-hal yang Anda butuhkan untuk memulai:

catatan

Semua sumber daya ini harus dibuat dalam Wilayah yang sama AWS .

  • Repositori kontrol sumber (tutorial ini menggunakan GitHub) di mana Anda akan menambahkan script.sh file sampel.

  • Anda harus menggunakan peran CodePipeline layanan yang ada yang telah diperbarui dengan izin untuk tindakan ini. Untuk memperbarui peran layanan Anda, lihatIzin kebijakan peran layanan untuk tindakan penerapan EC2.

Setelah Anda memenuhi prasyarat ini, Anda dapat melanjutkan dengan tutorial dan membuat pipeline CD Anda.

Langkah 1: Buat instans Amazon EC2 Linux

Pada langkah ini, Anda membuat instans Amazon EC2 tempat Anda akan menerapkan aplikasi sampel. Sebagai bagian dari proses ini, buat peran instance di IAM, jika Anda belum membuat peran instans di Wilayah tempat Anda ingin membuat sumber daya.

Untuk membuat peran instance
  1. Buka konsol IAM di https://console.aws.amazon.com/iam/.

  2. Dari dasbor konsol, pilih Per an.

  3. Pilih Buat peran.

  4. Di bawah Pilih jenis entitas tepercaya, pilih Layanan AWS. Di bawah Pilih kasus penggunaan, pilih EC2. Di bawah Pilih kasus penggunaan Anda, pilih EC2. Pilih Berikutnya.

  5. Cari dan pilih kebijakan bernama AmazonSSMManagedEC2InstanceDefaultPolicy.

  6. Cari dan pilih kebijakan bernama AmazonSSMManagedInstanceCore. Pilih Berikutnya: Tanda.

  7. Pilih Berikutnya: Tinjau. Masukkan nama untuk peran (misalnya,EC2InstanceRole).

    catatan

    Catat nama peran Anda untuk langkah selanjutnya. Anda memilih peran ini saat Anda membuat instance Anda.

    catatan

    Anda akan menambahkan izin ke peran ini untuk mengizinkan akses ke bucket artefak S3 untuk pipeline Anda setelah pembuatan pipeline.

    Pilih Buat peran.

Untuk meluncurkan instans
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Dari navigasi samping, pilih Inst ans, dan pilih Luncur kan instance dari bagian atas halaman.

  3. Di Nama, masukkan MyInstances. Ini menetapkan instance tag Key dari Name dan tag Value of. MyInstances

  4. Di bawah Aplikasi dan Gambar OS (Amazon Machine Image), cari opsi Amazon Linux AMI dengan AWS logo, dan pastikan itu dipilih. (AMI ini digambarkan sebagai Amazon Linux 2 AMI (HVM) dan diberi label “Free tier”.)

  5. Di bawah Jenis instans, pilih t2.micro jenis yang memenuhi syarat tingkat gratis sebagai konfigurasi perangkat keras untuk instans Anda.

  6. Di bawah Pasangan kunci (login), pilih pasangan kunci atau buat satu.

  7. Di bawah Pengaturan jaringan, pastikan statusnya adalah Aktifkan.

  8. Perluas detail lanjutan. Di profil instance IAM, pilih peran IAM yang Anda buat dalam prosedur sebelumnya (misalnya,EC2InstanceRole).

    catatan

    Jangan biarkan peran instance kosong karena ini membuat peran default dan tidak memilih peran yang Anda buat.

  9. Di bawah Ringkasan, di bawah Jumlah instance, masukkan2.

  10. Pilih Luncurkan instans.

  11. Anda dapat melihat status peluncuran di halaman Instans. Saat Anda meluncurkan instans, status awalnya adalah pending. Setelah instans dimulai, statusnya berubah menjadi running, dan ia menerima nama DNS publik. (Jika kolom DNS Publik tidak ditampilkan, pilih Show/Hide ikon, lalu pilih DNS Publik.)

Langkah 2: Tambahkan izin bucket artefak ke peran instans EC2

Anda harus memperbarui peran instans EC2 yang Anda buat untuk instans agar dapat mengakses bucket artefak pipeline Anda.

catatan

Saat membuat instance, Anda membuat atau menggunakan peran instans EC2 yang ada. Untuk menghindari Access Denied kesalahan, Anda harus menambahkan izin bucket S3 ke peran instance untuk memberikan izin instance ke bucket CodePipeline artefak. Buat peran default atau perbarui peran Anda yang ada dengan s3:GetObject izin yang dicakup ke bucket artefak untuk Wilayah pipeline Anda.

  1. Arahkan ke pipeline Anda di CodePipeline konsol. Pilih Pengaturan. Lihat nama dan lokasi toko artefak untuk pipeline yang ada. Catat bucket artefak Amazon Resource Name (ARN) dan salin.

  2. Arahkan ke konsol IAM dan pilih Peran. Pilih peran instance yang Anda buat di Langkah 1 tutorial ini.

  3. Pada tab Izin, pilih Tambahkan kebijakan inline.

  4. Tambahkan JSON berikut ke dokumen kebijakan, mengganti nilai di Resource bidang dengan bucket ARN.

    { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::BucketName" }
  5. Pilih Perbarui.

Langkah 3: Tambahkan file skrip ke repositori Anda

Tempelkan teks sampel ini untuk membuat script.sh file Anda untuk langkah pasca-skrip dalam penerapan.

echo "Hello World!"
Untuk menambahkan script.sh berkas ke repositori sumber Anda
  1. Buka editor teks dan kemudian salin dan tempel file di atas ke file baru.

  2. Komit dan dorong script.sh file Anda ke repositori sumber Anda.

    1. Tambahkan file.

      git add .
    2. Lakukan perubahan.

      git commit -m "Adding script.sh."
    3. Dorong komit.

      git push

    Catat jalur di repositori Anda.

    /MyDemoRepo/test/script.sh

Langkah 4: Membuat pipeline Anda

Gunakan CodePipeline wizard untuk membuat tahapan pipeline Anda dan menghubungkan repositori sumber Anda.

Untuk membuat alur Anda
  1. Buka CodePipeline konsol di https://console.aws.amazon.com/codepipeline/.

  2. Pada halaman Selamat Datang, halaman Mem ulai, atau halaman Pipelines, pilih Buat pipeline.

  3. Pada Langkah 1: Pilih halaman opsi pembuatan, di bawah Opsi pembuatan, pilih opsi Build custom pipeline. Pilih Berikutnya.

  4. Di Langkah 2: Pilih pengaturan pipa, di Nama Pipeline, masukkanMyPipeline.

  5. CodePipeline menyediakan pipa tipe V1 dan V2, yang berbeda dalam karakteristik dan harga. Jenis V2 adalah satu-satunya jenis yang dapat Anda pilih di konsol. Untuk informasi selengkapnya, lihat Jenis jalur. Untuk informasi tentang penetapan harga untuk CodePipeline, lihat Harga.

  6. Di Peran layanan, pilih Gunakan peran layanan yang ada, lalu pilih peran CodePipeline layanan yang telah diperbarui dengan izin yang diperlukan untuk tindakan ini. Untuk mengonfigurasi peran CodePipeline layanan Anda untuk tindakan ini, lihatIzin kebijakan peran layanan untuk tindakan penerapan EC2.

  7. Biarkan pengaturan di bawah Peng aturan lanj utan pada defaultnya, lalu pilih Ber ikutnya.

  8. Pada Langkah 3: Tambahkan halaman tahap sumber, tambahkan tahap sumber:

    1. Di penyedia Sumber, pilih GitHub (melalui GitHub Aplikasi).

    2. Di bawah Koneksi, pilih koneksi yang ada atau buat yang baru. Untuk membuat atau mengelola koneksi untuk tindakan GitHub sumber Anda, lihatGitHub koneksi.

    3. Di Nama Repositori, pilih nama GitHub repositori Anda.

    Pilih Berikutnya.

  9. Pada Langkah 4: Tambahkan halaman tahap pembuatan, pilih Le wati.

  10. Pada halaman Langkah 5: Tambahkan tahap penerapan, pilih EC2.

    Tambahkan tindakan penerapan EC2 ke pipeline Anda.
    1. Untuk direktori Target, masukkan direktori pada instance yang ingin Anda terapkan, seperti/home/ec2-user/testhelloworld.

      catatan

      Tentukan direktori penerapan yang ingin tindakan digunakan pada instance. Tindakan ini akan mengotomatiskan pembuatan direktori yang ditentukan pada instance sebagai bagian dari penerapan.

    2. Untuk PostScript, masukkan jalur dan nama file untuk skrip Anda, sepertitest/script.sh.

    3. Pilih Berikutnya.

  11. Pada halaman Langkah 6: Tinjau, tinjau konfigurasi pipeline Anda dan pilih Buat pipeline untuk membuat pipeline.

    Diagram konsol yang menunjukkan proses pipeline yang berhasil dengan tindakan penerapan ditambahkan ke pipeline Anda.
  12. Setelah pipeline berjalan dengan sukses, pilih Lihat detail untuk melihat log pada tindakan untuk melihat keluaran tindakan komputasi terkelola.

    Lihat log untuk tindakan penerapan Amazon EC2 di pipeline Anda.
    Lihat halaman kedua log untuk tindakan penerapan Amazon EC2 di pipeline Anda.

Langkah 5: Uji Pipeline Anda

Pipeline Anda harus memiliki segalanya untuk menjalankan penerapan AWS berkelanjutan asli ujung ke ujung. Sekarang, uji fungsinya dengan mendorong perubahan kode ke repositori sumber Anda.

Untuk menguji pipeline Anda
  1. Buat perubahan kode ke repositori sumber yang dikonfigurasi, komit, dan dorong perubahan.

  2. Buka CodePipeline konsol di https://console.aws.amazon.com/codepipeline/.

  3. Pilih pipeline Anda dari daftar.

  4. Perhatikan kemajuan pipa melalui tahapannya. Pipeline Anda harus selesai dan tindakan Anda menerapkan skrip pada instans Anda.

  5. Untuk informasi pemecahan masalah selengkapnya, lihat Tindakan EC2 Deploy gagal dengan pesan kesalahan Tidak ada file seperti itu.