Ada lebih banyak AWS SDK contoh yang tersedia di GitHub repo SDKContoh AWS Dokumen
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS CloudFormation contoh menggunakan Alat untuk PowerShell
Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS Tools for PowerShell with AWS CloudFormation.
Tindakan adalah kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.
Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.
Topik
Tindakan
Contoh kode berikut menunjukkan cara menggunakanGet-CFNStack
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan koleksi instance Stack yang menjelaskan semua tumpukan pengguna.
Get-CFNStack
Contoh 2: Mengembalikan instance Stack yang menjelaskan tumpukan tertentu
Get-CFNStack -StackName "myStack"
-
Untuk API detailnya, lihat DescribeStacksdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanGet-CFNStackEvent
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan semua peristiwa terkait tumpukan untuk tumpukan tertentu.
Get-CFNStackEvent -StackName "myStack"
-
Untuk API detailnya, lihat DescribeStackEventsdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanGet-CFNStackResource
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan deskripsi sumber daya yang diidentifikasi dalam template yang terkait dengan tumpukan yang ditentukan oleh ID logis yDBInstance “M”.
Get-CFNStackResource -StackName "myStack" -LogicalResourceId "MyDBInstance"
-
Untuk API detailnya, lihat DescribeStackResourcedi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanGet-CFNStackResourceList
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan deskripsi AWS sumber daya hingga 100 sumber daya yang terkait dengan tumpukan yang ditentukan. Untuk mendapatkan rincian semua sumber daya yang terkait dengan tumpukan gunakan Get-CFNStackResourceSummary, yang juga mendukung paging manual hasil.
Get-CFNStackResourceList -StackName "myStack"
Contoh 2: Mengembalikan deskripsi EC2 instance Amazon yang diidentifikasi dalam template yang terkait dengan tumpukan yang ditentukan oleh ID logis “Ec2Instance”.
Get-CFNStackResourceList -StackName "myStack" -LogicalResourceId "Ec2Instance"
Contoh 3: Mengembalikan deskripsi hingga 100 sumber daya yang terkait dengan tumpukan yang berisi instance Amazon yang diidentifikasi oleh ID EC2 instance “i-123456". Untuk mendapatkan rincian semua sumber daya yang terkait dengan tumpukan gunakan Get-CFNStackResourceSummary, yang juga mendukung paging manual hasil.
Get-CFNStackResourceList -PhysicalResourceId "i-123456"
Contoh 4: Mengembalikan deskripsi EC2 instance Amazon yang diidentifikasi oleh ID logis “Ec2Instance” dalam template untuk tumpukan. Tumpukan diidentifikasi menggunakan ID sumber daya fisik dari sumber daya yang dikandungnya, dalam hal ini juga instance Amazon dengan ID EC2 instance “i-123456". Sumber daya fisik yang berbeda juga dapat digunakan untuk mengidentifikasi tumpukan tergantung pada konten template, misalnya bucket Amazon S3.
Get-CFNStackResourceList -PhysicalResourceId "i-123456" -LogicalResourceId "Ec2Instance"
-
Untuk API detailnya, lihat DescribeStackResourcesdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanGet-CFNStackResourceSummary
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan deskripsi dari semua sumber daya yang terkait dengan tumpukan tertentu.
Get-CFNStackResourceSummary -StackName "myStack"
-
Untuk API detailnya, lihat ListStackResourcesdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanGet-CFNStackSummary
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan informasi ringkasan untuk semua tumpukan.
Get-CFNStackSummary
Contoh 2: Mengembalikan informasi ringkasan untuk semua tumpukan yang sedang dibuat.
Get-CFNStackSummary -StackStatusFilter "CREATE_IN_PROGRESS"
Contoh 3: Mengembalikan informasi ringkasan untuk semua tumpukan yang sedang dibuat atau diperbarui.
Get-CFNStackSummary -StackStatusFilter @("CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS")
-
Untuk API detailnya, lihat ListStacksdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanGet-CFNTemplate
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan template yang terkait dengan tumpukan tertentu.
Get-CFNTemplate -StackName "myStack"
-
Untuk API detailnya, lihat GetTemplatedi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanMeasure-CFNTemplateCost
.
- Alat untuk PowerShell
-
Contoh 1: Mengembalikan Kalkulator Bulanan AWS Sederhana URL dengan string kueri yang menjelaskan sumber daya yang diperlukan untuk menjalankan template. Template diperoleh dari Amazon S3 yang ditentukan URL dan parameter penyesuaian tunggal diterapkan. Parameter juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' bukan 'ParameterKey' dan 'ParameterValue'.
Measure-CFNTemplateCost -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Region us-west-1 ` -Parameter @{ ParameterKey="KeyName"; ParameterValue="myKeyPairName" }
Contoh 2: Mengembalikan Kalkulator Bulanan AWS Sederhana URL dengan string kueri yang menjelaskan sumber daya yang diperlukan untuk menjalankan template. Template diurai dari konten yang disediakan dan parameter kustomisasi diterapkan (contoh ini mengasumsikan konten template akan mendeklarasikan dua parameter, '' dan KeyName 'InstanceType'). Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'.
Measure-CFNTemplateCost -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( @{ ParameterKey="KeyName"; ParameterValue="myKeyPairName" },` @{ ParameterKey="InstanceType"; ParameterValue="m1.large" })
Contoh 3: Menggunakan New-Object untuk membangun set parameter template dan mengembalikan Kalkulator Bulanan AWS Sederhana URL dengan string kueri yang menjelaskan sumber daya yang diperlukan untuk menjalankan template. Template diurai dari konten yang disediakan, dengan parameter kustomisasi (contoh ini mengasumsikan konten template akan mendeklarasikan dua parameter, '' dan KeyName 'InstanceType').
$p1 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p1.ParameterKey = "KeyName" $p1.ParameterValue = "myKeyPairName" $p2 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p2.ParameterKey = "InstanceType" $p2.ParameterValue = "m1.large" Measure-CFNTemplateCost -TemplateBody "{TEMPLATE CONTENT HERE}" -Parameter @( $p1, $p2 )
-
Untuk API detailnya, lihat EstimateTemplateCostdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanNew-CFNStack
.
- Alat untuk PowerShell
-
Contoh 1: Membuat tumpukan baru dengan nama yang ditentukan. Template diurai dari konten yang disediakan dengan parameter kustomisasi ('PK1' dan 'PK2' mewakili nama parameter yang dideklarasikan dalam konten template, 'PV1' dan 'PV2' mewakili nilai untuk parameter tersebut. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'. Jika pembuatan tumpukan gagal, itu tidak akan digulung kembali.
New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" }) ` -DisableRollback $true
Contoh 2: Membuat tumpukan baru dengan nama yang ditentukan. Template diurai dari konten yang disediakan dengan parameter kustomisasi ('PK1' dan 'PK2' mewakili nama parameter yang dideklarasikan dalam konten template, 'PV1' dan 'PV2' mewakili nilai untuk parameter tersebut. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'. Jika pembuatan tumpukan gagal, itu akan digulung kembali.
$p1 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p1.ParameterKey = "PK1" $p1.ParameterValue = "PV1" $p2 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p2.ParameterKey = "PK2" $p2.ParameterValue = "PV2" New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( $p1, $p2 ) ` -OnFailure "ROLLBACK"
Contoh 3: Membuat tumpukan baru dengan nama yang ditentukan. Template diperoleh dari Amazon S3 URL dengan parameter kustomisasi ('PK1' mewakili nama parameter yang dideklarasikan dalam konten template, 'PV1' mewakili nilai untuk parameter. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'. Jika pembuatan tumpukan gagal, itu akan digulung kembali (sama seperti menentukan - DisableRollback $false).
New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" }
Contoh 4: Membuat tumpukan baru dengan nama yang ditentukan. Template diperoleh dari Amazon S3 URL dengan parameter kustomisasi ('PK1' mewakili nama parameter yang dideklarasikan dalam konten template, 'PV1' mewakili nilai untuk parameter. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'. Jika pembuatan tumpukan gagal, itu akan digulung kembali (sama seperti menentukan - DisableRollback $false). Pemberitahuan yang ditentukan AENs akan menerima acara terkait tumpukan yang dipublikasikan.
New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" } ` -NotificationARN @( "arn1", "arn2" )
-
Untuk API detailnya, lihat CreateStackdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanRemove-CFNStack
.
- Alat untuk PowerShell
-
Contoh 1: Menghapus tumpukan yang ditentukan.
Remove-CFNStack -StackName "myStack"
-
Untuk API detailnya, lihat DeleteStackdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanResume-CFNUpdateRollback
.
- Alat untuk PowerShell
-
Contoh 1: Melanjutkan rollback dari tumpukan bernama, yang seharusnya dalam status 'UPDATE_ ROLLBACK _FAILED'. Jika rollback lanjutan berhasil, tumpukan akan memasuki status 'UPDATE_ ROLLBACK _COMPLETE'.
Resume-CFNUpdateRollback -StackName "myStack"
-
Untuk API detailnya, lihat ContinueUpdateRollbackdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanStop-CFNUpdateStack
.
- Alat untuk PowerShell
-
Contoh 1: Membatalkan pembaruan pada tumpukan yang ditentukan.
Stop-CFNUpdateStack -StackName "myStack"
-
Untuk API detailnya, lihat CancelUpdateStackdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanTest-CFNStack
.
- Alat untuk PowerShell
-
Contoh 1: Menguji apakah tumpukan telah mencapai salah satu status UPDATE _ ROLLBACK _COMPLETE, CREATE _COMPLETE, ROLLBACK _ COMPLETE atau UPDATE _COMPLETE.
Test-CFNStack -StackName MyStack
Output:
False
Contoh 2: Menguji apakah tumpukan telah mencapai status UPDATE _ COMPLETE atau UPDATE _ ROLLBACK _COMPLETE.
Test-CFNStack -StackName MyStack -Status UPDATE_COMPLETE,UPDATE_ROLLBACK_COMPLETE
Output:
True
-
Untuk API detailnya, lihat Uji- CFNStack dalam Referensi AWS Tools for PowerShell Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanTest-CFNTemplate
.
- Alat untuk PowerShell
-
Contoh 1: Memvalidasi konten template yang ditentukan. Output merinci kemampuan, deskripsi, dan parameter template.
Test-CFNTemplate -TemplateBody "{TEMPLATE CONTENT HERE}"
Contoh 2: Memvalidasi template tertentu yang diakses melalui Amazon URL S3. Output merinci kemampuan, deskripsi, dan parameter template.
Test-CFNTemplate -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template
-
Untuk API detailnya, lihat ValidateTemplatedi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanUpdate-CFNStack
.
- Alat untuk PowerShell
-
Contoh 1: Memperbarui tumpukan 'myStack' dengan template dan parameter kustomisasi yang ditentukan. 'PK1' mewakili nama parameter yang dideklarasikan dalam template dan 'PV1' mewakili nilainya. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'.
Update-CFNStack -StackName "myStack" ` -TemplateBody "{Template Content Here}" ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" }
Contoh 2: Memperbarui tumpukan 'myStack' dengan template dan parameter kustomisasi yang ditentukan. 'PK1' dan 'PK2' mewakili nama parameter yang dideklarasikan dalam templat, 'PV1' dan 'PV2' mewakili nilai yang diminta. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'.
Update-CFNStack -StackName "myStack" ` -TemplateBody "{Template Content Here}" ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } )
Contoh 3: Memperbarui tumpukan 'myStack' dengan template dan parameter kustomisasi yang ditentukan. 'PK1' mewakili nama parameter yang dideklarasikan dalam template dan 'PV2' mewakili nilainya. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'.
Update-CFNStack -StackName "myStack" -TemplateBody "{Template Content Here}" -Parameters @{ ParameterKey="PK1"; ParameterValue="PV1" }
Contoh 4: Memperbarui tumpukan 'myStack' dengan templat yang ditentukan, diperoleh dari Amazon S3, dan parameter penyesuaian. 'PK1' dan 'PK2' mewakili nama parameter yang dideklarasikan dalam templat, 'PV1' dan 'PV2' mewakili nilai yang diminta. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'.
Update-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } )
Contoh 5: Memperbarui tumpukan myStack '', yang diasumsikan dalam contoh ini berisi IAM sumber daya, dengan templat yang ditentukan, diperoleh dari Amazon S3, dan parameter penyesuaian. 'PK1' dan 'PK2' mewakili nama parameter yang dideklarasikan dalam templat, 'PV1' dan 'PV2' mewakili nilai yang diminta. Parameter kustomisasi juga dapat ditentukan menggunakan 'Kunci' dan 'Nilai' alih-alih 'ParameterKey' dan 'ParameterValue'. Tumpukan yang berisi IAM sumber daya mengharuskan Anda untuk menentukan parameter -Capabilities IAM "CAPABILITY_" jika tidak pembaruan akan gagal dengan kesalahan InsufficientCapabilities ''.
Update-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } ) ` -Capabilities "CAPABILITY_IAM"
-
Untuk API detailnya, lihat UpdateStackdi AWS Tools for PowerShell Referensi Cmdlet.
-
Contoh kode berikut menunjukkan cara menggunakanWait-CFNStack
.
- Alat untuk PowerShell
-
Contoh 1: Menguji apakah tumpukan telah mencapai salah satu status UPDATE _ ROLLBACK _COMPLETE, CREATE _COMPLETE, ROLLBACK _ COMPLETE atau UPDATE _COMPLETE. Jika tumpukan tidak berada di salah satu status, perintah tidur selama dua detik sebelum menguji status lagi. Ini diulang sampai tumpukan mencapai salah satu status yang diminta atau periode batas waktu default 60 detik berlalu. Jika periode batas waktu terlampaui, pengecualian dilemparkan. Jika tumpukan mencapai salah satu status yang diminta dalam periode batas waktu, tumpukan tersebut dikembalikan ke pipeline.
$stack = Wait-CFNStack -StackName MyStack
Contoh 2: Contoh ini menunggu total 5 menit (300 detik) hingga tumpukan mencapai salah satu status yang ditentukan. Dalam contoh ini status tercapai sebelum batas waktu dan oleh karena itu objek tumpukan dikembalikan ke pipeline.
Wait-CFNStack -StackName MyStack -Timeout 300 -Status CREATE_COMPLETE,ROLLBACK_COMPLETE
Output:
Capabilities : {CAPABILITY_IAM} ChangeSetId : CreationTime : 6/1/2017 9:29:33 AM Description : AWS CloudFormation Sample Template ec2_instance_with_instance_profile: Create an EC2 instance with an associated instance profile. **WARNING** This template creates one or more Amazon EC2 instances and an Amazon SQS queue. You will be billed for the AWS resources used if you create a stack from this template. DisableRollback : False LastUpdatedTime : 1/1/0001 12:00:00 AM NotificationARNs : {} Outputs : {} Parameters : {} RoleARN : StackId : arn:aws:cloudformation:us-west-2:123456789012:stack/MyStack/7ea87b50-46e7-11e7-9c9b-503a90a9c4d1 StackName : MyStack StackStatus : CREATE_COMPLETE StackStatusReason : Tags : {} TimeoutInMinutes : 0
Contoh 3: Contoh ini menunjukkan keluaran kesalahan ketika tumpukan tidak mencapai salah satu status yang diminta dalam periode batas waktu (dalam hal ini periode default 60 detik).
Wait-CFNStack -StackName MyStack -Status CREATE_COMPLETE,ROLLBACK_COMPLETE
Output:
Wait-CFNStack : Timed out after 60 seconds waiting for CloudFormation stack MyStack in region us-west-2 to reach one of state(s): UPDATE_ROLLBACK_COMPLETE,CREATE_COMPLETE,ROLLBACK_COMPLETE,UPDATE_COMPLETE At line:1 char:1 + Wait-CFNStack -StackName MyStack -State CREATE_COMPLETE,ROLLBACK_COMPLETE + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (Amazon.PowerShe...tCFNStackCmdlet:WaitCFNStackCmdlet) [Wait-CFNStack], InvalidOperationException + FullyQualifiedErrorId : InvalidOperationException,Amazon.PowerShell.Cmdlets.CFN.WaitCFNStackCmdlet
-
Untuk API detailnya, lihat Tunggu- CFNStack di AWS Tools for PowerShell Referensi Cmdlet.
-