固定IPでNLBを使えると何が良いのか
Aレコードに指定できる
外部にネームサーバーがあるドメインを使ってAレコードに指定できます
無停止で再起動できる
1台ずつ再起動することで無停止で運用できるようになります
負荷を分散させられる
複数台ロードバランサーに付けられるので負荷分散させられます
AmazonLinuxにLet’s EncryptでSSLを導入する
cerbotをインストールして証明書を取得します
sudo curl https://dl.eff.org/certbot-auto -o /usr/bin/certbot-auto
sudo chmod 700 /usr/bin/certbot-auto
sudo certbot-auto certonly --webroot -w /usr/share/nginx/html -d nitamago.example.com --email nitamago@example.com --debug
ファイルが /etc/letsencrypt/live/nitamago.example.com/
以下にできるので証明書をNginxに設定します
sudo cat /etc/letsencrypt/live/nitamago.example.com/cert.pem /etc/letsencrypt/live/nitamago.example.com/fullchain.pem > /etc/letsencrypt/live/nitamago.example.com/cert_chain.pem
sudo chmod 700 /etc/letsencrypt/live/nitamago.example.com/cert_chain.pem
Nginxで証明書を指定する設定を書いてリロードします
ssl_certificate "/etc/letsencrypt/live/test-nlb.kozakana.net/cert_fullchain.pem";
ssl_certificate_key "/etc/letsencrypt/live/test-nlb.kozakana.net/privkey.pem";
これでhttpsの設定が完了です
NLBの設定
- EIPを取得します
- セキュリティグループを設定します 80番と443番ポートを開けたセキュリティーグループを作成する
- ターゲットグループを設定します プロトコルをTCPにして、ポートを80番にしたものと443番にしたものの二つを作ります
- NLBの作成
Network Load Balancer
を選ぶ- リスナーに
TCP 80
とTCP 443
を登録します - アベイラビリティーゾーンの設定でElasticIPで先に作っておいたEIPを指定します。この際IPを一つにする必要がある場合にはアベイラビリティーゾーンを1つにします
- ターゲットグループで3で作成した設定を追加します。この画面では一つしか設定できないので後からもう一つを設定します
- 作成後NLBにもう一つのターゲットグループを追加します
EIPを指定しているとNLBの作成に時間がかかるようで5分〜10分程度かかりますが、無事作成されれば完了です