【AWS re:Invent2019】DOP343-ROFA – Introduction to the AWS CLI v2 セッションを受講しました

この記事は公開されてから半年以上経過しています。情報が古い可能性がありますので、ご注意ください。

概要

DOP343-ROFA – Introduction to the AWS CLI v2 セッションを受講しました
現状は評価バージョンですが、v1に比べパワーアップしている箇所が多く、正式版がリリースされたら早く本番環境にも投入したい!と感じました。
インストール方法等は公式ドキュメントを参照として、v2ならではの部分を取り上げています。

参考リンク

セッションについて

v2ハイライト箇所について

  • インストール&設定
    • ExecutableInstaller (v2のみ)
    • Developer Previewのため実行コマンド名は aws2
    • 既存Pythonの影響を受けずにインストール出来るため v1との共存が可能
    • AWS SSOに対応 (後述)
  • CommandI/O (後述)
  • インタラクティブ機能 (後述)

AWS SSOに対応 (v2のみ)

デモ中ではSSOにて設定したRoleをインタラクティブに(コマンドプロンプト上でリストが表示され選択する形)切り替えて
選択したRoleにより aws2 s3 ls を実行し表示されるS3バケットが異なる事を確認していました。

SSO設定について


デモ中では下記を実施していました

  • aws2 configure sso にて start url等を設定
  • ブラウザが開くためそちらでID/PWを入力
    ※内部でTokenを取得しそちらを利用し一定時間Loginオペレーションが不要となる

CommandI/O

リソース名の自動補完

CLI v1からの機能ですが v2の場合は下記のように設定

$ complete -C aws2_completer aws2

v2でのUpdateは実際に存在するリソース名の補完まで進めてくれるようになった

yaml対応

v1では JSON(パラメータはjson), text, tableのみ

$ aws2 ec2 describe-instances --output yaml

※Outputパラメータでv1で指定出来た値も指定可能

yamlを標準にする場合下記を実行しておくと便利

$ aws2 configure set output yaml

Paging機能拡張

Paging機能で次ページを要求すると結果が読み込まれるようになった (output型式に yaml-stream を指定)
特に多数のAPIが裏で呼ばれる様なコマンドの場合ロード時間が大きく異る。

$ aws2 ec2 describe-snapshots
1分程してから全結果が帰ってくる

$ aws2 ec2 describe-snapshots --output yaml-stream
- NextToken: eyJ2IjoiMiIsImMi....
  Snapshots:
  - Description: ...
数秒で最初のページの結果が帰ってくる ページを進めると引き続き読み込まれた結果が表示される

インタラクティブ機能

Configの時点でも wizard というキーワードで下記のようにインタラクティブな機能を利用する事が出来ます。

DynamoDBに新しいテーブルを作成する場合
下記のような形でパラメータに指定可能な値を選択しながら作成する事が出来ます。

$ aws2 dynamodb wizard new-table

まだこれから対応が増えるそうなので、正式版の発表がとても楽しみです!

投稿者プロフィール

takashi
開発会社での ASP型WEBサービス企画 / 開発 / サーバ運用 を経て
2010年よりスカイアーチネットワークスに在籍しております

機械化/効率化/システム構築を軸に人に喜んで頂ける物作りが大好きです。
個人ブログではRaspberryPiを利用したシステムやロボット作成も
実施しております。

スカイアーチネットワークスで一緒に働きましょう!

ABOUTこの記事をかいた人

開発会社での ASP型WEBサービス企画 / 開発 / サーバ運用 を経て 2010年よりスカイアーチネットワークスに在籍しております 機械化/効率化/システム構築を軸に人に喜んで頂ける物作りが大好きです。 個人ブログではRaspberryPiを利用したシステムやロボット作成も 実施しております。 スカイアーチネットワークスで一緒に働きましょう!