Saya mencoba menginstal pernis di ubuntu 16.04,
Saya membaca beberapa artikel tidak ada yang berfungsi. Dari apa yang saya baca, sejak ubuntu 15.04, cara mengkonfigurasi pernis telah berubah (karena systemd).
Sekarang saya punya kekacauan nyata yang tidak berfungsi:
/ etc / default / varnish:
DAEMON_OPTS="-a :80 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s malloc,256m"
/etc/varnish/default.vcl (biasanya menunjuk ke host yang menunjuk ke 127.0.0 dan port 8080, tetapi untuk tujuan debug saya memodifikasinya ke domain eksternal) vcl 4.0;
# Default backend definition. Set this to point to your content server.
backend default {
.host = "www.varnish-cache.org";
.port = "80";
}
/etc/apache2/ports.conf
Listen 8080
grep -R 'ExecStart=/usr/sbin/varnishd' /etc/
/etc/systemd/system/varnish.service: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
/etc/systemd/system/varnish.service.d/customexec.conf:ExecStart=/usr/sbin/varnishd -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m
/etc/systemd/system/multi-user.target.wants/varnish.service: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
/lib/systemd/system/varnish.service:
GNU nano 2.5.3 Fichier : /lib/systemd/system/varnish.service
[Unit]
Description=Varnish HTTP accelerator
Documentation=https://www.varnish-cache.org/docs/4.1/ man:varnishd
[Service]
Type=simple
LimitNOFILE=131072
LimitMEMLOCK=82000
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
ExecReload=/usr/share/varnish/reload-vcl
ProtectSystem=full
ProtectHome=true
PrivateTmp=true
PrivateDevices=true
[Install]
WantedBy=multi-user.target
service --status-all | grep varnish
[ - ] varnish
[ + ] varnishlog
[ + ] varnishncsa
setelah
sudo service varnish stop
sudo service varnish start
Layanan pernis tidak mendengarkan http://127.0.0.1:80/
, sebelum reboot, itu berhenti http://127.0.0.1:6081/
tetapi tidak berfungsi lagi ... Saya tidak tahu harus berbuat apa lagi ...
EDIT: setelah reboot, tidak ada yang berhasil,
jika aku melakukan :
systemctl status varnish
● varnish.service - Varnish HTTP accelerator
Loaded: loaded (/etc/systemd/system/varnish.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/varnish.service.d
└─customexec.conf
Active: inactive (dead) since jeu. 2017-01-05 14:48:09 CET; 1s ago
Docs: https://www.varnish-cache.org/docs/4.1/
man:varnishd
Process: 5077 ExecStart=/usr/sbin/varnishd -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m (code=exited, status=0/SUCCESS)
Main PID: 5077 (code=exited, status=0/SUCCESS)
janv. 05 14:48:09 xubuntu-16 systemd[1]: Started Varnish HTTP accelerator.
service --status-all | grep varnish
[ - ] varnish
[ - ] varnishlog
[ - ] varnishncsa
jika saya sudo:, varnishd -d -f /etc/varnish/default.vcl
maka start
, semuanya berfungsi dengan baik ... sampai saya keluar dari cli
dipecahkan berkat respons @Gerald Schneider. Saya memposting langkah-langkah yang harus saya lakukan:
sudo apt remove varnish
sudo apt-get purge varnish
# I manually remove the 3 files in created in /etc/systemd/system/*
sudo apt install varnish
sudo nano /lib/systemd/system/varnish.service # put the rigth conf
sudo nano /etc/varnish/default.vcl #put the rigth conf
sudo systemctl daemon-reload
sudo service varnish restart
dan semuanya bekerja dengan baik! keajaiban ada di /lib/systemd/system/varnish.service
file, sumber daya online lainnya yang saya temukan membuat saya berpikir itu ada di tempat lain, jadi waspadalah dengan tutorial online (usang)!
Jawaban:
Anda perlu mengubah parameter mulai pernis dalam definisi layanan systemd juga. Anda dapat mengedit baris yang dimulai dengan
ExecStart
di file definisi layanan:Namun memodifikasi file ini, memiliki kelemahan bahwa itu tidak akan diperbarui di masa depan pembaruan paket. Atau, seperti yang disarankan dalam komentar, Anda bisa membuat file drop systemd , yang merupakan cara yang disukai untuk menambahkan pengaturan ke definisi systemd.
Di sini Anda hanya perlu menambahkan pengaturan yang ingin Anda ubah, semua yang lain akan diambil dari file definisi default.
Contoh:
Ini adalah baris default, ubah sesuai kebutuhan
Setelah itu, beri tahu systemctl untuk memuat ulang file konfigurasi dan untuk me-restart layanan
Pernis sekarang harus mendengarkan pada port 80.
sumber
[...] [Unit] Description=Varnish HTTP accelerator Documentation=https://www.varnish-cache.org/docs/4.1/ man:varnishd [Service] Type=simple LimitNOFILE=131072 LimitMEMLOCK=82000 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 ExecReload=/usr/share/varnish/reload-vcl [...]
systemctl edit varnish.service
secara otomatis membuat file unit menggantikan drop-in untuk AndaPerhatikan bahwa drop-in harus memiliki ExecStart kosong = Kalau tidak, Anda akan mendapatkan kesalahan memulai layanan (duplikat ExecStart)
Dengan
sumber