🦥

【AWS/ALB】ALB初心者の勉強方法とその備忘録

に公開

どうも!前歯すきっ歯です🦷

LB初心者がAWS ALBを勉強したので、その時に個人的に分かりやすかった資料をまとめます~!
既に資料を世に出してくださった先人の皆様のおかげで、
ここで自分が手順などを記載するまでもないと感じています。ありがとうございます!!!

0.はじめに

0-1.前提

  • VPC、サブネット、ルートテーブル、IGWは作成済みで通信ができる状態。
  • 異なるAZのパブリックサブネットに簡易的なWebサーバを置きます。
    ※簡易的=インスタンスにアクセスした時に、アクセスしたインスタンスの名前が表示され、どのインスタンスにアクセスしたか分かる程度
  • WebサーバのOSはAmazonLinux2023です。
  • Webサーバの構築はEC2のユーザーデータを活用するので、WebサーバにはSSH等でアクセスせずにALBとAutoScallingの構築を行います。

1.教材まとめ

自分は以下[1-1]~[1-3]の記事を一読した後に、各記事を見ながら構築していきました。

1-1.AutoScalling関連

1-1-1.[入門] AWSのネットワークとAutoScalingなWebサーバーを作るハンズオンを作りました

▼推しポイント---------------------------------------------------------------------------

  • AutoScallingとALBを作るUI細かく記載されている。
  • これを見れば今回の作業の流れの9割が分かる。

1-2.ALB関連

1-2-1.AWS : Application Load Balancer (ALB) の構築方法

▼推しポイント---------------------------------------------------------------------------

  • 最近の記事なのでUIが同じ。
  • ACMとの連携、セッションの維持について記載あり。
  • ALBのDNSの実態はAZのDNSをラウンドロビンで参照している記載あり。

1-2-2.【AWS 入門】ELBとEC2で負荷分散してみよう

▼推しポイント---------------------------------------------------------------------------

  • なんといっても無料のハンズオン動画であること!!!
  • 踏み台サーバをどこに置くかまで説明してくださる丁寧な解説
  • インスタンスをプライベートサブネットにデプロイしている。
    (よくある記事ではパブリックサブネットにデプロイするケースが多い)

1-2-3.AWSチュートリアル(Webサーバを作ってみよう)第2章:ALB編①

▼推しポイント---------------------------------------------------------------------------

  • 構築方法が丁寧にまとめられている。
  • 各設定項目の意味が詳細にまとめられている。

1-2-4.AWSのロードバランサ機能・使い分けについて(ALB作成手順付き)

▼推しポイント---------------------------------------------------------------------------

  • 複数のターゲットグループを設けてリスナールールに基づき通信を振り分ける例があります。

1-3.ユーザーデータ関連

EC2を起動したのちに「SSH接続して、Apacheをインストールして…」とかしているのはめんどくさいので、EC2作成時にユーザーデータを入れることで、ALBアクセス時に自動的にインスタンス名が表示できるようにしましょう!

1-3-1.【小ネタ】EC2作成時にユーザーデータでApacheをインストールしてドキュメントルートにindex.htmlを生成する方法

EC2作成時にユーザーデータ内に上記リンクを参考に以下のテキストを入れます。
適宜、インスタンス名は自分で設定した値に変更してください。

ユーザーデータへ入力するスクリプト
#!/bin/bash
yum update -y
yum install -y httpd
systemctl start httpd
systemctl enable httpd
touch /var/www/html/index.html
echo "[インスタス名]" | tee -a /var/www/html/index.html

2.知識系

2-1.【初心者向け】Application Load Balancer(ALB)とターゲットグループの属性についてまとめてみた

▼推しポイント---------------------------------------------------------------------------

  • ALBの属性とターゲットグループの属性について詳細なまとめ記事!
    自分で調べていたらとんでもなく時間がかかりそうです…。ありがたいです。

2-2.AWS運用 ELBを用いた負荷分散で“高可用性”を実現しよう(初心者向け)

▼推しポイント---------------------------------------------------------------------------

  • ALBとNLBの通信の違いについて書かれている。

3.その他

ターゲットグループ設定内のプロトコルバージョンについて知らなかったので、
調べた時に分かりやすかった資料を置いておきます!

3-1.普及が進む「HTTP/2」の仕組みとメリットとは

3-2.いまさら聞けないgRPCの基礎

3-3.[アップデート] ALBでエンドツーエンドのHTTP/2サポートによりgRPCワークロードが可能になりました

おわりに

その他、ALB構築の際に勉強になる記事や動画があればコメントお願いします!

Discussion