#!/bin/bash
# 手动安装lpvs前端管理工具
# chkconfig: -
#
# lvs启动脚本:director
# lvs模式类型:nat、dr、ipip
# lvs代理协议:tcp、udp、mark # 检测输入类型是否为tcp/udp/mark
function check_type()
{
while true
do
read -p "tcp/udp/mark:" TYPE
if [[ $TYPE == tcp ]]
then
type=t
break
elif [[ $TYPE == udp ]]
then
type=u
break
elif [[ $TYPE == mark ]]
then
type=f
break
else
echo "Type Error"
continue
fi
done
} # 检测输入模式是否为nat/dr/ipip
function check_mode()
{
while true
do
read -p "nat/dr/ipip:" MODE
if [[ $MODE == nat ]]
then
mode=m
break
elif [[ $MODE == dr ]]
then
mode=g
break
elif [[ $MODE == ipip ]]
then
mode=i
break
else
echo "Mode Error"
continue
fi
done
} case $ in
start)
# 虚拟物理接口
# ifconfig ethX: $VIP netmask 255.255.255.255 up
read -p "input the IP what you will do lvs:" VIP
read -p "input the PORT what you will do lvs:" PORT
check_type
check_mode
read -p "how many RIP you need:" RIPNUM
# 打开转发
# echo "" > /proc/sys/net/ipv4/ip_forward
ipvsadm -A -$type $VIP:$PORT -s rr
for ((i=;i<=$RIPNUM;i++))
do
read -p "请输入第$i个RIP:" RIP
ipvsadm -a -$type $VIP:$PORT -r $RIP -$mode
done
echo "lvs $MODE on $VIP:$PORT start success"
;;
stop)
# 虚拟物理接口
# ifconfig ethX: down
read -p "input the IP what you will do lvs:" VIP
read -p "input the PORT what you will do lvs:" PORT
check_type
# 关闭转发
# echo "" > /proc/sys/net/ipv4/ip_forward
ipvsadm -D -$type $VIP:$PORT
echo "lvs on $VIP:$PORT is down"
;;
esac

LVS Director端服务启动脚本的更多相关文章

  1. logstash服务启动脚本

    logstash服务启动脚本 最近在弄ELK,发现logstash没有sysv类型的服务启动脚本,于是按照网上一个老外提供的模板自己进行修改 #添加用户 useradd logstash -M -s ...

  2. 自己编写服务启动脚本(一):functions文件详细分析和说明

    本文目录: 1.几个显示函数2.action函数3.is_true和is_false函数4.confirm函数5.pid检测相关函数 5.1 checkpid.__pids_var_run和__pid ...

  3. centos6服务启动脚本及开机启动过程

    centos6服务启动脚本 centos6的服务启动脚本都放在/etc/rc.d/init.d/下,/etc/init.d/是/etc/rc.d/init.d/的软链接: centos6的服务启动脚本 ...

  4. [shell脚本] mysql服务启动脚本

    服务启动脚本(初始化.启动.登录) #!/bin/bash export PID=/usr/local/nestdb_master/bin/mysqld export PASSWORD=123456 ...

  5. Nginx的编译安装及服务启动脚本

    1.解决依赖关系 编译安装nginx需要事先需要安装开发包组"Development Tools"和 "Development Libraries".同时,还需 ...

  6. linux下服务启动脚本

    #!/usr/bin/env python# -*- coding: utf-8 -*-# @File : deployment.py# @Author: Anthony.waa# @Date : 2 ...

  7. php-fpm服务启动脚本

    在php-fpm还是打补丁的时候,php-fpm重启只需要执行php-fpm restart或者reload, 自从php5.3之后,php-fpm的启动和停止显得比较麻烦,特意改写了一份nginx的 ...

  8. bat 服务启动脚本

    当电脑上有多个数据库(特别是Oracle,占用内存大,所以我都是设置为手动启动的,或者想在电脑上运行一下其他UI类软件或玩些游戏的时候也需要暂时关掉,奈何我这渣机(V_V))需要启动或停止的时候,就用 ...

  9. 15:开发Rsync服务启动脚本案例

    [root@m01 ~]# rsn_count="ps -ef|grep 'rsync --d[a]emon'|wc -l" [root@m01 ~]# echo ${rsn_co ...

随机推荐

  1. ArrayList去除集合中字符串的重复值

    package com.heima.list; import java.util.ArrayList; import java.util.Iterator; import java.util.List ...

  2. 解决 Elasticsearch 超过 10000 条无法查询的问题

    解决 Elasticsearch 超过 10000 条无法查询的问题 问题描述 分页查询场景,当查询记录数超过 10000 条时,会报错. 使用 Kibana 的 Dev Tools 工具查询 从第 ...

  3. 重启Tomcat, vsftpd

    关闭,启动,查看Tomcat /usr/local/tomcat8/bin/shutdown.sh /usr/local/tomcat8/bin/startup.sh tail -300f /usr/ ...

  4. js高程之作用域

    我们知道js执行环境有全局环境(window)和局部环境(一般指函数环境)之分. ; function calc(){ ; } 上述代码,虽然有两个num变量,但是他们所在的执行环境却是不同的,第一个 ...

  5. jquery中this与$(this)的用法区别

    jquery中this与$(this)的用法区别.先看以下代码: $("#textbox").hover( function() { this.title = "Test ...

  6. RabbitMQ和Kafka对比

    # 前言 开源社区有好多优秀的队列中间件,比如RabbitMQ和Kafka,每个队列都貌似有其特性,在进行工程选择时,往往眼花缭乱,不知所措.对于RabbitMQ和Kafka,到底应该选哪个? # R ...

  7. python 连接SQL SERVER 并读取其数据

    1.没什么难的操作 安装  pip install pymssql import pymssql #引入pymssql模块 import pandas as pd def conn(): connec ...

  8. 【神经网络与深度学习】gflags介绍

    gflags是什么: gflags是google的一个开源的处理命令行参数的库,使用c++开发,具备python接口,可以替代getopt. gflags使用起来比getopt方便,但是不支持参数的简 ...

  9. nginx 反向代理是url带后缀

    1.后端:http://10.253.149.2/tdsqlpcloud/index.php 2.配置文件 danjan01deiMac:nginx danjan01$ cat /usr/local/ ...

  10. flask_script

    Flask Script扩展提供向Flask插入外部脚本的功能,包括运行一个开发用的服务器,一个定制的Python shell,设置数据库的脚本,cronjobs,及其他运行在web应用之外的命令行任 ...