投稿

4月, 2022の投稿を表示しています

(続)静的Webサイトホスティング二重化してみる(その4)

イメージ
前回までで おおよそ意図した構成は完成したものの。やっぱりコンテンツを二重投稿するのはイヤだということで GCSのときと同様 にGitHubActions使ってmainブランチにコンテンツをpushすると S3 と Blob に同時にコンテンツをアップロードするという構成を作ります。 AWSのIAMでS3にオブジェクトアップロードできる権限を作るとこと GitHubActions の設定やなんかは GCSのとき のを参考にシークレットとか設定します。 最終的に↓感じの構成になりました。 ◆シリーズ その1:AWSでCloudFront+S3構成を作る その2:AzureでApplicationGateway+Blob構成を作る その3:DNSでフェイルオーバー設定 その4:S3とBlobにGitHubActions使ってコンテンツ同期(今回) その5:TerraformでIaC化 ◆環境 azure-cli 2.14.0 Ubuntu20.04.4LTS ◆作業内容 1.AzureのCREDENTIALSを発行 ローカルで発行しようとしたもののエラーが発生したて解消できませんでした。どんだけあがいてもうまく行かなかったのでAzureのCloudShell上でコマンドを叩きます。 $ az ad sp create-for-rbac --name tohonokai_tk --role contributor \ --scopes /subscriptions/${SUBSCRIPTION_ID}/resourceGroups/${RESOURCE_GROUP_NAME} \ --sdk-auth The underlying Active Directory Graph API will be replaced by Microsoft Graph API in Azure CLI 2.37.0. Please carefully review all breaking changes introduced during this migration: https://docs.microsoft.com/cli/azure/microsoft-gr

(続)静的Webサイトホスティング二重化してみる(その3)

イメージ
 前回 まででAzureのBlobによる静的サイトホスティング構成が完了しました。いよいよ今回でDNSの設定を書き替えてフェイルオーバ環境を構築します。 登録されているAWSのAliasレコードのAレコードを削除してからヘルスチェックを登録してAレコードにフェイルオーバーの設定を施してから登録を行うという内容です。 最終的にこういう構成になります。 ◆シリーズ その1:AWSでCloudFront+S3構成を作る その2:AzureでApplicationGateway+Blob構成を作る その3:DNSでフェイルオーバー設定(今回) その4:S3とBlobにGitHubActions使ってコンテンツ同期 その5:TerraformでIaC化 ◆環境 aws-cli/2.4.27 Python/3.8.8 Linux/5.4.0-104-generic exe/x86_64.ubuntu.20 prompt/off Python 3.10.3 Ubuntu20.04.4LTS ◆作業内容 コマンドラインでの作業となります # 1.Route53ヘルスチェック #・クラウドフロント情報取得 $ CLOUDFRONT_URL=$(aws cloudfront list-distributions \ --query "DistributionList.Items[].{DomainName: DomainName, OriginDomainName: Aliases.Items[0]}[? OriginDomainName == '${YOUR_DOMAIN}'] | [0].DomainName"\ --output=text \ ) && echo $CLOUDFRONT_URL #・ヘルスチェック作成 $ cat << EOF > create-health-check.json { "Type": "HTTPS_STR_MATCH", "ResourcePath": "/", "FullyQualifiedDomainName": "$CLOUDFRONT_URL&

(続)静的Webサイトホスティング二重化してみる(その2)

イメージ
  前回 はAWS-CLIでAWS上に静的サイトホスティングの構成を作るところまでを終わらせました。今回は Azure-CLI を使って、Blob+ApplicationGatewayの構成で静的Webサイトホスティングを有効化してSSL証明書をぶち込むところまでをやってみます。SSLは ZeroSSL を使用します。(自動更新の仕組みまでは作れませんでした。残念) ◆シリーズ その1:AWSでCloudFront+S3構成を作る その2:AzureでApplicationGateway+Blob構成を作る(今回) その3:DNSでフェイルオーバー設定 その4:S3とBlobにGitHubActions使ってコンテンツ同期 その5:TerraformでIaC化 ◆環境 azure-cli 2.14.0 Python 3.10.2 Ubuntu20.04.4LTS ◆作業内容 1.事前準備(SSL準備) (1)ZeroSSLでCNAME用文字列取得 ・ZeroSSLに新規登録し、[NewCertificate]で新規証明書の発行を開始する ・ドメインを入力して[NextStep]をクリックする ・[90-Day Certificate]を選択して[Next Step]をクリック ・[CSR&Contract]で[Auto-Generate CSR]が有効であることを確認し[Next Step]をクリック ・Freeを選択して[Next Step]をクリック ・[DNS(CNAME)]を選んで表示された内容をメモし[Next Step]をクリックする (2)AWSのRoute53にZeroSSLのCNAME登録 $ cat << EOF > createcnamerecode.json { "Comment": "Creating Alias resource record sets in Route 53", "Changes": [{ "Action": "CREATE", "ResourceRecordSet": {