参数的一些扩展点,那刚刚讲的一些负载均衡策略,都是实际企业当中常用的,负载均衡策略,领着大家分析了优缺点,
希望大家好好体会,百分之一百的吸收,那我们现在把这些参数和扩展的点呢,放到一个配置里,一起来给大家讲一下,
ip_hash就是一个hash负载均衡,然后第一个节点9090端口,后面加了一个down,down表示当前的server暂时不参与负载,
8080权重,6060默认的,他的权重就是1,下面的backup,可以看一下,其他所有的非backup机器,down或者忙的时候,请求
backup机器,也就是说这个机器呢,是一个备用机器,这个非常好理解,这个配置能够提高我们项目架构的高可用性,但是
我们实际生产环境呢,用这个不多,毕竟机器也是资源,放在那里一直当backup机器呢,可能也会有点忧伤,然后呢我们继续看,
刚刚我们把tomcat都启动完之后呢,我们就需要通过nginx和tomcat,搭建集群了
启动两个tomcat,在mac.linux下执行startup.sh,这个又领着大家来讲,tomcat1和tomcat2
那现在说一下,为了验证,我们把tomcat2默认的log给替换了,webapps/ROOT/tomcat.png,这个是tomcat首页左上角的
一个logo,你们也可以用其他方法,只不过这个方法会比较简单一点,注意此为新安装的tomcat,如果部署过项目则找不到
此文件,大家学习的话可以重新安装tomcat,替换成哪个logo呢,在linux实际操作里面,有领着大家怎么去走这个logo,当然
你替换成任意的一个照片也可以,只要我们在访问的时候,很简单的区分开就可以了,这个操作就是这个目的,说明一下,只要能够
区分开就行,然后继续,把原来的png图给删除了,当然我这里修改的是tomcat2,里面改的都是tomcat2的,tomcat1是保持不变,
区分开就可以,可以把你的靓照放到这里,这里面也比较重要,注意看,修改系统的host,也就是说,在一期里面修改了服务器的host,
其实不是这样的,考虑并不是所有人都买了域名,那么在搭建集群的时候呢,需要配置这个host了,所以修改,是修改浏览器所在机器的
host,增加127.0.0.1,指向imoc.com,指向要和教程保持一致,你也可以指向百度,那127.0.0.1就是本机,那么linux下就是
sudo vim /etc/hosts
看一下截图,我们增加了一个配置,上面是注释,tomcat test,下边127.0.0.1 www.imoc.com
我们修改完host之后,我们要验证,host是否生效,打开终端,linux下,如果是windows下就打开一个cmd窗口,
执行ping命令,ping空格,网址,然后我们看一下截图
linux下是这样的,可以看到,ping这个网址,下面的ip已经是127.0.0.1,说明host已经生效了,如果你ping的时候ip地址已经
变过来了,浏览器访问的时候,还是没有变过来,可以清除浏览器缓存,并关闭所有浏览器,重新打开
同样windows下ping一下看一下ip,确定我们这个host是否生效,如果ip生效,浏览器不OK,就得重启浏览器或清除缓存
然后就开始验证了,因为之前我们tomcat已经启动好了,我们可以访问localhost 8080或www.imoc.com:8080,
平时大家在访问网站的时候呢,没有加端口号,是因为默认是80端口,80端口不需要输入,上面是一组,下面是一组,
上面是tomcat1,下面是tomcat2,然后看一下,因为我们替换了logo,下面就变成了我们的logo,替换到那里,这两个端口
看一下红色框框,我们访问域名,后面加端口号的时候呢,也是OK的,非常简单这一块,然后是配置nginx,首先是启动nginx,
linux执行nginx这个目录,下边的sbin,下边的nginx.sh,当然这个usr/local/nginx是在linux下安装nginx的一个默认路径,
这个路径也根据你实际的情况去找,然后windows下呢,是在nginx这个安装目录,根目录下有一个nginx.exe,下面的注意大家
看一下,根据自己的实际情况,nginx默认端口是本机80端口,不要修改,如果有的小伙伴,安装了IIS,请停止这个服务,并且保证
80端口是可用的,因为IIS默认也是用80端口
linux下执行的时候就是这样的,这样执行就可以了,进入到这个目录下
/usr/local/nginx/sbin/nginx
根据权限选择是否使用sudo,然后windows下可以看到,执行nginx.exe即可,大家执行windows下的时候,
用cmd这种命令行的方式,因为nginx.exe如果在窗口中双击的话,但是你去查看nginx进程的时候,发现那个进程也在,
这个窗口就不用关闭,不要ctrl+c去终止,最小化就可以
然后这个时候我们来验证,localhost或者imoc.com,因为imoc已经配置成127.0.0.1,和localhost是一样的,访问localhost和
imoc.com都是nginx的一个首页,那我们继续往下看,现在开始配置nginx,我们编辑nginx下的conf/nginx.conf,这个是nginx的
一个主配置,在http节点下面增加include vhost/*.conf,然后后面有一个分号,也就是说,在nginx的主配置里面,我们把其他的
配置文件,include进来,vhost是我们创建的一个文件夹,主要目的有两个,这里面是为了增加tomcat集群,负载均衡的一个应用
配置,另外把域名配置文件分开,方便后期管理,我们也可以把各种配置都写在nginx.conf这个主配置文件里面,但是小伙伴们已经学到
二期了,你们的格局要高一点了,要考虑一下其他人的感受,还有日后维护的一个成本,那这个不用担心,后面的实操会有一个简短的
回顾
在nginx/conf下面呢,创建文件夹vhost,然后增加www.imooc.com.conf,这个一定是以.conf结尾的,
因为前面的include,*.conf,那我们来看一下,linux下的一个配置截图,第一个是没有井号,是为了给
大家扩展一下,就是说上面没有加注释的配置,是转发到8080和9080端口上,后边的权重都是1,下面使用ip配置的方式,
很简单理解,如果我们是每一个机器部署一个tomcat,也可以直接配置ip,网络是通的,后面配置好他的端口,就可以,然后第二个
红框呢,linux下的,nginx的一个log配置,然后下面的Location呢,我们一期是指定到127.0.0.1,并且是8080端口,这一期做集群的
时候,我们指向到域名就可以了,然后域名走到上面进行分流负载均衡
看一下window下的,window下第一个2,3,这两行就是用ip配置的方式,都是127.0.0.1,而且是一台机器,如果是别的
机器呢,你配置不同的ip就可以,下面注释代井号的节点,两个也是为了扩展,而特意注释,放到这里的,就是说如果你没有
域名,配置host可以利用这种方式,第二个红框,就是在window下,这个是日志的一个配置,这个代理pass节点,也是配置的
www.imoc.com,那这些负载均衡的配置呢
因为我们的nginx是启动的,重新加载nginx配置,执行reload,在linux下呢,怎么执行呢
sudo ./nginx -s reload
看一下截图,就是这样操作的,因为我们刚刚增加了reload节点,所以我们要加一个配置
在window下也比较简单,首先有一个要注意的点,之前启动的nginx服务窗口不变,重新打开一个cmd窗口,因为window
比较特殊,如果终止的话就会停止nginx服务,重新打开一个窗口,然后执行
nginx.exe -s reload
注意的一点就是,windows版的nginx启动程序在根目录,不在sbin下,然后我们这个搭建好了,还要验证了,
打开浏览器输入,www.imoc.com,狂刷新,观察页面区别,替换图片的logo就在这里,可以观察到一会访问到8080的tomcat,
一会访问到9080端口的tomcat,tomcat集群及nginx负载均衡环境搭建成功