AWSでAMIを取得する時用のスクリプト(bash)

2021-06-23 - 読み終える時間: 4 分

意外と作ったり消したりが面倒なので、皆さん何かしら手段を持っておられると思うのですが、私は割と原始的にWSLのUbuntuにawscliを入れて以下のようなスクリプトを使ってバックアップとしています。

  • 世代はスクリプト内の変数を指定することで任意の数残せる
  • ホスト名(Nameタグの値)の配列定義部分を設定すれば複数インスタンスまとめて実行できる
  • インスタンス再起動はしない
  • ルートボリューム以外は取得しない
  • "-v"という文字列を決め打ちでスクリプト内で使っているので、もともとNameタグに"-v"が含まれているとどう動くかわからない
  • awscliのfilterとqueryの使い方がキモい

コード全文

もっと読む

cloud-configのvalidation

2021-06-19 - 読み終える時間: ~1 分

AWSのCloudFormationでユーザーデータかくの失敗していてログインさえできない、という状況になったときに自分が書いたcloud-configの文法が間違ってないかをチェックしたいときに取りうる方法の一つ。

  • Ubuntuを用意する(wslでも大丈夫)
  • cloud-configをyamlのテキストにしておく
  • 以下のコマンドでチェック

cloud-init devel schema --config-file settings.yaml

以下のサイトに書いてあるまんまだ。

参考:https://stackoverflow.com/questions/54427198/cloud-init-validator


今日はここまで



Amazon Linux 2をCFnでデプロイするときのコードサンプル

2021-05-29 - 読み終える時間: 5 分

なんてことは無いのだが、メモ。

コード全文

もっと読む

S3presign

2021-04-8 - 読み終える時間: 2 分

S3上のオブジェクトを期間限定で公開するURLを発行するコマンド。 それが「aws s3 presign」

こんな感じで実行する。

aws s3 presign --expires-in 388800 s3://s3-backet-name/your-file-name.zip

--expires-in の数値は秒。

<参考>

  • 2 days 172800
  • 3 days 259200
  • 3.5 days 302400
  • 4 days 345600
  • 4.5 days 388800

使えるような、使いどころが難しいような。。。

コマンドhelpも載せておこう。

もっと読む

Let's Encryptの設定はとても簡単に出来るようになっている。すごい

2021-03-7 - 読み終える時間: ~1 分

on Amazon Linux 2

certbot

まずはyumで「certbot」をインストールしてください

sudo yum install certbot

証明書取得

  • internetにつながる
  • httpで通信できる

前提は上記2つだけだと思う

sudo certbot certonly -d your.domain

証明書更新するとき

sudo certbot renew

こんだけ。


2021-03-07 今日はここまで



AWSのCost usage reportを取得するbashスクリプト

2021-03-7 - 読み終える時間: 2 分

なんというか、雑な造りではある。

請求書ごとのgzファイルで格納される仕様だそうで、前に作ったやつを少し改修した。

もっと読む