Varnish cache — это ускоритель веб-приложений, который используется в качестве кеширующего обратного HTTP-прокси. Varnish кейс имеет много преимуществ по сравнению с другим программным обеспечением для кэширования и может ускорить доставку до 1000 раз. Varnish предлагает множество функций, таких как частный CDN, сжатие и распаковка Gzip, передача и выборка потоковой передачи HTTP и т.д.
Мы советуем вам установить Varnish Cache 6.0 LTS, стабильную и поддерживаемую версию Varnish. Он поддерживается Varnish Software и получает частые обновления.
Сообщество Varnish Cache выпускает два релиза в год, которые считаются свежими релизами. Эти выпуски в основном основаны на характеристиках и не гарантируют обратной совместимости. В этих версиях также исправлены ошибки.
В этом сообщении блога для установки мы собираемся настроить его с помощью веб-сервера Apache. Этот процесс очень прост и может занять до 20 минут. Давайте начнем!
Предпосылки
- Сервер с Ubuntu 22.04 в качестве ОС
- Права пользователя: пользователь root или обычный пользователь с привилегиями sudo
Шаг 1. Обновите систему
Свежая установка Ubuntu 22.04 требует обновления пакетов до последних доступных версий.
sudo apt-get update -y && sudo apt-get upgrade -y
Шаг 2. Установите Varnish
Во-первых, мы собираемся добавить репозиторий Varnish, потому что его нет в репозитории Varnish по умолчанию.
curl -s -L https://packagecloud.io/varnishcache/varnish60lts/gpgkey | sudo apt-key add -
sudo tee /etc/apt/sources.list.d/varnishcache_varnish60lts.list > /dev/null <<-EOF
deb https://packagecloud.io/varnishcache/varnish60lts/$ID/ $VERSION_CODENAME main
EOF
sudo tee /etc/apt/preferences.d/varnishcache > /dev/null <<-EOF
Package: varnish varnish-*
Pin: release o=packagecloud.io/varnishcache/*
Pin-Priority: 1000
EOF
Установите varnish кеш с помощью команд ниже:
sudo apt install varnish -y
После установки запустите и включите службу.
sudo systemctl start varnish.service && sudo systemctl start varnish.service
По умолчанию служба varnish работает на порту 6081. Вы можете проверить это с помощью команды ниже:
netstat -tunlp | grep 6081
Вы должны получить следующий вывод:
root@host:~# netstat -tunlp | grep 6081
tcp 0 0 0.0.0.0:6081 0.0.0.0:* LISTEN 2449/varnishd
tcp6 0 0 :::6081 :::* LISTEN 2449/varnishd
Это еще одно доказательство того, что Varnish кеш успешно установлен и служба запущена.
Шаг 3. Установите Apache2
Во-первых, нам нужно установить веб-сервер Apache, чтобы позже настроить Varnish. Чтобы установить веб-сервер Apache, выполните следующую команду:
sudo apt install apache2 -y
Чтобы запустить и включить службу Apache, выполните следующую команду:
sudo systemctl start apache2.service && sudo systemctl enable apache2.service
По умолчанию служба Apache работает на порту 80. Нам нужно изменить это, чтобы мы могли настроить кеш Varnish для работы с веб-сервером Apache позже.
Чтобы изменить порт Apache с 80 на 8080, откройте файл /etc/apache2/ports.conf в своем любимом текстовом редакторе и измените Listen 80 на Listen 8080, чтобы он выглядел следующим образом:
Listen 8080
Сохраните файл, закройте его и перезапустите службу Apache.
sudo systemctl restart apache2.service
Чтобы проверить, все ли в порядке, выполните следующую команду:
netstat -tunlp | grep apache2
Вы должны получить следующий вывод:
root@host:# netstat -tunlp | grep apache2
tcp6 0 0 :::8080 :::* LISTEN 127811/apache2
Шаг 4. Настройте Varnish Cache
Теперь, когда Varnish установлен и Apache прослушивает порт 8080, мы можем приступить к настройке Varnish. Прежде всего, мы собираемся изменить прослушивающий порт Varnish по умолчанию с 6081 на 80.
Откройте файл /lib/systemd/system/varnish.service и измените порт на 80, а также размер кэша на 1 ГБ, чтобы он выглядел следующим образом:
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,1g
Сохраните файл, закройте его, перезагрузите демон и перезапустите службу Varnish.
sudo systemctl daemon-reload && sudo systemctl restart varnish.service
Далее нужно проверить серверную часть кеша Varnish. Откройте файл /etc/varnish/default.vcl и проверьте, затронуты ли изменения в этом файле. Строки должны выглядеть так:
backend default {
.host = "127.0.0.1";
.port = "8080";
}
Снова перезапустите службы Apache и Varnish:
sudo systemctl restart apache2 varnish
Последняя команда — проверить с помощью команды curl, правильно ли работает Varnish:
curl -I YourIPAddressHere
Вы должны получить следующий вывод:
root@host:/etc/apache2# curl -I YourIPAddressHere
HTTP/1.1 200 OK
Date: Tue, 04 Oct 2022 14:05:59 GMT
Server: Apache/2.4.52 (Ubuntu)
Last-Modified: Wed, 21 Sep 2022 20:51:19 GMT
Vary: Accept-Encoding
Content-Type: text/html
X-Varnish: 2
Age: 0
Via: 1.1 varnish (Varnish/6.6)
ETag: W/"119c-5e9361b575472-gzip"
Accept-Ranges: bytes
Connection: keep-alive
Поздравляем! Вы успешно установили и настроили кеш Varnish в Ubuntu 22.04.
Если вам понравился этот пост об установке кеша Varnish на Ubuntu 22.04, поделитесь им с друзьями в социальных сетях. Спасибо.