오픈 스택 을 테스트하다 보니 아쉬운 점이 성능 및 기능 추가하거나 튜닝 할려면 파이썬 코드를 직접
수정해야하는 부분이 있습니다.
실제 그런 부분에 대해서 오픈 스택에서 안내서가 딱히 나와 있지도 않고 일일이 소스 코드를 찾아 볼수
박에 없습니다.
이점은 어덯게 보면 오픈 소스의 장점이지만 일일이 수정해야 하니 기본 지식이 없는 사람들에게는 여간
삽질이 될수 밖에 없기에 불친절하다고 느껴질수도 있습니다.
로드 밸런싱 서비스도 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 파일에 모니터링 부분이 추가 된게 확인된다.
ubuntu에 mitaka 설치해서 테스트 중인데, 아무리해도 LBaaS가 안되는 듯..혹시 되셨으면 가이드를 해 주실 수 있으실까요?
현재 하는 작업 마무리 하고 이번달안으로 mitaka에서 lbaasv2 설치 관련 글 올리도록 하겠습니다.
기다려집니다. 수고하세요..