컴퓨터 / Computer

CentOS 7에 Varnish 4.1 설치하기

Logo 

varnish 3 버전을 애용했는데, 지원이 중단되었다. 지금은 varnish 4와 6이 지원 대상이다. 그래서 아래와 같이 정보를 수정한다.


1. varnish release 정보 (https://varnish-cache.org/releases/index.html, 2019년 3월 7일 현재. varnish는 6개월 단위로 갱신된다 함.)  


ReleaseDateNotesDownload
Varnish Cache 6.1.12018-10-26Freshvarnish-6.1.1.tgz
Varnish Cache 6.0.32019-02-19Supportedvarnish-6.0.3.tgz
Varnish Cache 5.2.12017-11-14Retiredvarnish-5.2.1.tgz
Varnish Cache 5.1.32017-08-02Retiredvarnish-5.1.3.tgz
Varnish Cache 5.0.02016-09-15Retiredvarnish-5.0.0.tgz
Varnish Cache 4.1.112019-02-11Supportedvarnish-4.1.11.tgz
Varnish Cache 4.0.52017-08-02End Of Lifevarnish-4.0.5.tgz
Varnish Cache 3.0.72015-03-23End Of Lifevarnish-3.0.7.tgz


4.1.11 버전과 6.0.3 버전은 지원이 된다 하니 4.1 버전으로.


2. 사전에 설치해야 할 패키지 pygpgme, yum-utils  ( 해 보니 이미 설치되어 있음) 

아래 명령어를 통해서 필요 패키지를 설치한다. 보통은 이미 설치가 되어 있더라.


   yum install pygpgme yum-utils 


3. varnish 4.1 설치 ( https://community.centminmod.com/threads/varnish-repo-failed.12768/ )

yum에 repository 설정을 해야 하니   /etc/yum.repos.d/varnish-4.1.repo 생성 후 아래를 복사


 


[varnishcache_varnish41]

name=varnishcache_varnish41

baseurl=https://packagecloud.io/varnishcache/varnish41/el/7/$basearch

repo_gpgcheck=1

gpgcheck=0

enabled=1

gpgkey=https://packagecloud.io/varnishcache/varnish41/gpgkey

sslverify=1

sslcacert=/etc/pki/tls/certs/ca-bundle.crt

metadata_expire=300

priority=2


[varnishcache_varnish41-source]

name=varnishcache_varnish41-source

baseurl=https://packagecloud.io/varnishcache/varnish41/el/7/SRPMS

repo_gpgcheck=1

gpgcheck=0

enabled=1

gpgkey=https://packagecloud.io/varnishcache/varnish41/gpgkey

sslverify=1

sslcacert=/etc/pki/tls/certs/ca-bundle.crt

metadata_expire=300


그리고 혹시나 남아 있을지 모를 캐시를 아래 명령어로 삭제한다.


 yum makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish41'


이제 아래 명령어로 varnish를 설치한다. (혹시라도 위 4.1 버전이 맞는지 yum list varnish 를 통해 확인하기 바란다.)


 yum install varnish 



4. varnish 설정하기 (https://syslint.com/blog/tutorial/how-to-install-varnish-on-centos-7-or-rhel-7/)

설정은 정말 간단하다. 그런데 예전 문서와 좀 다른게 생겼다.


   - /etc/varnish 폴더 

    : varnish.params 에서 포트를 아래와 같이 수정 

         VARNISH_LISTEN_PORT=80

  캐시 기본 설정이 256M인데 행여 용량 크게 하겠다면 1G나 2G로 바꿔도 된다.


    : defaul.vcl : 수정할게 없음! 3 버전과 차이는 바로 이것 인듯. 이 파일을 수정하지 않아도 되더라.


  - /etc/httpd/conf 폴더

   : httpd.conf 에서 해당 줄에 가서 아래와 같이 수정


     Listen 127.0.0.1:8080 



NameVirtualHost 127.0.0.1:8080 




<VirtualHost 127.0.0.1:8080>

 

  


5. 실행하기 

CentOS 7 에서는 아래와 같이.

     systemctl restart httpd.service

     systemctl restart varnish.service    


이때   "Error: Cannot open socket: :80: Address already in use" 메시지가 나오는 경우가 있다. -> 해결 방법 : 아래 netstat 명령어를 통해서 80에 varnish가 8080에 httpd가 정상 동작하는지 확인한 후 포트가 엉켜 있으면 재시작시켜주면 된다. 순서는 항상 httpd 먼저. 



6. 동작 여부 확인하기

아래 명령어를 입력해 보라.


 netstat -tunlp | grep :80


이때 아래와 같이 나오면 정상 동작이다.


  tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      15758/varnishd      

tcp        0      0 127.0.0.1:8080          0.0.0.0:*               LISTEN      15730/httpd  



7. 부팅 시 자동 시작하게 등록 


예전에는 아래 명령어였다.


  chkconfig --level 345 varnish on 


CentOS 7에서는 아래와 같이.


 systemctl enable varnish.service




Comments

공유지기 2019.03.09 18:49
작업 후 이 글의 댓글 부분도 반드시 읽어봐야 한다. http://www.7-star.net/bbs/board.php?bo_table=talk_computer&wr_id=5&page=4

3M 프리미엄 스티커크리너 PIC10
바이플러스
3M 810 매직테이프 50mm x 65M
바이플러스
OPP 투명접착 8X20+4cm 200장
칠성상회
(Box) OPP봉투 접착 8X20+4 3100장
칠성상회