준호씨의 블로그

ansible 로 hiredis 라이브러리 설치 하기 본문

개발이야기

ansible 로 hiredis 라이브러리 설치 하기

준호씨 2019. 8. 5. 20:57

hiredis 를 yum 이나 apt-get 등으로 사용할 수 없고, ansible 버전이 2.1 보다 낮은 경우 make 를 사용할 수 없는데 그런 경우 사용하는 방법입니다.

hiredis-0.14.0.tar.gz 는 https://github.com/redis/hiredis/releases 에서 미리 받아 두고 ansible 의 files 디렉토리에 넣어 둡니다.

task 는 다음과 같이 작업합니다. sudo 나 tags, dest 디렉토리 등은 상황에 맞게 넣어 주시면 됩니다.

- name: unarchive logstash
  unarchive: src=hiredis-0.14.0.tar.gz dest=/work/
  tags:
    - lib_hiredis

- name: make && make install
  shell: cd /work/hiredis-0.14.0/ && make && make install
  sudo: True
  tags:
    - lib_hiredis

hiredis-0.14.0.tar.gz 를 /work/ 디렉토리에 압축을 풀면 /work/hiredis-0.14.0 디렉토리에 압축이 풀립니다.

그 디렉토리에 가서 make && make install 을 합니다. 참 간단하죠? 보통 ./configure 를 하는 경우도 많은데 hiredis 는 그냥 make 하면 됩니다.

make install 을 하면 hiredis 라이브러리 파일이 /usr/local/lib 경로에 추가 되는데요. OS 나 환경에 따라 /usr/local/lib 의 라이브러리를 기본 인식 못하는 경우가 있습니다. 그런 경우 다음과 같은 내용을 추가해 줍니다.

- name: Add lib dir to ld.so.conf
  copy: dest=/etc/ld.so.conf.d/99local.conf content="/usr/local/lib"
  sudo: True
  tags:
    - lib_hiredis

- name: Exec ldconfig
  command: /sbin/ldconfig
  sudo: True
  tags:
    - lib_hiredis

/etc/ld/so.conf.d/99local.conf 에 파일을 만들고 내용을 /usr/local/lib 를 넣어 줍니다.

그러고 ldconfig 를 실행해 주면 /etc/ld/so.conf.d/99local.conf 경로의 라이브러리도 기본 인식 하게 됩니다.

라이브러리가 잘 찾아 지는지 확인 해 보려면 ldconfig -v 로 확인 해 보면 됩ㄴ.다.

$ ldconfig -v | grep hiredis
        libhiredis.so.0.14 -> libhiredis.so.0.14

 

0 Comments
댓글쓰기 폼