Dapatkan AWS nilai menggunakan parameter semu - AWS CloudFormation

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

Dapatkan AWS nilai menggunakan parameter semu

Parameter pseudo telah ditentukan sebelumnya oleh CloudFormation dan tidak memerlukan deklarasi dalam template Anda. Gunakan mereka dengan fungsi intrinsik Ref atau Sub intrinsik untuk mengakses informasi kontekstual tentang Anda Akun AWS, Wilayah, dan data kontekstual lainnya, bukan nilai hard-coding dalam template Anda.

Sintaksis

Untuk menggunakan parameter semu dengan fungsi Ref intrinsik, sintaks dasarnya adalah:

JSON

{ "Ref" : "AWS::PseudoParameter" }

YAML

!Ref AWS::PseudoParameter

Untuk menggunakan parameter semu dengan fungsi Sub intrinsik, sintaks dasarnya adalah:

JSON

{ "Fn::Sub" : "${AWS::PseudoParameter}" }

YAML

!Sub '${AWS::PseudoParameter}'

Contoh

Cuplikan berikut menetapkan nilai dari parameter semu AWS::Region menjadi nilai output:

JSON

"Outputs" : { "MyStacksRegion" : { "Value" : { "Ref" : "AWS::Region" } } }

YAML

Outputs: MyStacksRegion: Value: !Ref "AWS::Region"

Parameter pseudo yang tersedia

AWS::AccountId

Mengembalikan Akun AWS ID akun di mana tumpukan sedang dibuat, seperti123456789012.

AWS::NotificationARNs

Mengembalikan daftar pemberitahuan Amazon Resource Names (ARNs) untuk tumpukan saat ini.

Untuk mendapatkan satu ARN dari daftar, gunakan. Fn::Select Untuk informasi lebih lanjut, lihat Fn::Selectreferensi.

JSON

"myASGrpOne" : { "Type" : "AWS::AutoScaling::AutoScalingGroup", "Version" : "2009-05-15", "Properties" : { "AvailabilityZones" : [ "us-east-1a" ], "LaunchConfigurationName" : { "Ref" : "MyLaunchConfiguration" }, "MinSize" : "0", "MaxSize" : "0", "NotificationConfigurations" : [{ "TopicARN" : { "Fn::Select" : [ "0", { "Ref" : "AWS::NotificationARNs" } ] }, "NotificationTypes" : [ "autoscaling:EC2_INSTANCE_LAUNCH", "autoscaling:EC2_INSTANCE_LAUNCH_ERROR" ] }] } }

YAML

myASGrpOne: Type: AWS::AutoScaling::AutoScalingGroup Version: '2009-05-15' Properties: AvailabilityZones: - "us-east-1a" LaunchConfigurationName: Ref: MyLaunchConfiguration MinSize: '0' MaxSize: '0' NotificationConfigurations: - TopicARN: Fn::Select: - '0' - Ref: AWS::NotificationARNs NotificationTypes: - autoscaling:EC2_INSTANCE_LAUNCH - autoscaling:EC2_INSTANCE_LAUNCH_ERROR

AWS::NoValue

Menghapus atribut sumber daya yang sesuai jika ditentukan sebagai nilai kembali dalam fungsi intrinsik Fn::If.

Misalnya, Anda dapat menggunakan AWS::NoValue parameter saat ingin menggunakan snapshot untuk instans Amazon RDS DB hanya jika ID snapshot disediakan. Jika UseDBSnapshot kondisi dievaluasi ke true, CloudFormation menggunakan nilai DBSnapshotName parameter untuk DBSnapshotIdentifier properti. Jika kondisi dievaluasi menjadi false, CloudFormation hapus DBSnapshotIdentifier properti.

JSON

"MyDB" : { "Type" : "AWS::RDS::DBInstance", "Properties" : { "AllocatedStorage" : "5", "DBInstanceClass" : "db.t2.small", "Engine" : "MySQL", "EngineVersion" : "5.5", "MasterUsername" : { "Ref" : "DBUser" }, "MasterUserPassword" : { "Ref" : "DBPassword" }, "DBParameterGroupName" : { "Ref" : "MyRDSParamGroup" }, "DBSnapshotIdentifier" : { "Fn::If" : [ "UseDBSnapshot", {"Ref" : "DBSnapshotName"}, {"Ref" : "AWS::NoValue"} ] } } }

YAML

MyDB: Type: AWS::RDS::DBInstance Properties: AllocatedStorage: '5' DBInstanceClass: db.t2.small Engine: MySQL EngineVersion: '5.5' MasterUsername: Ref: DBUser MasterUserPassword: Ref: DBPassword DBParameterGroupName: Ref: MyRDSParamGroup DBSnapshotIdentifier: Fn::If: - UseDBSnapshot - Ref: DBSnapshotName - Ref: AWS::NoValue

AWS::Partition

Mengembalikan partisi tempat sumber daya berada. Untuk standar Wilayah AWS, partisi adalahaws. Jika Anda memiliki sumber daya di partisi lain, maka partisi-nya adalah aws-partitionname. Misalnya, partisi untuk sumber daya di Wilayah Tiongkok (Beijing dan Ningxia) aws-cn adalah dan partisi untuk sumber daya di AWS GovCloud Wilayah (AS-Barat) adalah. aws-us-gov

AWS::Region

Mengembalikan string yang mewakili Wilayah tempat sumber daya yang dicakup sedang dibuat, seperti us-west-2.

AWS::StackId

Mengembalikan ID dari tumpukan seperti yang ditentukan dengan perintah create-stack, seperti arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123.

AWS::StackName

Mengembalikan nama dari tumpukan seperti yang ditentukan dengan perintah create-stack, seperti teststack.

AWS::URLSuffix

Mengembalikan sufiks untuk domain. Sufiks biasanya berupa amazonaws.com, tetapi mungkin berbeda antar Wilayah. Misalnya, akhiran untuk Wilayah Tiongkok (Beijing) adalah. amazonaws.com.cn