LoginSignup
0
0

More than 5 years have passed since last update.

AWS PowerShell 名前でリソースを指定してみよう

Last updated at Posted at 2019-03-06

はじめに

ResourcesIDやARNは再作成すると変わってしまうため、
Nameタグ等の名前をキーにして個を特定したい事ってあると思います。

備忘録も兼ねていろいろなResourcesを名前で検索するときの書き方を載せておきます。

コード

リソース名は適宜変更してください。

Get-IAMRole

名前指定のパラメータがある

Get-IAMUser -UserName "UserX"

Get-IAMRole

名前指定のパラメータがある

Get-IAMRole -RoleName "RoleX"

Get-EC2Vpc

FilterでNameタグを指定する

Get-EC2Vpc -Filter @{Name = "tag:Name"; Value = "VpcX";}

Get-EC2Subnet

FilterでNameタグを指定する

Get-EC2Subnet -Filter @{Name = "tag:Name"; Value = "SubnetX";}

Get-EC2Instance

FilterでNameタグを指定する

Get-EC2Instance -Filter @{Name = "tag:Name"; Value = "instanceX";}

Get-RDSDBInstance

DBInstanceIdentifierパラメータがあるので迷わないかも

$Param = @{
  DBInstanceIdentifier = "instanceX";
  Region               = "ap-northeast-1";
}
Get-RDSDBInstance @Param

Get-EC2TagでName指定

全パラメータsplat

事前にハッシュテーブルを作成するので縦に長い。
resource-typeのValueを変更すればAMIやEBSもNameからResourcesIDを取得できるのが特徴。
使用できるresource-typeについては後述。


$Param = @{
  Filter = @(
    @{
      Name   = "key";
      Values = "Name";
    },
    @{
      Name   = "value";
      Values = "instanceX";
    },
    @{
      Name   = "resource-type";
      Values = "instance";
    }
  );
  Region = "ap-northeast-1";
}
$ResourceId = (Get-EC2Tag @Param).ResourceId

Filterだけsplat

Filterにハッシュテーブルを直書きすればワンライナーでいけます。
ただし横に長い。
resource-typeのValueを変更すればAMIやEBSもNameからResourcesIDを取得できるのが特徴。
使用できるresource-typeについては後述。


$ResourceId = (Get-EC2Tag -Filter @{Name = "key"; Values = "Name";}, @{Name = "value"; Values = "instanceX";}, @{Name = "resource-type"; Values = "instance";}).ResourceId

使用できるresource-typeの調べ方

ここのFields - Nameに記載されている
https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/EC2/TResourceType.html

もしくは
Get-Help Get-EC2Tag -Full
コマンドで表示されるパラメーター - Filterにあります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0