根据下面拓扑图来完成tomcat服务器的搭建以及Nginx的负载均衡配置
客户端pc1访问tomcat服务器经过中间人Nginx来决定访问服务器1还是服务器2
用户在访问服务器的时候要过一个中间人代理
中间人 agent 代理分为
Nginx是反向代理,用户未知
用户可知的叫做正向代理例如等用户实际操作的
用户未知的叫做反向代理 列如web服务端开启的代理向Nginx中间人这样
Tomcat 通常是作为Java 主页的解析容器,具有处理HTML 页面的功能
要想安装和运行Tomcat那么就需要java环境的支持
检查电脑上是否安装Java以及Java的版本java -version
这里tomcat用的版本为tomcat-7.0.54更新版本或历史版本可以去官网下载
将下载好的tomcat压缩包放入服务器
对压缩包进行解压tar xf apache-tomcat-7.0.54.tar.gz
一般放入/usr/local/下这个目录一般为用户自己安装的软件目录
我们将其移动到/usr/local下并改一个好记的名字
mv apache-tomcat-7.0.54 /usr/local/tomcat
tomcat/bin下是所有可执行文件包括启动程序,Tomcat的启动程序是startup.sh我们进行启动
/usr/local/tomcat/bin/startup.sh
前面为绝对路径
tomcat监听的是8080端口
检查服务是否开启
服务启动成功了
那么如何关闭服务呢是bin下的shutdown.sh/usr/local/tomcat/bin/shutdown.sh
这样我们的服务就关闭了
我们可以修改一个标题让我们负载均衡的时候好分辨服务器
标题的配置文件在webapps/ROOT/index.jsp
的第47行中
我们对他进行一个编辑vim /usr/local/tomcat/webapps/ROOT/index.jsp
这是一个标题的配置我们将他注释掉重新写一个
注释用这个括起来<%-- --%>
wq进行保存重新访问网页
这样就修改成功了
开启远程管理后我们就可以在网站上对tomcat进行一个配置
它的配置文件在tomcat/webapps/manager/META-INF/下的context.xml文件里
现在对其进行一个配置vim /usr/local/tomcat/webapps/manager/META-INF/context.xml
这是配置文件
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
<Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
allow="^.*$"表示的意思是允许所有的地址进行访问管理
设置完成后wq进行保存
配置完成远程管理后我们进行对远程管理账号密码进行配置
远程管理的账号密码配置文件在/usr/local/tomcat/conf/下的tomcat-users.xml文件
我们编辑这个配置文件进行远程管理账户密码的配置
vim /usr/local/tomcat/conf/tomcat-users.xml
将以下配置加入到配置文件中
<roleomca rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>
tomcat:tomcat为管理账户的账号密码对文件进行wq保存
对tomcat服务进行重启
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
输入tomcat:tomcat进行登录
登录成功就可以管理了
Nginx需要在网关上进行部署
先安装Nginx开发环境
yum install zlib-devel pcre-devel -y
complete表示安装完成
在官网下载好Nginx后放入服务器进行解压
使用命令进行解压tar xf Desktop/nginx-1.6.0.tar.gz
解压完成
现在为nginx创建一个用户 adduser -u 512 -M -s /sbin/nologin nginx
方便管理
进入解压好的nginx文件夹里对其进行预编译
进入文件 cd nginx-1.6.0/
进行预编译 ./configure --prefix=/usr/local/nginx_1.6.0 --user=nginx --group=nginx --with-file-aio --with-http_stub_status_module --with-http_gzip_static_module --with-http_flv_module --with-openssl=/usr/bin/openssl
用make进行编译
用makeinstall进行安装
启动Nginx服务/usr/local/nginx_1.6.0/sbin/nginx
看到服务已经起来了
Nginx的配置文件在 /usr/local/nginx_1.6.0/conf/nginx.conf
里
进行编辑 vim /usr/local/nginx_1.6.0/conf/nginx.conf
在http花括号里进行写入配置切记不要写在server里
我们在34行插入我们的配置
upstream xl_server { #设置负载均衡服务器地址
server 172.16.1.100:8080 weight=1; #权重为1
server 172.16.1.200:8080 weight=1; #权重为1
}
还是在该文件的里sever配置里的location进行配置
这个配置早49行
将50行和51行的内容进行注释
加入一条配置proxy_pass http://ajest_server;
让nginx开启方向代理功能
location / {
#root html;
#index index.html index.htm;
proxy_pass http://xl_server; 启用反代功能
}
访问http://xl_server会跳转到刚刚的权重配置里
设置完成后wq进行保存
重启Nginx服务
/usr/local/nginx_1.6.0/sbin/nginx -s stop
/usr/local/nginx_1.6.0/sbin/nginx