投稿

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

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

イメージ
 以前、 AWSとGCPで静的Webサイトホスティングを冗長化 していました。 けど GCP じゃなくて Azur なんだよAzureとか言われそうなところもあるのでAzureでできないものかと悶々としておりました。 そんな中Azureにも ApplicationGateway なるものが存在しバックエンドに AzureBlob の静的サイトホスティングを配置しIPアドレスも割当可能とのことから、これ行けるんじゃなかろうかと思って少し取り組んでみようと思いました。 まずは前回はマネジメントコンソールからスタートしたので、思い切って今回は AWS-CLIv2 でやってみます。なんか AWS で静的Webサイトホスティングやるの久しぶりだな。 何回かシリーズになるかどうか謎ですが、気が向いたらお付き合いいただけると幸いです。ドメインは freenom で取得しています。(お約束の無料ドメイン) ◆シリーズ その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.事前準備 # 1.AWS-CLIのv1系アンインストール $ pip uninstall awscli Proceed (y/n)?y Successfully uninstalled awscli-1.18.39 # 2.AWS-CLIのv2系インストール $ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" $ unzip awscliv2.zip $ sudo ./aws/install --update $ /usr/local/bin/aws --version

Kubernetesお勉強その7【環境構築】Istioに入門してみる

kubernetes ってやっぱり マイクロサービス で使うことを想定しているわけだからやっぱり サービスメッシュ とか大事になってくるわけで。さくっとそのサービスメッシュを管理してくれる Istio を試してみました。といってもサンプルの手順なぞっただけでほとんどコピペですが・・・。 ロギング とか、 認証 ・ 認可 とかコンテナの制御系周りでビジネスに関係ないとこは切り出して POD が ビジネスロジック に集中できるような仕組みのようなもんという理解です。(正解かどうかは知らんけど) PODがマイクロサービスを担うような感じにしたい ので、マイクロサービスとして共通のものを一々POD毎に書いてられっかというのが背景にあるのかなと、結局最後は ドメイン駆動設計 に行き着く感じなんかなぁと思いました。 けど SOA とどこが違うんすっかとモヤモヤとしつつ手を動かしました。手を動かすところはほかの先人のサイトのコピペばかりなのであまり役に立たないかもしれないです。 ◆手順 # 1.FireWall設定(FireWallを一旦リセットし内部からの通信のみ許可) $ sudo ufw reset $ sudo ufw enable $ sudo ufw allow from 192.168.0.0/24 $ sudo ufw reload # 2.Istioctlインストール $ curl -L https://istio.io/downloadIstio | sh - $ cd $ echo 'export PATH="$PATH:/home/youruser/istio-1.13.0/bin"' | tee -a .bashrc $ source .bashrc $ istioctl x precheck # 3.metallb準備(IstioでLoadBarancer使うので事前準備) $ kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.12.0/manifests/namespace.yaml $ kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/