|
[iyunv@zhusalt ~]# tar xvf ipvsadm-1.24.tar.gz
[iyunv@zhusalt ~]# cd ipvsadm-1.24
[iyunv@zhusalt ipvsadm-1.24]# make
make -C libipvs
make[1]: Entering directory `/root/ipvsadm-1.24/libipvs'
gcc -Wall -Wunused -Wstrict-prototypes -g -O2 -I/usr/src/linux/include -DHAVE_NET_IP_VS_H -c -o libipvs.o libipvs.c
在包含自 libipvs.c:23 的文件中:
libipvs.h:14:23: 错误:net/ip_vs.h:没有那个文件或目录
In file included from libipvs.c:23:
libipvs.h:119: 错误:expected ‘)’ before ‘fwmark’
libipvs.c:27: 错误:字段‘svc’的类型不完全
libipvs.c:28: 错误:字段‘dest’的类型不完全
libipvs.c: 在函数‘ipvs_init’中:
libipvs.c:40: 错误:‘sizeof’不能用于不完全的类型‘struct ip_vs_getinfo’
libipvs.c:44: 错误:‘IP_VS_SO_GET_INFO’未声明(在此函数内第一次使用)
libipvs.c:44: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
libipvs.c:44: 错误:所在的函数内也只报告一次。)
libipvs.c: 在函数‘ipvs_getinfo’中:
libipvs.c:56: 错误:‘sizeof’不能用于不完全的类型‘struct ip_vs_getinfo’
libipvs.c:57: 错误:‘IP_VS_SO_GET_INFO’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_version’中:
libipvs.c:64: 错误:对未定义类型‘struct ip_vs_getinfo’的使用无效
libipvs.c: 在函数‘ipvs_flush’中:
libipvs.c:70: 错误:‘IP_VS_SO_SET_FLUSH’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_add_service’中:
libipvs.c:79: 错误:‘IP_VS_SO_SET_ADD’未声明(在此函数内第一次使用)
libipvs.c:79: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_update_service’中:
libipvs.c:87: 错误:‘IP_VS_SO_SET_EDIT’未声明(在此函数内第一次使用)
libipvs.c:87: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_del_service’中:
libipvs.c:95: 错误:‘IP_VS_SO_SET_DEL’未声明(在此函数内第一次使用)
libipvs.c:95: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_zero_service’中:
libipvs.c:103: 错误:‘IP_VS_SO_SET_ZERO’未声明(在此函数内第一次使用)
libipvs.c:103: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_add_dest’中:
libipvs.c:109: 错误:提领指向不完全类型的指针
libipvs.c:109: 错误:提领指向不完全类型的指针
libipvs.c:112: 错误:‘IP_VS_SO_SET_ADDDEST’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_update_dest’中:
libipvs.c:119: 错误:提领指向不完全类型的指针
libipvs.c:119: 错误:提领指向不完全类型的指针
libipvs.c:122: 错误:‘IP_VS_SO_SET_EDITDEST’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_del_dest’中:
libipvs.c:129: 错误:提领指向不完全类型的指针
libipvs.c:129: 错误:提领指向不完全类型的指针
libipvs.c:132: 错误:‘IP_VS_SO_SET_DELDEST’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_set_timeout’中:
libipvs.c:140: 错误:‘IP_VS_SO_SET_TIMEOUT’未声明(在此函数内第一次使用)
libipvs.c:141: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_start_daemon’中:
libipvs.c:148: 错误:‘IP_VS_SO_SET_STARTDAEMON’未声明(在此函数内第一次使用)
libipvs.c:149: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_stop_daemon’中:
libipvs.c:156: 错误:‘IP_VS_SO_SET_STOPDAEMON’未声明(在此函数内第一次使用)
libipvs.c:157: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_get_services’中:
libipvs.c:166: 错误:提领指向不完全类型的指针
libipvs.c:167: 错误:‘sizeof’不能用于不完全的类型‘ipvs_service_entry_t’
libipvs.c:167: 错误:对未定义类型‘struct ip_vs_getinfo’的使用无效
libipvs.c:172: 错误:提领指向不完全类型的指针
libipvs.c:172: 错误:对未定义类型‘struct ip_vs_getinfo’的使用无效
libipvs.c:174: 错误:‘IP_VS_SO_GET_SERVICES’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_cmp_services’中:
libipvs.c:189: 错误:提领指向不完全类型的指针
libipvs.c:189: 错误:提领指向不完全类型的指针
libipvs.c:193: 错误:提领指向不完全类型的指针
libipvs.c:193: 错误:提领指向不完全类型的指针
libipvs.c:197: 错误:提领指向不完全类型的指针
libipvs.c:197: 错误:提领指向不完全类型的指针
libipvs.c:201: 错误:提领指向不完全类型的指针
libipvs.c:201: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_sort_services’中:
libipvs.c:208: 错误:提领指向不完全类型的指针
libipvs.c:208: 错误:提领指向不完全类型的指针
libipvs.c:209: 错误:‘sizeof’不能用于不完全的类型‘ipvs_service_entry_t’
libipvs.c: 在函数‘ipvs_get_dests’中:
libipvs.c:218: 错误:提领指向不完全类型的指针
libipvs.c:218: 错误:‘sizeof’不能用于不完全的类型‘ipvs_dest_entry_t’
libipvs.c:218: 错误:提领指向不完全类型的指针
libipvs.c:224: 错误:提领指向不完全类型的指针
libipvs.c:224: 错误:提领指向不完全类型的指针
libipvs.c:225: 错误:提领指向不完全类型的指针
libipvs.c:225: 错误:提领指向不完全类型的指针
libipvs.c:226: 错误:提领指向不完全类型的指针
libipvs.c:226: 错误:提领指向不完全类型的指针
libipvs.c:227: 错误:提领指向不完全类型的指针
libipvs.c:227: 错误:提领指向不完全类型的指针
libipvs.c:228: 错误:提领指向不完全类型的指针
libipvs.c:228: 错误:提领指向不完全类型的指针
libipvs.c:231: 错误:‘IP_VS_SO_GET_DESTS’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_cmp_dests’中:
libipvs.c:243: 错误:提领指向不完全类型的指针
libipvs.c:243: 错误:提领指向不完全类型的指针
libipvs.c:247: 错误:提领指向不完全类型的指针
libipvs.c:247: 错误:提领指向不完全类型的指针
libipvs.c: 在函数‘ipvs_sort_dests’中:
libipvs.c:253: 错误:提领指向不完全类型的指针
libipvs.c:253: 错误:提领指向不完全类型的指针
libipvs.c:254: 错误:‘sizeof’不能用于不完全的类型‘ipvs_dest_entry_t’
libipvs.c: 在文件层:
libipvs.c:259: 错误:expected ‘)’ before ‘fwmark’
libipvs.c: 在函数‘ipvs_get_timeout’中:
libipvs.c:288: 错误:提领指向不完全类型的指针
libipvs.c:293: 错误:‘IP_VS_SO_GET_TIMEOUT’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_get_daemon’中:
libipvs.c:309: 错误:提领指向不完全类型的指针
libipvs.c:315: 错误:‘IP_VS_SO_GET_DAEMON’未声明(在此函数内第一次使用)
libipvs.c: 在函数‘ipvs_strerror’中:
libipvs.c:357: 错误:‘ipvs_get_service’未声明(在此函数内第一次使用)
make[1]: *** [libipvs.o] 错误 1
make[1]: Leaving directory `/root/ipvsadm-1.24/libipvs'
make: *** [libs] 错误 2
[iyunv@zhusalt ipvsadm-1.24]# find / -name "ip_vs.h"
/usr/include/linux/ip_vs.h
/usr/src/kernels/2.6.32-71.el6.i686/include/linux/ip_vs.h
/usr/src/kernels/2.6.32-71.el6.i686/include/net/ip_vs.h
/usr/src/kernels/2.6.32-358.18.1.el6.i686/include/linux/ip_vs.h
/usr/src/kernels/2.6.32-358.18.1.el6.i686/include/net/ip_vs.h
[iyunv@zhusalt ipvsadm-1.24]# cp /usr/src/kernels/2.6.32-71.el6.i686/include/net/ip_vs.h /usr/include/net/
[iyunv@zhusalt ipvsadm-1.24]# make
make -C libipvs
make[1]: Entering directory `/root/ipvsadm-1.24/libipvs'
gcc -Wall -Wunused -Wstrict-prototypes -g -O2 -I/usr/src/linux/include -DHAVE_NET_IP_VS_H -c -o libipvs.o libipvs.c
ar rv libipvs.a libipvs.o
ar: creating libipvs.a
a - libipvs.o
make[1]: Leaving directory `/root/ipvsadm-1.24/libipvs'
gcc -Wall -Wunused -Wstrict-prototypes -g -O2 -I/usr/src/linux/include -I.. -I. -DVERSION=\"1.24\" -DSCHEDULERS=\""rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq"\" -DHAVE_NET_IP_VS_H -c -o ipvsadm.o ipvsadm.c
gcc -Wall -Wunused -Wstrict-prototypes -g -O2 -I/usr/src/linux/include -I.. -I. -DVERSION=\"1.24\" -DSCHEDULERS=\""rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq"\" -DHAVE_NET_IP_VS_H -c -o config_stream.o config_stream.c
gcc -Wall -Wunused -Wstrict-prototypes -g -O2 -I/usr/src/linux/include -I.. -I. -DVERSION=\"1.24\" -DSCHEDULERS=\""rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq"\" -DHAVE_NET_IP_VS_H -c -o dynamic_array.o dynamic_array.c
gcc -Wall -Wunused -Wstrict-prototypes -g -O2 -o ipvsadm ipvsadm.o config_stream.o dynamic_array.o libipvs/libipvs.a
[iyunv@zhusalt ipvsadm-1.24]# make install
[iyunv@zhusalt ipvsadm-1.24]# find / -name ipvsadm
/sbin/ipvsadm
/etc/rc.d/init.d/ipvsadm
/root/ipvsadm-1.24/ipvsadm
[iyunv@zhusalt ~]# ipvsadm
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
[iyunv@zhusalt ~]# lsmod |grep ip_vs
ip_vs 91193 0
ipv6 264702 26 ip_vs,sit,ip6t_REJECT,nf_conntrack_ipv6
[iyunv@zhusalt ~]# tar xvf keepalived-1.1.19.tar.gz
[iyunv@zhusalt ~]# cd keepalived-1.1.19
[iyunv@zhusalt keepalived-1.1.19]# ./configure --prefix=/usr/local/keepalived
[iyunv@zhusalt keepalived-1.1.19]# make && make install
[iyunv@zhusalt init.d]# cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
[iyunv@zhusalt sysconfig]# cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
[iyunv@zhusalt sysconfig]# mkdir /etc/keepalived
[iyunv@zhusalt etc]# cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
[iyunv@zhusalt etc]# cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
[iyunv@congsalt ~]# tar xvf vsftpd-3.0.0.tar.gz
[iyunv@congsalt ~]# cd vsftpd-3.0.0
[iyunv@congsalt vsftpd-3.0.0]# make
[iyunv@congsalt vsftpd-3.0.0]# mkdir /var/ftp
[iyunv@congsalt vsftpd-3.0.0]# chown root.root /var/ftp
[iyunv@congsalt vsftpd-3.0.0]# chmod og-w /var/ftp
[iyunv@congsalt vsftpd-3.0.0]# make install
[iyunv@congsalt vsftpd-3.0.0]# cp vsftpd /usr/local/sbin/vsftpd
cp:是否覆盖"/usr/local/sbin/vsftpd"? y
[iyunv@congsalt vsftpd-3.0.0]# cp vsftpd.conf.5 /usr/local/man/man5
[iyunv@congsalt vsftpd-3.0.0]# cp vsftpd.8 /usr/local/man/man8
[iyunv@congsalt vsftpd-3.0.0]# cp vsftpd.conf /etc
[iyunv@congsalt vsftpd-3.0.0]# /usr/local/sbin/vsftpd &
[1] 12931
[iyunv@congsalt ftp]# vi /etc/sysctl.conf
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
/etc/rc.d/init.d/lvs_res.sh
[iyunv@zhusalt keepalived]# ipvsadm -C
[iyunv@zhusalt keepalived]# ipvsadm
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
[iyunv@zhusalt keepalived]# ipvsadm -A -t 192.168.170.189:21 -s rr
[iyunv@zhusalt keepalived]# ipvsadm -a -t 192.168.170.189:21 -r 192.168.170.114 -g -w 5
[iyunv@zhusalt keepalived]# ipvsadm -a -t 192.168.170.189:21 -r 192.168.170.188 -g -w 8 |
|
|
|
|
|
|