• 基于Apache+Tomcat实现负载均衡


    1、基于Apache和tomcat实现负载均衡

    准备三个虚拟机一个安装Apache两个安装Tomcat

    关闭防火墙

    systemctl stop firewalld

    Iptabled -F

    Setenforce 0

    安装Apache

     

    一.通过 https://apr.apache.org/  下载 APR 和 APR-util

    通过 http://httpd.apache.org/download.cgi   下载 httpd

    通过 https://ftp.pcre.org/pub/pcre/   下载  pcre

    二、配置安装环境

    yum -y install gcc gcc-c++ make expat-devel

    三、解压与编译安装

    mkdir /data

    (1)编译安装 APR

    tar xf apr-1.7.0.tar.gz -C /data

    cd /data

    mv apr-1.7.0/ apr 

    cd apr/

    ./configure --prefix=/data/apr && make && make install

    (2)编译安装 APR-util

    tar xf apr-util-1.6.1.tar.gz -C /data

    cd /data

    mv apr-util-1.6.1/ apr-util

    cd apr-util/

    ./configure --prefix=/data/apr-util --with-apr=/data/apr && make && make install

    (3)编译安装 pcre

    tar xf pcre-8.43.tar.gz -C /data

    cd /data

    mv pcre-8.43/ pcre

    cd pcre/

    ./configure --prefix=/data/pcre && make && make install

    (4)编译安装 httpd

    tar xf httpd-2.4.41.tar.gz -C /data

    cd /data

    mv httpd-2.4.41/ apache

    cd apache/

    ./configure --prefix=/data/apache --with-apr=/data/apr --with-apr-util=/data/apr-util && make && make install

    四、启动与关闭

    /data/apache/bin/apachectl start //启动

    /data/apache/bin/apachectl  stop //关闭

     开放80端口

    firewall-cmd --permanent --and-port=80/tcp

    firewall-cmd -reload

    配置开机自启

    (1)将 apachectl 命令拷贝到 /etc/init.d 目录下,改名为httpd

    cp /data/apache/bin/apachectl /etc/init.d/httpd

    (2)编辑 /etc/init.d/httpd 文件,在第一行 #!/bin/bash 的后面添加如下两行

    chkconfig: 2345 70 40

    说明:2345 表示脚本运行的级别,即在2、3、4、5这4种模式下都可以运行,70 表示脚本启动的顺序号,40 表示系统关闭时,脚本的停止顺序号

    description:apache

    (3)将 Apache 服务加入到系统服务

    chkconfig --add httpd

    chkconfig --list httpd

    (4)通过使用 systemctl 命令控制 Apache 的启动和停止

    启动 Apache 服务

    systemctl start httpd.service

    查看 Apache 服务运行状态

    systemctl status httpd.service

    关闭 Apache 服务

    systemctl stop httpd.service

    五、安装中遇到的问题以及解决办法

    错误:configure:error:no acceptable C compiler found in $PATH

    解决:需要安装 gcc

    错误:rm:cannot remove ‘libtoolT’:No such file or directory

    解决:编辑 /data/apr/configure , 找到 $RM '$cfgfile' 进行注释

    错误:configure:error:APR not found. Please read the documentation.

    解决:需要安装 APR 和 APR-util

    错误:xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录

    解决:需要安装 expat-devel 包

    错误:configure:error:pcre-config for libpcre not found. PCRE is required and availab le from

    解决:需要安装 pcre

    错误:如果报多个 .so:undefined reference to 'XXX'

    解决:有可能是下载的 APR-util  包 有问题。换一个下载就好了。 

    安装完apache后直接安装httpd服务

    yum -y install httpd

    源码安装Tomcat

    (1)查看是否安装jdk

    (2)卸载jdk的方式

    方法一:which java

            rm -rf /usr/bin/java

    方法二:rpm -qa | grep -i openjdk

            rpm -e java-1.7.0-openjdk

            rpm -e java-1.7.0-openjdk-headless

            rpm -e java-1.7.0-openjdk --nodeps

            rpm -e java-1.7.0-openjdk-headless

            rpm -qa | grep -i openjdk

    (3)jdk安装

    软件包jdk-8u191-linux-x64.tar.gz

    解压当前目录下

    用mv 移动到/usr/local/取名

    定义环境变量 vim /etc/profile

    设置java 根目录

    在PATH 环境变量中添加Java 根目录的bin 子目录

    用 source执行生效

    安装tomcat

    apache-tomcat-8.5.40.tar.gz

    解压软件包当地

    用ls 查看

    解压后生成文件夹apache-tomcat-8.5.40

    将文件夹移动到/usr/local/下,并改名为tomcat8

    启动tomcat

    查看8080端口

    用谷歌查看本地的ip 地址:8080

     

     

    安装完apache以及tomcat后

    修改/etc/httpd/conf/httpd.conf

    把下面的内容写到最后文件的最后,打开文件的80端口

    #添加以下内容

    <Proxy balancer://tomcat/>

    # 定义集群成员,有多少个Tomcat,就加多少行,注意IP、端口

    BalancerMember ajp://192.168.200.11:8009/ loadfactor=1  #权重为1

    BalancerMember ajp://192.168.200.12:8009/ loadfactor=1

    proxyset lbmethod=byrequests  #均衡分配

    </Proxy>

    proxyrequests   off  #取消正向代理

    ProxyPass / balancer://tomcat/   # 定义一个代理服务 语法:ProxyPass 路径 协议://名称/

    proxypassreverse / balancer://tomcats/

    # 不要代理/server-status路径,注意最后的感叹号

    # /server-status路径是Apache里面用来统计、跟踪它本身的运行情况的

    ProxyPass /server-status !

    # 不要代理集群管理器的路径

    ProxyPass /balancer-manager !

     

    通过浏览器访问自己主机的ip

     

  • 相关阅读:
    java基础(七) java四种访问权限
    java基础(六) switch语句的深入解析
    JavaSe: 不要小看了 Serializable
    对于培训出身的同学,接下来该怎么学习技术?
    Java Tomcat7性能监控与优化详解
    模仿spring-aop的功能,利用注解搭建自己的框架。
    动态页面技术EL
    如何在mysql客户端即mysql提示符下执行操作系统命令
    通过notepad++将混乱的xml配置的格式进行美化
    shell脚本中,for基于列表进行循环的实现方法
  • 原文地址:https://www.cnblogs.com/ZCQ123456/p/11553767.html
Copyright © 2020-2023  润新知