

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 執行個體資料包 (aws\$1opsworks\$1instance)
<a name="data-bag-json-instance"></a>

**重要**  
 AWS OpsWorks Stacks 此服務已於 2024 年 5 月 26 日終止，並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載遷移至其他解決方案。如果您對遷移有任何疑問，請透過 [AWS re：Post](https://repost.aws/) 或透過 [AWS Premium Support](https://aws.amazon.com/support) 聯絡 AWS 支援 團隊。

代表執行個體的設定。

下列範例示範如何使用 Chef 搜尋搜尋單一資料包項目及多個資料包項目，將執行個體的主機名稱和 ID 寫入 Chef 日誌：

```
instance = search("aws_opsworks_instance").first
Chef::Log.info("********** The instance's hostname is '#{instance['hostname']}' **********")
Chef::Log.info("********** The instance's ID is '#{instance['instance_id']}' **********")

search("aws_opsworks_instance").each do |instance|
  Chef::Log.info("********** The instance's hostname is '#{instance['hostname']}' **********")
  Chef::Log.info("********** The instance's ID is '#{instance['instance_id']}' **********")
end
```

下列範例顯示使用 Chef 搜尋來搜尋多個資料包項目的不同方式，以尋找包含指定 Amazon EC2 執行個體 ID 的資料包項目。範例接著會使用資料包項目的內容將對應執行個體的公有 IP 地址寫入 Chef 日誌：

```
instance = search("aws_opsworks_instance", "ec2_instance_id:i-12345678").first
Chef::Log.info("********** For instance '#{instance['ec2_instance_id']}', the instance's public IP address is '#{instance['public_ip']}' **********")
 
search("aws_opsworks_instance").each do |instance|
  if instance['ec2_instance_id'] == 'i-12345678'
    Chef::Log.info("********** For instance '#{instance['ec2_instance_id']}', the instance's public IP address is '#{instance['public_ip']}' **********")
  end
end
```

以下範例示範如何使用 Chef 搜尋以 `self:true` 尋找包含與執行配方之執行個體相關資訊的資料包項目。此範例接著會使用資料包項目的內容，以對應執行個體的 OpsWorks Stacks 產生的 ID 和執行個體的公有 IP 地址，將訊息寫入 Chef 日誌：

```
instance = search("aws_opsworks_instance", "self:true").first
Chef::Log.info("********** For instance '#{instance['instance_id']}', the instance's public IP address is '#{instance['public_ip']}' **********")
```


****  

|  |  |  | 
| --- |--- |--- |
| [ami\$1id](#data-bag-json-instance-ami) | [架構](#data-bag-json-instance-arch) | [auto\$1scaling\$1type](#data-bag-json-instance-autoscaling) | 
| [availability\$1zone](#data-bag-json-instance-az) | [created\$1at](#data-bag-json-instance-created-at) | [ebs\$1optimized](#data-bag-json-instance-ebs-optimized) | 
| [ec2\$1instance\$1id](#data-bag-json-instance-ec2-id) | [elastic\$1ip](#data-bag-json-instance-elastic-ip) | [hostname](#data-bag-json-instance-hostname) | 
| [instance\$1id](#data-bag-json-instance-id) | [instance\$1type](#data-bag-json-instance-type) | [layer\$1ids](#data-bag-json-instance-layers) | 
| [os](#data-bag-json-instance-os) | [private\$1dns](#data-bag-json-instance-private-dns) | [private\$1ip](#data-bag-json-instance-private-ip) | 
| [public\$1dns](#data-bag-json-instance-public-dns) | [public\$1ip](#data-bag-json-instance-public-ip) | [root\$1device\$1type](#data-bag-json-instance-root-device-type) | 
| [root\$1device\$1volume\$1id](#data-bag-json-instance-root-device-volume-id) | [self](#data-bag-json-instance-self) | [ssh\$1host\$1dsa\$1key\$1fingerprint](#data-bag-json-instance-ssh-host-dsa-key-fingerprint) | 
| [ssh\$1host\$1dsa\$1key\$1private](#data-bag-json-instance-ssh-host-dsa-key-private) | [ssh\$1host\$1dsa\$1key\$1public](#data-bag-json-instance-ssh-host-dsa-key-public) | [ssh\$1host\$1rsa\$1key\$1fingerprint](#data-bag-json-instance-ssh-host-rsa-key-fingerprint) | 
| [ssh\$1host\$1rsa\$1key\$1private](#data-bag-json-instance-ssh-host-rsa-key-private) | [ssh\$1host\$1rsa\$1key\$1public](#data-bag-json-instance-ssh-host-rsa-key-public) | [status](#data-bag-json-instance-status) | 
| [subnet\$1id](#data-bag-json-instance-subnet-id) | [virtualization\$1type](#data-bag-json-instance-virt-type) |  | 

**ami\$1id**  <a name="data-bag-json-instance-ami"></a>
執行個體的 AMI (Amazon Machine Image) ID (字串)。

**架構**  <a name="data-bag-json-instance-arch"></a>
執行個體的架構，一律設為 `"x86_64"` (字串)。

**auto\$1scaling\$1type**  <a name="data-bag-json-instance-autoscaling"></a>
執行個體的擴展類型：`null`、`timer` 或 `load` (字串)。

**availability\$1zone**  <a name="data-bag-json-instance-az"></a>
執行個體的可用區域 (AZ)，例如 `"us-west-2a"` (字串)。

**created\$1at**  <a name="data-bag-json-instance-created-at"></a>
執行個體的建立時間，使用 UTC `"yyyy-mm-dddThh:mm:ss+hh:mm"` 格式 (字串)。例如，`"2013-10-01T08:35:22+00:00"` 對應到 2013 年 10 月 10 日 8:35:22，無時區位移。如需詳細資訊，請參閱 [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601)。

**ebs\$1optimized**  <a name="data-bag-json-instance-ebs-optimized"></a>
執行個體是否為 EBS 最佳化 (布林值)。

**ec2\$1instance\$1id**  <a name="data-bag-json-instance-ec2-id"></a>
EC2 執行個體 ID (字串)。

**elastic\$1ip**  <a name="data-bag-json-instance-elastic-ip"></a>
彈性 IP 地址，若執行個體沒有彈性 IP 地址，則設為 `"null"` (字串)。

**hostname**  <a name="data-bag-json-instance-hostname"></a>
主機名稱，例如 `"demo1"` (字串)。

**instance\$1id**  <a name="data-bag-json-instance-id"></a>
執行個體 ID，這是 OpsWorks Stacks 產生的 GUID，可唯一識別執行個體 （字串）。

**instance\$1type**  <a name="data-bag-json-instance-type"></a>
執行個體類型，例如 `"c1.medium"` (字串)。

**layer\$1ids**  <a name="data-bag-json-instance-layers"></a>
執行個體 layer 的清單，以其唯一 ID 識別。例如：`307ut64c-c7e4-40cc-52f0-67d5k1f9992c`。

**os**  <a name="data-bag-json-instance-os"></a>
執行個體的作業系統 (字串)。有效值包含：  
+ `"Amazon Linux 2"`
+ `"Amazon Linux 2018.03"`
+ `"Amazon Linux 2017.09"`
+ `"Amazon Linux 2017.03"`
+ `"Amazon Linux 2016.09"`
+ `"Custom"`
+ `"Microsoft Windows Server 2022 Base"`
+ `"Microsoft Windows Server 2022 with SQL Server Express"`
+ `"Microsoft Windows Server 2022 with SQL Server Standard"`
+ `"Microsoft Windows Server 2022 with SQL Server Web"`
+ `"Microsoft Windows Server 2019 Base"`
+ `"Microsoft Windows Server 2019 with SQL Server Express"`
+ `"Microsoft Windows Server 2019 with SQL Server Standard"`
+ `"Microsoft Windows Server 2019 with SQL Server Web"`
+ `"CentOS 7"`
+ `"Red Hat Enterprise Linux 7"`
+ `"Ubuntu 20.04 LTS"`
+ `"Ubuntu 18.04 LTS"`
+ `"Ubuntu 16.04 LTS"`
+ `"Ubuntu 14.04 LTS"`

**private\$1dns**  <a name="data-bag-json-instance-private-dns"></a>
私有 DNS 名稱 (字串)。

**private\$1ip**  <a name="data-bag-json-instance-private-ip"></a>
私有 IP 地址 (字串)。

**public\$1dns**  <a name="data-bag-json-instance-public-dns"></a>
公有 DNS 名稱 (字串)。

**public\$1ip**  <a name="data-bag-json-instance-public-ip"></a>
公有 IP 地址 (字串)。

**root\$1device\$1type**  <a name="data-bag-json-instance-root-device-type"></a>
根設備類型 (字串)。有效值包含：  
+ `"ebs`
+ `"instance-store"`

**root\$1device\$1volume\$1id**  <a name="data-bag-json-instance-root-device-volume-id"></a>
根設備的磁碟區 ID (字串)。

**self**  <a name="data-bag-json-instance-self"></a>
若此資料包項目包含執行配方之執行個體的相關資訊，則為 `true`。否則為 `false` (布林值)。此值僅適用於配方，而不是透過 OpsWorks Stacks API。

**ssh\$1host\$1dsa\$1key\$1fingerprint**  <a name="data-bag-json-instance-ssh-host-dsa-key-fingerprint"></a>
位元組的短序列，用來識別較長的 DSA 公有金鑰 (字串)。

**ssh\$1host\$1dsa\$1key\$1private**  <a name="data-bag-json-instance-ssh-host-dsa-key-private"></a>
由 DSA 為執行個體 SSH 身分驗證產生的私有金鑰 (字串)。

**ssh\$1host\$1dsa\$1key\$1public**  <a name="data-bag-json-instance-ssh-host-dsa-key-public"></a>
由 DSA 為執行個體 SSH 身分驗證產生的公有金鑰 (字串)。

**ssh\$1host\$1rsa\$1key\$1fingerprint**  <a name="data-bag-json-instance-ssh-host-rsa-key-fingerprint"></a>
位元組的短序列，用來識別較長的 RSA 公有金鑰 (字串)。

**ssh\$1host\$1rsa\$1key\$1private**  <a name="data-bag-json-instance-ssh-host-rsa-key-private"></a>
由 RSA 為執行個體 SSH 身分驗證產生的私有金鑰 (字串)。

**ssh\$1host\$1rsa\$1key\$1public**  <a name="data-bag-json-instance-ssh-host-rsa-key-public"></a>
由 RSA 為執行個體 SSH 身分驗證產生的公有金鑰 (字串)。

**status**  <a name="data-bag-json-instance-status"></a>
執行個體的狀態 (字串)。有效值包含：  
+ `"requested"`
+ `"booting"`
+ `"running_setup"`
+ `"online"`
+ `"setup_failed"`
+ `"start_failed"`
+ `"terminating"`
+ `"terminated"`
+ `"stopped"`
+ `"connection_lost"`

**subnet\$1id**  <a name="data-bag-json-instance-subnet-id"></a>
執行個體的子網路 ID (字串)。

**virtualization\$1type**  <a name="data-bag-json-instance-virt-type"></a>
執行個體的虛擬化類型 (字串)。