search
LoginSignup
1

More than 1 year has passed since last update.

Organization

CloudFrontのキャッシュをコマンドから手っ取り早くパージする

株式会社シンプルウェイ Advent Calendar 2020 の8日目です。

昨日はCloudflareのキャッシュをコマンドからパージする方法を書きましたが、今日はCloudFrontでの方法を書きたいと思います。

マネージメントコンソールでAPIユーザーの作成

ポリシーの作成

まずキャッシュパージのみが実行できる権限を作成しておきます。

IAMポリシーへアクセスします。

「ポリシーの作成」ボタンを選択します。

ポリシーの作成

[サービス]で「CloudFront」を選択、[アクション]で「CreateInvalidation」を選択を選択します。[リソース]は「すべて」にしてしまいましたが、可能であれば制限しておいたほうがいいでしょう。

権限設定

設定したら「ポリシーの確認」ボタンを選択します。

確認画面で[名前]を入力して「ポリシーの作成」ボタンを選択します。

ユーザーの作成

続いて、API実行用のユーザーを作成します。

IAMユーザーへアクセスします。

「ユーザーを追加」ボタンを選択します。

ユーザーを追加

[ユーザー名]で適当な名前を入力、[アクセスの種類]で「プログラムによるアクセス」を選択を選択し、「次のステップ: アクセス権限」ボタンを選択します。

cf04.jpg

「既存のポリシーを直接アタッチ」を選択して、ポリシーの一覧から先程作成したポリシーを選択します。

ポリシー選択

「次のステップ: タグ」ボタンを選択、「次のステップ: 確認」ボタンを選択、「ユーザーの作成」ボタンを選択してウィザードを完了させます。

完了画面で表示される[アクセスキー ID]と[シークレットアクセスキー]をメモしておきます。

cf06.jpg

ディストリビューションIDの確認

CloudFrontのディストリビューションIDを確認しておきます。

CloudFrontへアクセスして、パージしたいディストリビューションのIDをメモしておきます。

cf07.jpg

プロファイルの作成

コマンドを実行したいマシンにクレデンシャルを登録しておきます。

コンソールでaws configureコマンドを実行します。

$ aws configure
AWS Access Key ID [None]: [アクセスキー ID]
AWS Secret Access Key [None]: [シークレットアクセスキー]
Default region name [None]: ap-northeast-1
Default output format [None]: json 

[アクセスキー ID]と[シークレットアクセスキー]は上でメモしたものを入力します。

パージコマンド

おもむろに下記コマンドを実行します。

aws cloudfront create-invalidation --distribution-id [ディストリビューションID] --paths '/*' 

[ディストリビューションID] は上でメモした値に置き換えてください。

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
What you can do with signing up
1