Ubuntu14.04でリバースプロキシとしてApacheTrafficServerを設定する方法
序章
Apache Traffic Server は、非常に低いレイテンシーを維持しながら、大量の同時リクエストを処理できる、非常にスケーラブルなキャッシングプロキシサーバーです。 VarnishやSquidなどの他の一般的なプロキシサーバーと比較すると、通常、消費するメモリが少なく、応答が速くなります。 また、最新のマルチコアプロセッサを最大限に活用するように設計されています。 要件に応じて、リバースプロキシまたはフォワードプロキシとして使用できます。
このチュートリアルでは、Ubuntu14.04にApacheTraffic Serverをインストールし、キャッシングリバースプロキシとして動作するように構成する方法について説明します。
前提条件
このチュートリアルに従うには、次のものが必要です。
-
1つのUbuntu14.04ドロップレット
-
少なくとも1GBのスワップスペース
ステップ1—トラフィックサーバーのインストール
TrafficServerはUbuntu14.04のデフォルトのリポジトリで利用できるため、 apt-get
. 更新する前に、必ずパッケージインデックスファイルを更新してください。
- sudo apt-get update && sudo apt-get install trafficserver
トラフィックサーバーは、デフォルトでポート8080でリッスンします。 ブラウザを使用してアクセスできます http://your_server_ip:8080/
今。 ただし、まだ構成していないため、エラーが表示されます。
ステップ2—Webサーバーのインストール
定義上、プロキシサーバーは外部ユーザーとWebサーバーの間の仲介役として機能します。 したがって、Traffic Serverの設定を開始する前に、ApacheHTTPServerなどのWebサーバーをマシンにインストールする必要があります。
を使用してApacheをインストールして起動します apt-get
.
- sudo apt-get install apache2
これで、ブラウザを使用してアクセスできます http://your_server_ip/
Apacheのウェルカムページを表示します。
手順3—Webサーバーへのリモートアクセスを無効にする
Apacheは、デフォルトですべてのネットワークインターフェイスで接続を受け入れます。 ループバックインターフェイスでのみ接続を受け入れるように設定することで、リモートユーザーがアクセスできないようにすることができます。
開ける ports.conf
を使用して nano
またはお気に入りのテキストエディタ。
- sudo nano /etc/apache2/ports.conf
を含む行を検索します Listen 80
ディレクティブを次のように変更します。
Listen 127.0.0.1:80
ファイルを保存して終了します。
次に、開く apache2.conf
.
- sudo nano /etc/apache2/apache2.conf
ファイルの最後に次の行を追加します。
ServerName localhost
ファイルを保存して閉じます。
設定の変更を適用するには、次のコマンドを使用してApacheを再起動します。
- sudo service apache2 restart
ブラウザを使用してアクセスしてみてください http://your_server_ip/
また。 サーバーへのリモートアクセスをブロックしたため、ブラウザにエラーが表示されるはずです。
ステップ4—トラフィックサーバーをリバースプロキシとして構成する
このステップでは、TrafficServerをリバースプロキシとして構成します。 これを行うには、 remap.config
、これは、TrafficServerのマッピングルールを定義するために編集する必要のあるファイルです。
- sudo nano /etc/trafficserver/remap.config
ポート8080のサーバーのIPアドレスへのすべての要求がWebサーバーのローカルアドレスとポートにマップされるという簡単なルールを作成しましょう。 これを行うには、ファイルの最後に次の行を追加します。
map http://your_server_ip:8080/ http://127.0.0.1:80/
ファイルを保存して終了します。
新しいマッピングルールをアクティブにするには、 reread_config
コマンドの traffic_line
:
- sudo traffic_line --reread_config
ブラウザを開いて、 http://your_server_ip:8080/
. ここでApacheのウェルカムページを表示できる場合は、TrafficServerをリバースプロキシとして正常に構成しています。
ステップ5—すべてをキャッシュするようにTrafficServerを構成する
デフォルトでは、TrafficServerはHTTP応答が含まれている場合にのみHTTP応答をキャッシュします。 Cache-Control
また Expires
アイテムをキャッシュに保存する期間を明示的に指定するヘッダー。 ただし、Webサーバーは静的ファイルのみを提供しているため、すべての応答をキャッシュしても安全です。
すべてのHTTP応答をキャッシュするようにTrafficServerを構成するには、次のように呼ばれる構成変数の値を変更する必要があります。 proxy.config.http.cache.required_headers
0に。 これは、 set_var
コマンドの traffic_line
.
- sudo traffic_line --set_var proxy.config.http.cache.required_headers --value 0
を使用して変更を適用します reread_config
国旗。
- sudo traffic_line --reread_config
ブラウザを開いて、 http://your_server_ip:8080/
また。 これにより、ApacheウェルカムページがTrafficServerのキャッシュに保存されます。
ステップ6—キャッシュの検査
Traffic Serverのキャッシュの内容を表示するには、Webベースのインターフェイスを備えたCacheInspectorと呼ばれるツールを使用できます。
ツールをアクティブにするには、の値を設定します proxy.config.http_ui_enabled
構成変数を1に設定します。
- sudo traffic_line --set_var proxy.config.http_ui_enabled --value 1
次に、アクセスに使用するパスを指定するマッピングルールを作成します。 開ける remap.config
再び使用 nano
.
- sudo nano /etc/trafficserver/remap.config
キャッシュインスペクターをで利用できるようにしましょう /inspect
. これを行うには、ファイルのtopに次の行を追加します。
- map http://your_server_ip:8080/inspect http://{cache}
ファイルを保存して終了します。
変更を適用するには、TrafficServerを再起動します。
- sudo service trafficserver restart
これで、キャッシュインスペクターを使用する準備が整いました。 ブラウザを開いて、 http://your_server_ip:8080/inspect/
. 次のようなページが表示されます。
次に、 Lookupurlリンクをクリックします。
これで、テキストフィールドにURLを入力し、 Lookup ボタンをクリックして、それがキャッシュに保存されているかどうかを確認できます。
たとえば、次のように入力できます http://your_server_ip:8080/
Webサーバーのホームページがキャッシュから提供されているかどうかを確認します。 そうである場合は、次のようなページが表示されます。
結論
これで、Ubuntu14.04にApacheTraffic Serverをインストールし、それをキャッシングリバースプロキシとして構成する方法をマスターしました。 このチュートリアルではWebサーバーとしてApacheを使用しましたが、他のWebサーバーと同じように簡単に使用できます。 Traffic Serverの詳細については、管理者ガイドを参照してください。