00:00
同学们,接下来呢,我们带着大家来安装一下keep alive啊,还是在我们的虚拟机上给大家演示,呃,就以这个NG01为例,我们想要它高可用的话呢,我们把它复制出来一份啊,克隆一份。来。叫backup。它的NG01的backup啊,它的这个呃。备用机那启动之前啊,我们先把它的这个Mac地址给换一下啊,不然的话它内网会有冲突,还有这IP地址也得改一下。自动生成一个,然后把它起来。这个keep的就是一个非常简单的小软件啊,大家也不太需要特别深入的去学习它,呃,用到啥学啥就可以了。
01:02
在这我们先改一下IP啊,还是ETC。System。Config。Con a network。Scripts,然后CFG。ENS33大家一定要注意这ENS33啊,一会在配置的时候呢,这里边呃,需要把这个ENS33给加到咱们这个配置文件里啊,这台机器呢,我们管它这一个101是吧,一个一零,这102也不行了,那这就100吧。100作为这个备用机,然后我们在这儿把这个图啊带大家画一下。呃,主机呢,是。呃,101。然后备用金呢,是。呃,100。
02:03
好像有点别扭是吧,没关系啊,备用机是100,主机是101。呃,虚拟的这个IP地址是二百四十四点二百来。没问题,这backup是100来保存退出。然后呃,我们重新启动一下。网络服务。Restart network。我们看这IP地址,现在四四点一百,然后看看能不能上网啊,qq.com没问题,这是复制出来的嘛,然后这个。这是原来的那台。呃,安装呢有好多种方式,我把这个步骤呢给大家记录下来了,呃,你可以编译安装啊,下载地址是这个keep live的org啊,它的官网上你去下载就可以了,然后安装的时候呢,如果提示报错啊,这里边可能缺这个open s SL这个开发开发工具,然后我们在这呢,最简单的方式带着人家装,就是用这个yam啊,用yam去装就可以了。
03:20
然后接下来我们连一下这两台这个。虚拟机Excel。这是我们原来的零一对吧,诶没问题,还是能连上,然后再连一个这个backup。NG。零一的backup。IP是100。连一下这个backup。
04:04
Root。让我填密码。嗯,这里连上了。连上之后呢,我们去安装这个keep live的这两台机器上全都得装,用这个yam去装就行,Install杠,然后keep。Alive。这边也给它装上。要么install。更why keep alive的啊,注意后边还有一个的。那keep live是咱们这个浏览器的那个,或者是HTP协议里的那个保持连接是吧,这个keep live的是存活的意思。要保持存活状态。呃,用这个源码安装的话,其实在学习的时候啊,没啥太大必要这么装上啊,我们在学习的时候,嗯,能了解这个软件呃的配置啊,以及它应用场景其实就够了啊。
05:10
哎,这就很快就装上了。这边很快装上了,你用亚么安装的话,它的配置文件是在这儿的,VI在ETC下keep live的,然后下面keep live的K在这里边啊在这。呃,同样啊,我们还是在这个我们的那个。嗯。FP里去改这个比较方便一些。我们一个一个改啊,先改这个NG01的在。嗯,ETC live这你不好找的话,你可以敲键盘keep。然后他给我定位到这儿了。然后用这记事本编辑。这个文件啊,它的这个冗余程度要比N几的配置文件还要长啊,我们把这些没用的呢,先给大家给把它给清了,从这开始往下的基本全都可以删了。
06:10
注意一伸伸到底啊,它不像那个,呃,咱们那个NG格斯,它刚开始有这个开关闭合大括号这里面没有,然后上边这个呢,嗯,也也基本上都不太需要,这是比如说宕机了之后发email啊。咱们把它给清了,这我们就留一个这个root ID就可以了。呃,这个root ID呢,我们给它起一个名字就是load balancer lb111啊,诶这IP是111吗?我们现在连的是,哦,对,这是这个N几零一嘛,啊,这是111这台机器,然后下边这个VRRP,这是keep live的在内网当中通讯的协议啊,然后然后这个VVL杠一,我们把这个呢也可以给它改了啊,比如at硅谷。
07:02
这其实就是我们的实例名称,然后state,这当前这台机器是master,注意看这个interface,这个呢,就要和刚刚我们跟大家说的啊,你要记住那个网卡的名字啊,你得记住跟他要对应上ipad drr或者ippa都可以。这个网卡是ENS363。你的机器上的网卡的名字可能和我的这个呃,不太一样啊,然后virtual root ID这个不用改啊,然后这是它的优先级,这个优先级是在他竞选的时候就主备竞选的时候谁是master,谁的优先级越高,谁就是master啊,让他默认是100,这是间隔检测的时间。这是在内网当中想要组成啊,这么成双配对啊,就是这如果这个keep live的和这个keep live的想要配对的话,你要加入一组认证服务器。
08:01
有人说我们的局域网里边可能做keep live的不止是这两个啊,假如说我现在局域网里边有好多机器,那全都跑到keep live的,对吧,那你随便你的那台机器宕机了,把我的IP给飘走了,这肯定不行,对吧?所以他有封侯组这个。嗯,O啊otic啊这个呃,认证这一块呢,其实就是对一组想加入一组里边的一个认证配置,你不改它就可以啊,同一组要保持保持一致就行。然后这下面呢,这个IP address,这是虚拟的IP地址。啊,你是可以填好几个,给他虚拟出来好几个,但是意义不大,我们得填给他虚拟出来一个就行。四四点二百,这就和我们前面的那个对上了吧,所有的用户访问访问哪个IP啊,访问这个200这个IP,而不再访我们原来的那个111那个IP了,这就是第一台机器的配置,那我们CTRLS。
09:00
然后把这第二台机器呢,也给他改了。嗯。先改完这第一台机器,我们先把它启动一下,大家看看啊,有没有什么错误啊,System ctl。Start。这个keep alive的走。没报错是吧,看看状态。在这看看有没有报错啊。也没做错,然后呢,我们在,嗯,接下来我们再看看IP地址。大家看当前这台机器呢,它多了一个IP地址200。对吧,这是原来的我们的这个,呃,101。啊,然后后边的是200,这200就是VIP了是吧。然后我们在这台机器上呢,也把这个配置给它配好。
10:00
找到这个配置文件。UR,然后ETC啊,不是是ETC的。然后找到配置文件。然后把这个呢,给它复制一份过来。然后把它的这个肉ID啊给它给改了啊呃,这那是111啊,这边呢是110是吧。然后state这俩别全是master,就是整一个backup。然后呢,在下边这个呃,Priority啊,它的这个优先级,你把它设置的稍微低一点,因为它是备用机嘛,然后其他的呢。都不需要变了。注意这个instance的名字和这个virtual root ID,还有这个password,它得是对着的啊,如果这个对不上,嗯,它它加入不到一组里,我们把它保存一下,接下来把这台机器的服务给它启动system ctl start。
11:14
Keep alive的,然后看看有没有什么问题。这看着好像没什么问题啊,它正在运行,然后看这个IP。在看。现在这台机器上呢,没有那个虚拟的IP,只有一个IP对吧,那接下来我们这么测试一下,呃,你用这个Windows加R,然后CMD。我们在外网的去拼一下这个200这个IP大家看啊,拼一下192.1。一六八点四四点二百,现在这个IP是不是在这台机器上,大家看在这儿对吧。
12:01
大家看在这儿。四十四点二百。我们拼一下这个200,大家看它通不通没问题吧,现在是通的状态对吧。那么我们把这台机器给它给挂掉,让它宕机。就直接暴力点IN0。大家看它还通不通。哎,有一个超时,接下来呢,哎又通了,再看这。200这个IP到这儿了。呃,这就是IP漂移,它通过keep live的漂移的啊。呃,这就是基本的这个keep live的配置,那么同样啊,我们在这个浏览器去访问的时候,其实也是一样的,192.168.44,这就不能再访问这101了啊,得访问这200,得访问它的虚拟IP,大家看。呃,这是那个,呃,代理服务器的那个配置啊,后端那服务他没起来对吧,但是他能访问到是吧?啊没问题。
13:07
然后这个,呃。Keep live的这个软件呢,是比较简单的一个软件,它主要是靠检测keep live的这个进程是否存在啊,不是说靠你这个,呃,这个这个什么其他这种特别高明的机制啊,只是说你当前这台服务器上的keep live的这个进程,它有没有存活着,如果存活着呢,它就能互相的发送数据包,它就能够互相通讯。一旦要无法通讯了啊,那接下来呢,我就把这IP给它飘走了,就是这么简单的一个事儿啊,Keep live呢,除了这种呃,压根网络无法到达的情况,我们还可以呃,通过这种一些更灵活的方式,比如说写个脚本,我去检测。呃,这个我当前需要监听的这个进程,他现在监听的不是任何进程啊,没有配置的情况下,他现在只是在监听我们这keep level的这个进程,如果我们这N几坏了出问题了,但keep live的没出问题,这会儿它是检测不到的,那我们可以通过脚本写脚本的方式。
14:15
这个脚本呢,在本机一直跑着,它和keep live的是分开的,这三个呢,本质上都没什么联系脚本N和keep live的这个脚本呢,去不断的去检测N当前是否报错了,包括我们后边如果要用red的话,也可以这么做。用个脚本呢,去检测NG当前的访问请求,它是不是正常的200,诶我每秒访问一次,如果要是出了问题,不是200了,500了,这个脚本接下来把这个keep live的进程给它给Q掉,注意听。Q进程,一旦这个进程被Q掉了,这IP是不是就飘走了,对吧?啊,更高级的用法呢,可以这么用啊,可以让他跑一个脚本在这儿呢,我们就不带大家,呃,浪费这个时间,不举这个例子了啊呃,这就是。
15:06
Keep alive的,呃,Keep alive的选取方式呢,比较简单啊,这个选取方式就是靠靠我们刚刚给大家看的那个配置文件里边的那个它的优先级,优先级越高越容易,呃成为这个master,一旦要是返回优先级比别的优先级要低的话,他自己就把自己改成这个backup了啊,这就是NG的高高可用配置keep Li呢,不只是能够用到NG上。啊,大家也能看出来,它是对于主机级别的检测啊,或者说它是进程级别检测,他只检测了我这台机器的keep Di有没有活着。啊,它所以呢,它可以检测一切,比如说两台MYSQL啊,比如说两台这个呃,Red啊,两台消息中间键啊,两个这个后端的应用服务器都可以提供呃这个脚本,然后去检测它的这个状态,然后通过keep live的去杀死自己的进程,啊这就是keep live的。
我来说两句