構成を考える

今回、技術向上を目的として実験的にWEBサーバーと、関連するサービスを構築していく。

以下に今回構築する環境の大まかな図を示す。
Untitled Diagram (1).png

図の表記 説明
サーバー① プロキシサーバー。サーバー②がインターネットに出る際に経由する
サーバー② WEBサーバー。Apacheを動かす
ELB サーバー②とクライアントの間でやり取りする
S3バケット 各サーバーにマウントし、ログなど再度サーバー内で参照しないようなデータを保存する。

サーバー①
・Amazon Linux2
・squid Version 3.5.20 (プロキシOSS)
・fuse
・goland
・git
・goofys

サーバー②
・Amazon Linux2
・Apache 2.4
・fuse
・goland
・git
・goofys

※ELB用の証明書登録、S3へのアクセスのためのIAMロール作成は省略する。

構築

セキュリティグループの作成
 各サーバー、ELBに割り当てるセキュリティグループ(以降、SGと表記する)を作成する。
 作成するSGの名前と内容は以下のようにサーバー、およびELBと対応させる。
 
 サーバー①:server1SG
  インバウンド:server2
  アウトバウンド:0.0.0.0

 サーバー②:server2SG
  インバウンド:ELBSG
  アウトバウンド:server1

 ELB:ELBSG
  インバウンド:0.0.0.0
  アウトバウンド:0.0.0.0

サブネットの作成
 図通りに、ELB、サーバー①用のパブリックサブネット、サーバー②用のプライベートサブネットを作成する。

S3バケットの作成
 マネジメントコンソール画面上でS3バケットを作成する。

インスタンスの作成
 マネジメントコンソール画面上でサーバー①、サーバー②のインスタンスをそれぞれ作成する。
 インスタンスタイプ、EBSボリュームは初期状態で作成する。

ターゲットグループの作成
 マネジメントコンソール画面上でターゲットグループを作成する。
 サーバー②を登録インスタンスとし、プロトコルはHTTPで作成する。

ELBの作成
 作成したターゲットグループをデフォルトの転送先に指定して、ELBを作成する。

OSの設定、パッケージのインストール
 サーバー①にて、プロキシサーバーを先に作成する。
 サーバー①が作成できたのちにサーバー②にてサーバー①経由の通信でパッケージのインストールを試みる。
 今回は、profileでの設定ではなく、yumやgitなどそれぞれの設定でプロキシサーバーを経由する設定を試みる。

検証編へ

実際の構築の様子や、使用したコマンドについては【検証編】にて紹介する。

参考

プロキシ
https://qiita.com/hana_shin/items/0f574358d040b4c60889#32-squid%E3%81%AE%E3%83%9D%E3%83%BC%E3%83%88%E7%95%AA%E5%8F%B7%E9%96%8B%E6%94%BE

go getのプロキシ設定
https://qiita.com/reud/items/e135b5ccb666a39b5b25

Apache
https://weblabo.oscasierra.net/apache-installing-apache24-yum-centos7-1/

TOP