AWS CloudFormation Server Bahasa - AWS CloudFormation

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

AWS CloudFormation Server Bahasa

Server AWS CloudFormation Bahasa menyediakan kemampuan untuk mempercepat authoring infrastructure-as-code (IAc) dan menyebarkan AWS sumber daya dengan aman dan percaya diri. Ini mengikuti protokol server bahasa (LSP) untuk menyediakan dokumentasi tentang hover, pelengkapan otomatis, diagnostik melalui validasi statis, pergi ke definisi dan tindakan kode. Selain kemampuan server bahasa tradisional ini, server menambahkan fitur online untuk mengeksplorasi dan menyebarkan AWS sumber daya melalui CloudFormation. Ini termasuk kemampuan untuk memvalidasi dan menyebarkan template menggunakan set perubahan; melihat perbedaan tumpukan, peristiwa, sumber daya, dan output; daftar tumpukan dan telusuri sumber daya berdasarkan jenis; dan masukkan status sumber daya langsung langsung ke templat. CloudFormation

IDEs Integrasi dengan Server AWS CloudFormation Bahasa

AWS menyediakan off-the-shelf integrasi dengan Server CloudFormation Bahasa melalui AWS Toolkit untuk hal-hal berikut: IDEs

Berikut ini IDEs juga mendukung Server CloudFormation Bahasa:

  • Kiro

  • Kursor

  • Sebagian besar garpu dan distribusi VS Code

Server CloudFormation Bahasa mematuhi Protokol Server Bahasa (LSP) dan oleh karena itu integrasi lain dapat dikonfigurasi. Untuk petunjuk tentang mengintegrasikan server bahasa dengan editor lain, lihat panduan instalasi.

Memulai

Prasyarat

Sebelum Anda mulai, pastikan bahwa:

  • Anda menggunakan IDE yang didukung pada sistem operasi yang didukung (macOS,Windows, atauLinux).

  • Anda telah menginstal atau meningkatkan ke versi terbaru dari AWS Toolkit untuk IDE Anda.

Beberapa fitur di Server AWS CloudFormation Bahasa memerlukan kredensi aktif Akun AWS dan dikonfigurasi. Anda harus masuk ke Anda Akun AWS melalui AWS Toolkit menggunakan kredensil yang valid.

Langkah 1: Instal atau tingkatkan AWS Toolkit

Instal atau perbarui ke versi terbaru AWS Toolkit dari ekstensi IDE atau pengelola plugin Anda, lalu mulai ulang IDE Anda.

Setelah instalasi, AWS Toolkit secara otomatis mengaktifkan dukungan CloudFormation IDE. Saat pertama kali menginstal atau memutakhirkan AWS Toolkit dengan Server AWS CloudFormation Bahasa, Anda diminta untuk memberikan izin AWS untuk mengumpulkan data penggunaan anonim. Data ini membantu AWS meningkatkan Server CloudFormation Bahasa dan meningkatkan pengalaman penulisan. Tidak ada informasi sensitif yang dikumpulkan dan AWS tidak merekam atau menyimpan konten templat, konfigurasi sumber daya, atau data pelanggan yang dapat diidentifikasi. Anda dapat mengubah preferensi telemetri kapan saja dari pengaturan IDE. Mulai ulang IDE agar perubahan diterapkan. Data penggunaan yang dikumpulkan hanya berfokus pada interaksi fitur dan metrik kinerja. Wawasan ini membantu AWS mengidentifikasi dan memprioritaskan peningkatan seperti validasi yang lebih cepat, pelengkapan otomatis yang disempurnakan, dan diagnostik kesalahan yang lebih baik.

Langkah 2: Akses CloudFormation di AWS Toolkit

Setelah menginstal AWS Toolkit, buka CloudFormation panel di IDE Anda. Di VS Code, buka panel AWS Toolkit dari bilah aktivitas dan pilih CLOUDFORMATION. Masuk JetBrains IDEs, buka jendela alat AWS Toolkit dari bilah samping dan pilih CloudFormationtab.

CloudFormation Panel berisi bagian-bagian berikut:

  • Wilayah: Menampilkan arus AWS Region. Di VS Code, Anda dapat mengubahnya dengan memilih nama Region atau dengan menggunakan perintah AWS CloudFormation: Select Region dari palet perintah. Di JetBrains IDEs, Wilayah dikonfigurasi melalui pengaturan koneksi AWS Toolkit.

  • Tumpukan: Menampilkan daftar CloudFormation tumpukan paginasi di akun Anda. Perluas tumpukan untuk melihat node Change Sets, yang mencantumkan set perubahan yang terkait dengan tumpukan itu. Gunakan tindakan View Stack Detail untuk membuka tampilan detail tumpukan, yang menampilkan ikhtisar tumpukan, peristiwa, output, dan sumber daya.

  • Sumber Daya: Setelah Anda menambahkan jenis sumber daya, panel akan menampilkan AWS sumber daya dari jenis itu di akun Anda. Anda dapat melihat, menyegarkan, menyalin, atau mengimpornya ke template Anda.

Di JetBrains IDEs, bilah alat di atas pohon menyediakan akses cepat ke tindakan umum termasuk Validasi dan Terapkan, Jalankan Ulang Validasi dan Terapkan, Tambahkan Jenis Sumber Daya, dan Segarkan. Tindakan juga tersedia melalui menu konteks klik kanan pada node pohon.

Langkah 3: Validasi, uji, dan perbaiki template Anda

Saat Anda menulis CloudFormation template Anda, IDE menyediakan bantuan penulisan cerdas untuk membantu Anda membuat infrastruktur yang akurat dan sesuai dengan lebih cepat. Server CloudFormation Bahasa berjalan di latar belakang dan menyediakan fitur authoring berikut:

  • Penyelesaian kode: Menyarankan jenis sumber daya, parameter, dan properti berdasarkan CloudFormation skema.

  • Tambahkan AWS sumber daya yang ada: Memungkinkan Anda mengimpor sumber daya yang ada dari template Anda Akun AWS ke dalam template Anda. IDE menggunakan AWS Cloud Control API (CCAPI) untuk mengambil konfigurasi langsung dan properti sumber daya, membantu Anda mengkloning atau menggunakan kembali infrastruktur yang ada dalam template Anda.

  • Ekstrak ke parameter: Ketika kursor Anda berada pada nilai literal dalam templat (misalnya, string sepertit2.micro), IDE menawarkan tindakan refactoring untuk mengekstrak nilai ke dalam Parameters bagian dan mengganti literal dengan a !Ref ke parameter baru. Jika nilai literal yang sama muncul di beberapa tempat, Anda dapat memilih untuk mengekstrak semua kejadian sekaligus.

Untuk menambahkan sumber daya ke template Anda

  • Tambahkan jenis sumber daya: Di CloudFormation panel AWS Toolkit, di bawah Sumber Daya, tambahkan jenis sumber daya untuk ditelusuri. Di VS Code, klik ikon Add + atau gunakan perintah AWS CloudFormation: Add Resource Types dari palet perintah. Di JetBrains, klik tombol Add Resource Type di toolbar atau klik kanan node Resources.

  • Cari jenis sumber daya: Dalam dialog pencarian, ketik jenis AWS sumber daya yang ingin Anda tambahkan. Contoh:

    • AWS::S3::Bucket

    • AWS::Lambda::Function

  • Jelajahi sumber daya: Di bawah bagian Sumber Daya, daftar sumber AWS daya yang terdeteksi di akun Anda ditampilkan. Jika Anda memiliki banyak sumber daya, hanya halaman pertama yang ditampilkan. Gunakan kontrol navigasi untuk menelusuri halaman tambahan dan melihat semua sumber daya yang tersedia.

  • Pilih sumber daya yang ingin Anda sertakan dalam template Anda.

  • Anda dapat menyisipkan sumber daya ke dalam template Anda dengan dua cara, tergantung pada tujuan Anda:

    • Mengkloning sumber daya yang ada: Buat sumber daya baru di template Anda menggunakan konfigurasi langsung dan properti AWS sumber daya yang ada.

    • Impor sumber daya yang ada: Masukkan sumber daya aktual ke tumpukan Anda dengan menambahkannya ke template Anda menggunakan status langsungnya.

Kiat

  • Anda dapat menyegarkan bagian Sumber daya kapan saja untuk melihat daftar sumber daya terbaru yang tersedia di akun atau Wilayah Anda.

  • Jika Anda mengimpor sumber daya, jangan menambahkan sumber daya yang sudah menjadi milik CloudFormation tumpukan yang ada di akun yang sama.

  • Untuk mengonfirmasi apakah sumber daya sudah dikelola oleh CloudFormation, gunakan tindakan informasi di sebelah sumber daya. Di VS Code, klik ikon i. Di JetBrains IDEs, klik kanan sumber daya dan pilih Dapatkan Info Manajemen Stack.

Di VS Code, Anda dapat menambahkan sumber daya terkait ke sumber daya yang dipilih dengan menggunakan perintah AWS CloudFormation: Tambahkan Sumber Daya Terkait menurut Jenis. Setelah Anda memilih jenis sumber daya dari yang sudah ditentukan dalam template Anda, IDE menampilkan daftar sumber daya yang biasanya terkait dengan atau bergantung pada jenis itu. Misalnya, jika Anda memilihAWS::EC2::Instance, IDE mungkin menyarankan untuk menambahkan sumber daya terkait seperti AWS::EC2::SecurityGroup atauAWS::EC2::Subnet. Fitur ini membantu Anda membangun komponen infrastruktur yang terhubung dengan cepat tanpa mencari jenis sumber daya yang kompatibel secara manual. Fitur ini saat ini tidak didukung di JetBrains IDEs.

Validasi statis

Server CloudFormation Bahasa menyediakan validasi statis bawaan yang didukung oleh AWS CloudFormation Linter (cfn-lint) dan. AWS CloudFormation Guard Validasi ini berjalan di belakang layar saat Anda membuat templat, membantu Anda mengidentifikasi kesalahan sintaks, kesenjangan kepatuhan, dan masalah praktik terbaik sebelum penerapan.

Ikhtisar validasi statis

Anda akan melihat dua jenis validasi statis real-time di IDE:

  • CloudFormation Linter (cfn-lint): Memvalidasi template Anda terhadap spesifikasi CloudFormation sumber daya dan aturan skema.

  • Guard (cfn-guard): Memvalidasi template Anda terhadap aturan kepatuhan dan paket kebijakan organisasi.

CloudFormation Linter (cfn-serat)

CloudFormation Linter terintegrasi ke dalam IDE untuk secara otomatis memeriksa sintaks dan struktur template Anda saat Anda mengetik.

  • Validasi skema: Mendeteksi kesalahan sintaks dan skema untuk memastikan templat Anda sesuai dengan skema sumber daya. CloudFormation

  • Penyorotan kesalahan: Menampilkan penanda sebaris dalam masalah, mewakili pemblokir penerapan atau peringatan.

  • Bantuan arahkan kursor: Saat Anda mengarahkan kursor ke kesalahan, IDE akan menampilkan pesan diagnostik yang terkait dengan masalah tersebut. Jika perbaikan cepat tersedia, itu juga ditawarkan.

Integrasi penjaga

Guard memvalidasi template Anda terhadap set aturan yang menentukan kepatuhan dan kebijakan keamanan. IDE menjalankan validasi Guard secara real time melalui Server CloudFormation Bahasa, memberi Anda umpan balik langsung saat Anda membuat templat.

  • Paket aturan default: IDE menyertakan seperangkat aturan Penjaga yang telah terdaftar sebelumnya yang berfokus pada praktik terbaik dasar untuk keamanan sumber daya dan kebersihan konfigurasi. Untuk mempelajari lebih lanjut, lihat registri aturan penjaga.

  • Menambahkan paket aturan: Untuk menambah atau memodifikasi set aturan, buka pengaturan IDE Anda dan arahkan ke bagian konfigurasi Guard untuk memilih atau mengunggah paket aturan Guard tambahan.

Tips: Memahami indikator diagnostik

  • Indikator biru: Petunjuk praktik terbaik atau rekomendasi pengoptimalan.

  • Indikator kuning: Peringatan untuk masalah non-pemblokiran (misalnya, tag atau parameter yang hilang).

  • Indikator merah: Pemblokir penerapan seperti nama properti yang tidak valid, bidang wajib yang hilang, atau ketidakcocokan skema.

Langkah 4: Arahkan melalui template

IDE menyediakan tampilan terstruktur dan hierarkis dari CloudFormation template Anda, yang disusun menjadi beberapa bagian sepertiParameters,,Resources, dan OutputsMappings, menampilkan setiap jenis sumber daya dan ID logis. Ini memudahkan untuk menemukan dan menavigasi dengan cepat ke sumber daya atau parameter tertentu dalam templat besar. Di VS Code, panel Outline di sidebar Explorer menampilkan struktur ini. Di JetBrains IDEs, buka jendela Structure tool untuk melihat struktur template untuk file yang sedang terbuka.

Anda dapat menggunakan Go to Definition untuk fungsi intrinsik seperti GetAtt danRef, memungkinkan Anda untuk melompat langsung ke sumber daya atau parameter yang direferensikan di template Anda. Ini membantu Anda melacak dependensi, memahami hubungan sumber daya, dan melakukan pengeditan dengan lebih efisien.

Langkah 5: Validasi dan terapkan

Ketika Anda siap untuk menerapkan CloudFormation template Anda, gunakan fitur Validasi dan Deploy untuk membuat set perubahan. IDE memvalidasi template Anda, dan jika tidak ada kesalahan pemblokiran yang ditemukan, ia melanjutkan untuk membuat set perubahan sadar drift. IDE kemudian menampilkan tampilan diff sehingga Anda dapat meninjau semua perubahan yang diusulkan sebelum menjalankan set perubahan.

Di VS Code, buka palet perintah dan jalankan AWS CloudFormation: Validate and Deploy. Palet perintah memandu Anda dalam memilih templat, nama tumpukan, parameter, kemampuan, dan opsi penerapan lainnya selangkah demi selangkah. Di JetBrains IDEs, gunakan tombol Validasi dan Terapkan toolbar, klik kanan file template di editor, atau klik kanan tumpukan di pohon. JetBrains menyajikan dialog wizard tempat Anda mengonfigurasi semua opsi penerapan termasuk pemilihan templat, nama tumpukan, parameter, kemampuan, tag, dan opsi lanjutan.

Bagaimana validasi bekerja

IDE secara otomatis melakukan pemeriksaan validasi sebelum penerapan dan memvalidasi template Anda terhadap penyebab kegagalan umum, termasuk:

  • Ketidakcocokan sintaks properti atau skema yang tidak valid: Masalah ini biasanya tertangkap cfn-lint selama penulisan, tetapi jika Anda melanjutkan untuk menerapkan tanpa mengatasinya, CloudFormation validasi waktu penerapan akan menampilkan kesalahan yang sama sebelum tumpukan dibuat atau diperbarui.

  • Nama sumber daya bertentangan dengan sumber daya yang ada di akun Anda.

  • Kendala khusus layanan, seperti konflik nama bucket S3 atau enkripsi yang hilang.

Jika validasi mendeteksi kesalahan, IDE menyoroti masalah secara langsung di template Anda dan mencantumkan kesalahan di panel diagnostik. Setiap masalah mencakup properti atau sumber daya tertentu yang menyebabkan kegagalan, bersama dengan perbaikan yang disarankan. Jika tidak ada kesalahan pemblokiran, Anda dapat melanjutkan ke fase penerapan.

Jika peringatan ditemukan (masalah non-pemblokiran), dialog akan muncul yang memungkinkan Anda untuk melanjutkan penerapan atau membatalkan dan melakukan koreksi.

IDE membuka set perubahan sadar drift yang menampilkan perbedaan antara template Anda saat ini dan konfigurasi tumpukan yang diterapkan. Ini memungkinkan Anda untuk meninjau, mengonfirmasi, atau membatalkan set perubahan sebelum eksekusi. Membatalkan penerapan akan menghapus set perubahan.

Set perubahan sadar drift meningkatkan proses CloudFormation penerapan dengan memungkinkan Anda menangani tumpukan drift dengan aman. Stack drift terjadi ketika keadaan sebenarnya dari sumber daya Anda berbeda dari apa yang didefinisikan dalam CloudFormation template Anda, seringkali karena perubahan manual yang dilakukan melalui, CLI Konsol Manajemen AWS, atau SDK. CloudFormation set perubahan sadar drift membandingkan konfigurasi tumpukan yang diproses dengan status sumber daya langsung, dan IDE memunculkan perbedaan ini sehingga Anda dapat mengembalikan sumber daya ke kepatuhan sebelum penerapan.

Lihat acara tumpukan

Saat penerapan dimulai, Anda dapat memantau kemajuan secara real time dari CloudFormation panel. Di bawah Stack Events, Anda melihat daftar operasi yang dilakukan selama penerapan. Setiap acara mencakup detail seperti:

  • Timestamp: Waktu peristiwa terjadi

  • Sumber daya: AWS Sumber daya spesifik yang dibuat, diperbarui, atau dihapus

  • Status: Keadaan operasi saat ini (misalnya,, CREATE_IN_PROGRESSUPDATE_COMPLETE, atauROLLBACK_IN_PROGRESS)

  • Alasan: Konteks tambahan atau pesan kesalahan, jika berlaku

Anda juga dapat melihat Sumber Daya dan Output tumpukan dari panel ini. Tampilan Stack Events membantu Anda melacak kemajuan penerapan, mengidentifikasi potensi masalah, dan mengonfirmasi kapan tumpukan Anda berhasil diselesaikan.

Menginisialisasi CloudFormation proyek di IDE (hanya Kode VS)

Menginisialisasi CloudFormation proyek di IDE membantu Anda menyiapkan ruang kerja terstruktur dengan folder, konfigurasi lingkungan, dan AWS kredensil yang benar sehingga Anda dapat memvalidasi dan menerapkan templat dengan andal. Anda dapat menginisialisasi CloudFormation proyek baru langsung dari IDE untuk membuat pengaturan yang direkomendasikan ini. Fitur ini saat ini hanya tersedia di VS Code dan tidak didukung di JetBrains IDEs.

Untuk menginisialisasi CloudFormation proyek:

  • Buka palet perintah

    • Dari VS Code, buka palet perintah (Ctrl+Shift+Patau Cmd+Shift+P aktifmacOS).

    • Pilih AWS CloudFormation: CFN Init: Inisialisasi Proyek.

  • Pilih direktori proyek

    • Secara default, IDE menggunakan direktori kerja Anda saat ini.

    • Anda dapat mengubah jalur ini ke folder mana pun tempat Anda ingin menyimpan CloudFormation templat Anda.

  • Pilih profil AWS kredensialnya

    • Anda diminta untuk memilih profil AWS kredensi. Profil yang dipilih digunakan untuk deteksi lingkungan, validasi, dan penerapan.

  • Siapkan lingkungan Anda

    • Anda diminta untuk membuat atau memilih lingkungan.

    • Lingkungan menentukan di mana dan bagaimana template Anda digunakan atau divalidasi (misalnya, dev, beta, atau produksi). Anda dapat menggunakan AWS CloudFormation: CFN Init: Add Environment untuk memilih atau mengubah lingkungan Anda.

    • Anda dapat menggunakan AWS CloudFormation: CFN Init: Hapus Lingkungan untuk menghapus lingkungan yang telah Anda pilih.

  • (Opsional) Impor file parameter

    • Jika Anda sudah memiliki file parameter yang ada, IDE memungkinkan Anda untuk mengimpornya selama inisialisasi.

    • IDE secara otomatis mendeteksi file yang kompatibel dan menautkannya ke proyek Anda untuk digunakan dalam validasi dan penerapan templat.

  • Beri nama dan selesaikan proyek

    • Berikan nama proyek, seperti beta-environment, dan selesaikan pengaturannya.

    • IDE membuat struktur proyek awal dan file konfigurasi untuk Anda.

Anda dapat menjalankan validasi, pratinjau penerapan, atau beralih antar lingkungan langsung dari IDE.

Sumber terbuka

Server AWS CloudFormation Bahasa bersumber terbuka di bawah Apache-2.0 Lisensi, memberikan transparansi penuh kepada pelanggan tentang bagaimana diagnostik templat, validasi skema, dan analisis statis dilakukan. Ini mengurangi gesekan keamanan dan kepatuhan bagi pelanggan yang membutuhkan visibilitas tingkat sumber sebelum mengadopsi perkakas.

Basis kode tersedia untuk umum di GitHub: https://github.com/aws-cloudformation/cloudformation-languageserver/.

Butuh bantuan?

Coba CloudFormationkomunitas di AWS re:Post.