티스토리 뷰
16년 10월 기준.
wget http://www.keepalived.org/software/keepalived-1.2.24.tar.gz
tar -xvzf keepalived-1.2.24.tar.gz
mv keepalived-1.2.24 /usr/local/keepalived
./configure
// configure: error: no acceptable C compiler found in $PATH 에러시 yum install gcc
// OpenSSL is not properly installed on your system 에러시 yum install openssl-devel
make
// error: ‘SYS_setns’ undeclared (first use in this function) 에러시 yum install glibc-devel
make install
ln -s /usr/local/etc/keepalived/ /etc/keepalived
ln -s /usr/local/etc/sysconfig/keepalived /etc/sysconfig
ln -s /usr/local/etc/rc.d/init.d/keepalived /etc/init.d
vi /usr/local/etc/keepalived/keepalived.conf
(vi /usr/local/keepalived/keepalived/etc/keepalived/keepalived.conf 아님)
or
vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
#state MASTER or BACKUP
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.100.99
}
}
// interface eth0 주의. VIP가 아닌 실제 IP를 적어야 한다.
// proxy기능을 사용할 경우 설정.
virtual_server 192.168.100.99 80 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 192.168.100.97 8003 {
weight 1
HTTP_GET {
url {
path /
digest d35275426439c0ba86c1c8b2fc2239c3
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 192.168.100.75 8080 {
weight 1
HTTP_GET {
url {
path /
digest 3f7e9cdb2ed06a389fd4507677653cf9
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
genhash -s 192.168.100.97 -p 8003 --url /
MD5SUM = d35275426439c0ba86c1c8b2fc2239c3
genhash -s 192.168.100.74 -p 8080 --url /
MD5SUM = 3f7e9cdb2ed06a389fd4507677653cf9
genhash -s 192.168.100.75 -p 8080 --url /
MD5SUM = 3f7e9cdb2ed06a389fd4507677653cf9
genhash -s 192.168.100.97 -p 8080 --url /
MD5SUM = 3f7e9cdb2ed06a389fd4507677653cf9
/etc/init.d/keepalived start
Starting keepalived: /bin/bash: keepalived: command not found
[FAILED]
/etc/rc.d/init.d/keepalived 파일의 상단에 PATH를 지정해 주거나, daemon keepalived 부분에 절대경로를 삽입.
PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin
or
daemon keepalived -> daemon /usr/local/sbin/keepalived
# Source function library
. /etc/rc.d/init.d/functions
# Source configuration file (we set KEEPALIVED_OPTIONS there)
. /etc/sysconfig/keepalived
PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin
RETVAL=0
prog="keepalived"
start() {
echo -n $"Starting $prog: "
daemon keepalived ${KEEPALIVED_OPTIONS}
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
}
ip addr로 VIP 확인
ipvsadm -l로 로드밸런싱 확인
// yum install ipvsadm 설치해야 한다.
네트워크 딜레이 문제 해결
vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.ip_nonlocal_bind = 1
// 인터페이스 간의 패킷 교환 및 로컬IP가 아닌 주소를 바인딩하게 변경
sysctl -p
// 적용후 keepalived 재시작
// 로그 경로 변경
// 기본 로그 경로(/var/log/message)
vi /etc/sysconfig/keepalived
KEEPALIVED_OPTIONS="-D -d -S 0"
vi /etc/rsyslog.conf
local0.* /var/log/keepalived.log
service rsyslog restart
session 유지해주는 설정
// /etc/keepalived/keepalived.conf에 lvs_sync_daemon_interface eth0 설정 추가
'Study' 카테고리의 다른 글
Java(자바) send mail(메일 보내기) (0) | 2024.01.07 |
---|---|
Tomcat(톰캣) mod_jk 설정 관련 (0) | 2024.01.07 |
Apache(아파치) 설치 (0) | 2024.01.07 |
HAProxy(에이치에이프록시) 관련 (1) | 2024.01.07 |
Spring(스프링) Error(에러) 관련 (1) | 2024.01.07 |