Как установить Varnish Cache с Apache на CentOS 7
Это руководство существует для этих версий ОС
- CentOS 8
- CentOS 7
На этой странице
- Что мы будем делать
- Необходимое условие
- Шаг 1. Установите и настройте Apache в CentOS 7
- Шаг 2. Настройте Apache на порт 8080
- Шаг 3. Установите Varnish на CentOS 7
- Шаг 4. Настройте Varnish в качестве обратного прокси-сервера для Apache
- Шаг 5. Настройка Firewalld
- Шаг 6. Тестирование
- Справочник
Varnish — это прокси-сервер, ориентированный на кэширование HTTP. Он разработан как ускоритель HTTP и может выступать в качестве обратного прокси-сервера для вашего веб-сервера Apache или Nginx. Varnish использовался для известных веб-сайтов с высокой посещаемостью, включая Wikipedia, The Guardian и New York Times.
В этом руководстве мы покажем вам, как установить и настроить ускоритель HTTP лака в качестве обратного прокси-сервера для веб-сервера Apache. Настоящий веб-сервер Apache будет работать с нестандартным HTTP-портом (работает на порту 8080). И Varnish будет работать как обратный прокси-сервер на HTTP-порту 80. В этом руководстве мы будем использовать сервер CentOS 7.
Что мы будем делать
- Установите Apache на CentOS 7.
- Настройте Apache на порт 8080.
- Установка Varnish на CentOS 7
- Настройте Varnish в качестве обратного прокси-сервера для Apache.
- Настройка брандмауэра
- Тестирование
Предпосылка
- Сервер CentOS 7
- Привилегии root
Шаг 1. Установите и настройте Apache на CentOS 7.
Мы установим веб-сервер Apache/httpd из репозитория CentOS 7, а затем настроим сервер, который будет работать на порту 8080.
Установите Apache/httpd с помощью приведенной ниже команды yum.
yum -y install httpd
После завершения установки запустите службу httpd и включите ее при загрузке системы с помощью приведенных ниже команд.
systemctl start httpd
systemctl enable httpd
Итак, служба httpd теперь работает. Проверьте это с помощью команды netstat или curl, как показано ниже.
netstat -plntu
curl -I localhost
Таким образом, веб-сервер Apache/httpd был установлен.
Шаг 2. Настройте Apache на порт 8080.
На этом шаге мы настроим веб-сервер Apache/httpd для работы на порту 8080. Для этого мы должны сначала отредактировать файл конфигурации httpd.conf.
Перейдите в каталог конфигурации Apache и отредактируйте файл httpd.conf.
cd /etc/httpd/
vim conf/httpd.conf
Измените порт по умолчанию с 80 на 8080 в строке прослушивания.
Listen 8080
Сохранить и выйти.
Теперь проверьте конфигурацию и убедитесь в отсутствии ошибок. Затем перезапустите службу apache/httpd.
apachectl configtest
systemctl restart httpd
Теперь снова проверьте с помощью netstat и убедитесь, что веб-сервер работает на порту 8080.
netstat -plntu
Шаг 3 — Установите Varnish на CentOS 7
На этом этапе мы установим высокопроизводительный HTTP-акселератор Varnish. Он доступен в репозитории EPEL (Extra Packages for Enterprise Linux), поэтому нам нужно установить репозиторий перед установкой Varnish.
Установите репозиторий EPEL с помощью следующей команды.
yum -y install epel-release
Теперь установите Varnish из репозитория EPEL с помощью команды yum ниже.
yum -y install varnish
После завершения установки запустите Varnish и добавьте его для запуска при загрузке системы с помощью приведенных ниже команд systemctl.
systemctl start varnish
systemctl enable varnish
По умолчанию Varnish будет использовать порты 6081 и 6082. Проверьте это с помощью приведенной ниже команды netstat.
netstat -plntu
И убедитесь, что мы получаем порт Varnish по умолчанию, как показано ниже.
Шаг 4. Настройте Varnish в качестве обратного прокси-сервера для Apache.
Итак, Varnish установлен, и теперь мы настроим его как обратный прокси для веб-сервера Apache. По умолчанию Varnish будет работать на HTTP-порту 80.
Перейдите в каталог конфигурации Varnish и отредактируйте конфигурацию по умолчанию в default.vcl.
cd /etc/varnish
vim default.vcl
Определите бэкэнд-раздел по умолчанию. Мы используем веб-сервер Apache, работающий на порту 8080, поэтому конфигурация приведена ниже.
backend default {
.host = "127.0.0.1";
.port = "8080";
}
Сохранить и выйти.
Затем настройте Varnish для работы с HTTP-портом 80. Отредактируйте файл Polish.params, находящийся в каталоге конфигурации Varnish.
vim varnish.params
В этом файле измените значение строки VARNISH_LISTEN_PORT на HTTP-порт 80.
VARNISH_LISTEN_PORT=80
Сохранить и выйти.
Теперь перезапустите Varnish и проверьте статистику с помощью команды netstat.
systemctl restart varnish
netstat -plntu
Убедитесь, что у вас есть результат, подобный показанному ниже.
Был установлен Varnish HTTP Accelerator, и теперь он действует как обратный прокси-сервер для веб-сервера Apache.
Шаг 5 — Настройте Firewalld
На этом этапе мы установим Firewalld и откроем новые порты HTTP и HTTPS.
Установите Firewalld с помощью следующей команды yum.
yum -y install firewalld
Теперь запустите службу и включите ее автоматический запуск при загрузке системы.
systemctl start firewalld
systemctl enable firewalld
Затем откройте новый порт для запросов HTTP и HTTPS с помощью команды firewalld-cmd, как показано ниже.
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
Перезагрузите конфигурацию брандмауэра.
Вот и все. Настройка Firewalld завершена.
Шаг 6 — Тестирование
Чтобы протестировать Varnish, сначала выполните следующую команду curl.
curl -I hakase-labs.co
И на выходе убедитесь, что вы получаете заголовок HTTP, аналогичный показанному на следующем снимке экрана.
Затем протестируйте Varnish из браузера. Для этого откройте веб-браузер и введите URL-адрес или адрес сервера.
http://hakase-labs.co
Убедитесь, что он работает, как показано ниже.
Примечание. Если вы получили 403 Forbidden, вам необходимо создать файл index.html в каталоге /var/www/html.
cd /var/www/html/
echo '<h1><center> Varnish- Apache - hakase-labs</center></h1>' > index.html
Двигаясь дальше, проверьте журнал лака, используя приведенную ниже команду.
varnishncsa
И вы получите журнал доступа к лаку.
Вот и все. Был установлен ускоритель Varnish HTTP, и теперь он работает как обратный прокси-сервер для веб-сервера Apache.
Ссылка
- https://varnish-cache.org/