메뉴 닫기

오픈스택 lbaas v2 web ui 모니터링 설정

오픈 스택 을  테스트하다 보니 아쉬운 점이 성능 및 기능 추가하거나 튜닝 할려면 파이썬 코드를  직접
수정해야하는 부분이 있습니다.

실제 그런 부분에 대해서 오픈 스택에서 안내서가 딱히 나와 있지도 않고 일일이 소스 코드를 찾아 볼수
박에 없습니다.

이점은 어덯게 보면 오픈 소스의 장점이지만 일일이 수정해야 하니 기본 지식이 없는 사람들에게는 여간
삽질이 될수 밖에 없기에 불친절하다고 느껴질수도 있습니다.

로드 밸런싱 서비스도  haproxy의 웹 ui 모니터링 설정을 위해서는 소스 코드의 수정이 필요 합니다.

거기다가 오픈 스택 버전이 올라갈수록 수정 해야 하는 부분도 조금씩 달라지며 mitaka버전과 liberty 버전일시
수정해야 할 부분이 달라 집니다.

  • mitaka 버전 일시 monitoring 관련 소스 수정

root@net-node:/var/lib/neutron/lbaas/v2# cat /usr/lib/python2.7/dist-packages/neutron_lbaas/services/loadbalancer/drivers/haproxy/templates/haproxy_base.j2
global
    daemon
    user nobody
    group {{ usergroup }}
    log /dev/log local0
    log /dev/log local1 notice
    stats socket {{ sock_path }} mode 0666 level user

defaults
    log global
    retries 3
    option redispatch
    timeout connect 5000
    timeout client 50000
    timeout server 50000

listen 0.0.0.0
    bind :8080 
    mode http 
    stats enable 
    stats uri / 
    stats hide-version 
    stats refresh 5s 
    stats show-legends 
    stats show-desc 
    stats auth dicaniu:password     --> 추가하며 계정, 비번은 알아서 할당하면된다.

{% block proxies %}{% endblock proxies %}

root@net-node:/var/lib/neutron/lbaas/v2# haproxy -v
HA-Proxy version 1.6.3 2015/12/25
Copyright 2000-2015 Willy Tarreau <willy@haproxy.org>
# mitaka 버전에서는 haproxy 버전이 1.6대 이다.

  • liberty 버전 일시 monitoring 관련 소스 수정

root@net-node2:~# cat /usr/lib/python2.7/dist-packages/neutron_lbaas/services/loadbalancer/drivers/haproxy/templates/haproxy_base.j2
global
    daemon
    user nobody
    group {{ usergroup }}
    log /dev/log local0
    log /dev/log local1 notice
    stats socket {{ sock_path }} mode 0666 level user

defaults
    log global
    retries 3
    option redispatch
    timeout connect 5000
    timeout client 50000
    timeout server 50000

listen stats :8080
    mode http 
    stats enable 
    stats uri / 
    stats hide-version 
    stats refresh 5s 
    stats show-legends 
    stats show-desc 
    stats auth dicaniu:password

{% block proxies %}{% endblock proxies %}

root@net-node2:~# haproxy -v
HA-Proxy version 1.5.14 2015/07/02
Copyright 2000-2015 Willy Tarreau <willy@haproxy.org>
# liberty 버전에서는 haproxy 버전이 1.5대 이다.

  • 설정 파일 적용 확인

root@net-node:/var/lib/neutron/lbaas/v2# cat c6e048ee-6aa8-4de0-869e-8c2d544dc6c9/haproxy.conf 
# Configuration for lb2
global
    daemon
    user nobody
    group nogroup
    log /dev/log local0
    log /dev/log local1 notice
    stats socket /var/lib/neutron/lbaas/v2/c6e048ee-6aa8-4de0-869e-8c2d544dc6c9/haproxy_stats.sock mode 0666 level user

defaults
    log global
    retries 3
    option redispatch
    timeout connect 5000
    timeout client 50000
    timeout server 50000

listen 0.0.0.0
    bind :8080 
    mode http 
    stats enable 
    stats uri / 
    stats hide-version 
    stats refresh 5s 
    stats show-legends 
    stats show-desc 
    stats auth dicaniu:password

frontend d9ea2100-6311-40dc-8dab-a13a5183eb5a
    option tcplog
    option forwardfor
    bind 192.168.1.6:80
    mode http
    default_backend 1415ce03-808b-45f8-b009-d76353e35e07

backend 1415ce03-808b-45f8-b009-d76353e35e07
    mode http
    balance roundrobin
    timeout check 3
    option httpchk GET /
    http-check expect rstatus 200
    server 9b58afeb-df24-4f3a-bace-111745d6284d 192.168.1.3:80 weight 1 check inter 3s fall 3
    server 4a906034-0711-45e1-8e0b-3c761199921a 192.168.1.4:80 weight 1 check inter 3s fall 3
# 생성된 haproxy.cfg 파일에 모니터링 부분이 추가 된게 확인된다.

  • 웹으로 확인
    web_ui web_ui2

 

3 Comments

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다