#本記事の目的
JAWS-UG CLI オンラインハンズオンの復習として、ハンズオンで取り上げられたAWSサービスに関する用語と、使用したAWS CLI コマンドを箇条書きでまとめる。
今回はCloudFront入門編を取り上げる。
#主なAWSサービス用語
####オリジンサーバー
オリジナルとして定めたオブジェクトを保存するコンテンツサーバ。リージョンに存在するS3バケット等を設定できる。
####エッジサーバ
オリジンサーバのオブジェクトをコピーし、様々な場所から配信するキャッシュサーバ。エッジロケーションに存在する。
####ディストリビューション
オリジンサーバ及びエッジサーバにおけるコンテンツ配信設定の単位。
####デフォルトルートオブジェクト
ディストリビューションのルートURLにアクセスした際に表示されるオブジェクト。
####ETag
HTTPにおけるレスポンスヘッダの1つ。ETagを使用する事で、HTTPにおけるキャッシュの有効性を確認できる。
#主なAWS CLI コマンド一覧
####CloudFrontディストリビューションの作成
aws cloudfront create-distribution \
--origin-domain-name "${CLOUDFRONT_ORIGIN_DOMAIN_NAME}" \
--default-root-object ${CLOUDFRONT_DISTRIBUTION_DEFAULT_ROOT_OBJECT}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--origin-domain-name | オリジンドメイン名 | 任意 | |
--default-root-object | デフォルトルートオブジェクト名 | 任意 |
####CloudFrontディストリビューションの付加
aws cloudfront tag-resource \
--resource ${CLOUDFRONT_TAG_RESOURCE} \
--tags "${STRING_CLOUDFRONT_TAGS}"
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--resource | タグ対象リソース(ARN) | 必須 | 引数の例:Items=[{Key=<タグのキー名>,Value=<タグの値>}]
|
--tags | タグ文字列 | 必須 |
####CloudFrontディストリビューションの一覧表示
aws cloudfront list-distributions
####CloudFrontディストリビューションのタグ別一覧表示
aws cloudfront list-tags-for-resource \
--resource ${CLOUDFRONT_TAG_RESOURCE}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--resource | タグ対象リソース(ARN) | 必須 | |
※list-distributionsコマンドではタグ表示ができない。そのため、代わりに全てのディストリビューションに対してlist-tags-for-resourceコマンドを使用する事で、タグの有無を確認する。 |
####CloudFrontディストリビューションの詳細表示
aws cloudfront get-distribution \
--id ${CLOUDFRONT_DISTRIBUTION_ID}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--id | ディストリビューションID | 必須 |
####CloudFrontディストリビューションの詳細設定表示
aws cloudfront get-distribution-config \
--id ${CLOUDFRONT_DISTRIBUTION_ID}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--id | ディストリビューションID | 必須 |
####CloudFrontディストリビューションの更新
aws cloudfront update-distribution \
--id ${CLOUDFRONT_DISTRIBUTION_ID}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--id | ディストリビューションID | 必須 |
####CloudFrontディストリビューションの削除
aws cloudfront delete-distribution \
--id ${CLOUDFRONT_DISTRIBUTION_ID} \
--if-match ${CLOUDFRONT_ETAG}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--id | ディストリビューションID | 必須 | |
--if-match | ETag | 任意 |
####CloudFrontキャッシュ無効化の作成
aws cloudfront create-invalidation \
--distribution-id ${CLOUDFRONT_DISTRIBUTION_ID} \
--paths ${CLOUDFRONT_PATHS}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--distribution-id | ディストリビューションID | 必須 | |
--paths | キャッシュ無効化対象オブジェクトパス | 任意 |
####CloudFrontキャッシュ無効化の一覧表示
aws cloudfront list-invalidations \
--distribution-id ${CLOUDFRONT_DISTRIBUTION_ID}
オプション | 引数 | 必須/任意 | 備考 |
---|---|---|---|
--distribution-id | ディストリビューションID | 必須 |
#参考文献
- AWSCLIコマンドリファレンス:cloudfront
- JAWS-UG CLI専門支部:ハンズオン(簡易版): CloudFront入門