Varnishは、HTTPキャッシングに重点を置いたプロキシサーバーです。 HTTPアクセラレータとして設計されており、Webサーバー(ApacheまたはNginx)のリバースプロキシとして機能できます。ワニスは、ウィキペディア、ガーディアン、ニューヨークタイムズなどの注目度の高いトラフィックの多いウェブサイトで使用されています。
このチュートリアルでは、VarnishHTTPアクセラレータをApacheWebサーバーのリバースプロキシとしてインストールおよび構成する方法を示します。実際のWebサーバーApacheは、非標準のHTTPポート(ポート8080で実行)で実行されます。また、VarnishはHTTPポート80でリバースプロキシとして実行されます。このガイドでは、Ubuntu18.04LTSサーバーを使用します。
- ApacheWebサーバーをインストールします
- Apacheのデフォルトポートを変更する
- ワニスのインストール
- ワニスの構成
- セットアップをテストする
- Ubuntu 18.04 LTS
- root権限
開始するには、ApacheWebサーバーをインストールします。デフォルトでは、Ubuntuリポジトリで利用できます。
Ubuntuリポジトリを更新してから、aptコマンドを使用してApacheをインストールします。
apt update
apt install -y apache2
インストールが完了したら、Apacheサービスを開始し、次のsystemctlコマンドを使用してシステムの起動時に自動的に実行できるようにします。
systemctl start apache2
systemctl enable apache2
ApacheWebサーバーがインストールされました。
次に、すべてのユーザーがWebサーバーにアクセスできるようにするには、ファイアウォールルールでHTTPとHTTPSを許可する必要があります。デフォルトでは、UbuntuにはUFWという名前のファイアウォールパッケージが付属しています。
次のUFWコマンドを使用して、新しいSSH、HTTP、HTTPSポートを開きます。
ufw allow ssh
ufw allow http
ufw allow https
次に、ファイアウォールサービスを開始し、システムの起動時に自動的に起動できるようにします。
ufw enable
「y」と入力し、Enterキーを押して確認します。
HTTP、HTTPS、SSHの新しいポートが開かれ、ネットワークの外部からアクセスできます。
Apache Webサーバーをテストする場合は、netstatコマンドを使用して、apacheがポート80で実行されていることを確認できます。
netstat -plntu
または、次のcurlコマンドを使用できます。
curl -I hakase-labs.co
以下のような結果が得られるはずです。
このチュートリアルでは、バックエンドサーバーとしてApacheを使用し、標準のHTTPポート80では実行されません。ApacheWebサーバーはバックエンドとしてポート8080で実行され、標準のHTTPポート80は'によって使用されます。ワニス」。
デフォルトのApacheポートを変更するには、Apache構成「ports.conf」と「sites-available」ディレクトリの下にあるすべての仮想ホスト構成を編集する必要があります。
Apache構成ディレクトリに移動します。
cd /etc/apache2
Apache構成の「ports.conf」および「sites-available」ディレクトリの下にあるすべての仮想ホストファイルのポート「80」を「8080」に置き換えます。これを行うには、次のsedコマンドを実行します。
sed -i -e 's/80/8080/g' ports.conf
sed -i -e 's/80/8080/g' sites-available/*
次に、Apache構成をテストし、エラーがないことを確認してから、Apacheサービスを再起動します。
apachectl configtest
systemctl restart apache2
これで、ApacheはHTTPポート「8080」で実行されます。次に示すように「netstat」コマンドを使用して確認してください。
netstat -plntu
以下のような結果が得られることを確認してください。
したがって、ApacheWebサーバーがポート「8080」で実行されていることがわかります。
このステップでは、UbuntuリポジトリからVarnishをインストールします。このガイドでは、Varnish5.2を使用します。
次のaptコマンドを使用してニスをインストールします。
apt install -y varnish
インストールが完了したら、Varnishを起動し、システムの起動時に自動的に起動できるようにします。
systemctl start varnish
systemctl enable varnish
ワニスはUbuntu18.04システムにインストールされています。
デフォルトでは、パブリックアドレスの場合はポート「6081」、ローカルホストアドレスの場合は「6082」で実行されます。以下のnetstatコマンドを使用して確認してください。
netstat -plntu
そして、デフォルトのニスポートを取得します。
このステップでは、ApacheWebサーバーの前面にニスを設定します。 Varnishはhttpポート80で実行され、クライアントからのすべての要求は、ポート8080で実行されているApacheWebサーバーに送信される前にVarnishによって処理されます。
-バックエンド構成
'varnish'構成ディレクトリに移動し、デフォルトファイル'default.vcl'をバックアップします。
cd /etc/varnish/
cp default.vcl default.vcl.aseli
vimエディターを使用してワニス構成「default.vcl」を編集します。
vim default.vcl
16行目で「バックエンド」構成を定義します。セットアップのバックエンドはApacheであり、ポート8080で実行されています。したがって、apacheセットアップのワニス構成は次のようになります。
backend default {
.host = "127.0.0.1";
.port = "8080";
}
保存して終了します。
-ポート80でワニスを実行
次に、デフォルトのニスポートを変更する必要があります。ワニスのデフォルトのポートは「6081」と「6082」であり、ポートをHTTPポート80に変更する必要があります(パブリックアドレスの場合のみ)。
'/ etc/default'ディレクトリのニスパラメータ設定を編集します。
cd /etc/default/
vim varnish
'DAEMON_OPTS'行を編集し、以下に示すように、パブリックアドレスのデフォルトポート'6081'を標準HTTPポート'80'に変更します。
DAEMON_OPTS="-a :80 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s malloc,256m"
保存して終了します。
次に、ワニスサービスファイル「varnish.service」を編集する必要があります。 '/ lib / systemd / system'ディレクトリに移動し、vimを使用してサービスファイルを編集します。
cd /lib/systemd/system/
vim varnish.service
'ExecStart'行で、ニス開始コマンドを次のように変更します。
ExecStart =/ usr / sbin / varnishd -j unix、user =vcache -F -a:80 -T localhost:6082 -f /etc/varnish/default.vcl -S / etc / varnish / secret -s malloc、256m
保存して終了します。
systemdサービス構成をリロードしてから、ニスを再起動します。
systemctl daemon-reload
systemctl restart varnish
次に、ニスをチェックして、HTTPポート80で実行されていることを確認します。
netstat -plntu
そのため、Varnishは、ポート8080にあるApacheWebサーバーのフロントエンドとしてHTTPポート80で実行されています。
curlコマンドを使用してテストします。
curl -I hakase-labs.co
以下に示すように、HTTPヘッダーを取得してください。
ウェブブラウザから確認すると、テストサーバーのURLはhttp://hakase-labs.co/です。ここでサーバーのURLを選択してください。
そして、まだApacheコンテンツを取得しています。
'varnishncsa'コマンドを使用してワニスログを確認します。
varnishncsa
そして、Apacheアクセスログからのみログを取得します。
ApacheWebサーバーのワニスのインストールと構成が完了しました。