ようへいの日々精進XP

よかろうもん

2019 年 09 月 22 日 (日)

ジョギング

  • 山王公園を 35 分程度
  • 懸垂 7 回

引き続き, もくもく

amiCtrl を作った時からやりたかったのが, AMI 名で出力を絞り込んだり, 過去 N 日より以前の AMI を削除する機能を付けたかったので...引き続きもくもく.

以下のような使い方を想定している.

$ go run amiCtrl.go -profile=dummy_profile -region=us-east-1 -endpoint=http://192.168.0.100:5000 --prefix=image77777
+-----------------+--------------+-----------+--------------------------+---------------+
|    AMI NAME     |    AMI ID    |   STATE   |      CREATION DATE       |  SNAPSHOT ID  |
+-----------------+--------------+-----------+--------------------------+---------------+
| test-image77777 | ami-7e091be4 | available | 2019-09-21T14:34:35.000Z | snap-ce57c659 |
+                 +--------------+           +--------------------------+---------------+
|                 | ami-647697cc |           | 2019-09-21T22:26:53.000Z | snap-058e29f7 |
+                 +--------------+           +--------------------------+---------------+
|                 | ami-4a94ebc3 |           | 2019-09-22T09:43:57.000Z | snap-c3a85851 |
+                 +--------------+           +--------------------------+---------------+
|                 | ami-6f8ae992 |           | 2019-09-22T09:44:46.000Z | snap-6572e311 |
+                 +--------------+           +--------------------------+---------------+
|                 | ami-5645c327 |           | 2019-09-22T09:50:09.000Z | snap-05ff77e4 |
+                 +--------------+           +--------------------------+---------------+
|                 | ami-bfc73dd1 |           | 2019-09-22T09:54:12.000Z | snap-5bd605b8 |
+-----------------+--------------+-----------+--------------------------+---------------+

github.com

雑なコミットメッセージになってしまったけど, 内部の処理を自分なりに大きく変更してみた. 大きな気づきだったのは, 以下のように DescribeImages のレスポンスに AMI に含まれている Snapshot ID が含まれていたこと.

    {
      Architecture: "x86_64",
      BlockDeviceMappings: [{
          DeviceName: "/dev/xvda",
          Ebs: {
            DeleteOnTermination: true,
            Encrypted: false,
            SnapshotId: "snap-12345a67a890123d",
            VolumeSize: 40,
            VolumeType: "gp2"
          }
        }],
      CreationDate: "2018-07-27T01:30:55.000Z",
      Description: "description",
      EnaSupport: true,
      Hypervisor: "xen",
      ImageId: "ami-a1234567",
      ImageLocation: "xxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
      ImageType: "machine",
      Name: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
      OwnerId: "123456789012",
      Public: false,
      RootDeviceName: "/dev/xvda",
      RootDeviceType: "ebs",
      SriovNetSupport: "simple",
      State: "available",
      VirtualizationType: "hvm"
    }

これで, わざわざ DescribeSnapshots する必要がなくなった.

台風

夕方くらいから風と雨が激しくなってきた. 明日はヤフオクドームリレーマラソンなのに...

夕飯

  • 奥さん特製のポテサラ. ベーコンを炒めて入れているんのがミソ.