Öncelikli olarak Varnish Cache nedir sorusunu yanıtlayalım.
Varnish Cache, web uygulamalarını hızlandırmak için kullanılan açık kaynaklı bir HTTP hızlandırıcı (reverse proxy) yazılımıdır. Yüksek trafikli web sitelerinde ve içerik dağıtımında performansı artırmak amacıyla yaygın olarak kullanılır.
Plesk panelde Varnish Cache kurulumunu Docker üzerinden yapacağız.
Plesk panele giriş yapın Uzantılar > Docker eklentisinin kurulumunu gerçekleştirin. Daha sonra Varnish şeklinde bir arama yapın ilk gelen resmi versiyon imajına tıklayıp 6.6.2 versiyonu kurun.
Önemli Not: Sizde kapsayıcı adı varsayılan olarak varnish gelecek burada istediğiniz bir ismi kullanabilirsiniz. Burada belirlediğimiz isim bizim için önemli ssh da bir takım ayarlar yaparken bu ismi kullancağız.
Daha sonra ayarlarda Otomatik Bağlantı Noktası eşleme alanını kapatınız.
şeklinde bağlantı noktalarını ayarlayınız.
Bu ayarları yaptığımıza göre şimdi varnish çalıştıracağımız alan adının içine girelim. Barındırma ve DNS bölümüne tıklayalım ve Barındırma alanına girelim burada SSL/TLS Destekli alanın altında Ziyaretçileri bir SEO dostu HTTP 301 ile HTTP’den HTTPS’ye yeniden yönlendir seçeneğini devre dışı bırakalım.
Yine varnish aktif etmek istediğimiz alan adının içine girerek Docker Proxy Kuralları alanına tıklayalım ve Kural Ekle diyelim.
Bu aşamadan sonra artık işlemlerimizin bir kısmını SSH ile halledeceğiz.
iptables aracılığı ile apache2 için 7080 portuna izin vereceğiz.
iptables -I INPUT -p tcp --dport 7080 -s 172.17.0.0/24 -j ACCEPT
Eğer bir güvenlik duvarını kullanıyorsanız. Araçlar ve Ayarlar > Güvenlik (Güvenlik Duvarı) > Özel Kural Ekle diyerek;
izin vermelisiniz.
Tüm bunların dışında yine hizmet aldığınız firmanın filewall ayarlarından da ilgili portu açmayı unutmayın.
Yine Fail2Ban tarafında da izin vermelisiniz. Araçlar ve Ayarlar > Güvenlik > IP Adresi Yasaklaması (Fail2Ban) > Güvenilen IP Adresleri alanına 172.17.0.0/24 eklemelisiniz.
Aşağıda yer alan IP adresi “192.192.192.192” alanına sizin sunucu IP adresini yazınız. Ek olarak varsayılan olarak gelen “varnish” ismini değiştirdiyseniz değiştirdiğiniz ismi varnish yerine yazmanız gerekiyor. Eğer bunu doğru şekilde yapmazsanız kurulum sorunlu ilerleyecektir.
docker ps | grep varnish | awk {'print $1'} | xargs -i docker exec -t {} sed -i '/.port/c\ .port = "7080";' /etc/varnish/default.vcl
docker ps | grep varnish | awk {'print $1'} | xargs -i docker exec -t {} sed -i '/.host/c\ .host = "192.192.192.192";' /etc/varnish/default.vcl
docker ps | grep varnish | awk {'print $1'} | xargs -i docker restart {}
Plesk v18.0.56 ile apache2 localhost-ta dinleniyor olmasından dolayı, docker konteynerinin 0.0.0.0:7080 veri almasını sağlamak için apache2 için bir değişiklik daha yapmamız gerekiyor.
docker ps | grep varnish | awk {'print $1'} | xargs -i docker restart {}
Son yaptığımız işlemle artık Varnish çalışır hale geldi.