CentOS6.5+JDK+Tomcat+Mysql+Nginx负载均衡+Redis环境部署
1. CentOS6.5直接申请阿里云ECS实例,不再累述。 Windows安装XShell作为SSH客户端,安装Xftp5作为文件传输的客户端。 2. JDK安装: (1)下载JDK tar包,地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 选择Linux x64:jdk-8u101-linux-x64.tar.gz 通过Xftp5将tar包上传到CentOS6.5的root目录下 解压tar包:#tar -zxvf jdk-8u101-linux-x64.tar.gz (2)JDK目录移植到/usr/java: #mkdir /usr/java #mv jdk1.8.0_92 /usr/java (3)设置环境变量: #vim /etc/profile 按i键进入编辑状态,文档末尾追加如下内容: JAVA_HOME=/usr/java/jdk1.8.0_92 CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CATALINE_HOME/lib 按esc键退出编辑状态,输入:wq,保存退出 让刚刚设置的环境变量立即生效:#source /etc/profile (4)验证: #java -version 输出: java version "1.8.0_92" 3. Tomcat安装: (1)下载Tomcat tar包,地址: http://tomcat.apache.org/download-70.cgi 选择Core,tar.gz 通过Xftp5将tar包上传到CentOS6.5的root目录下 解压tar包:#tar -zxvf apache-tomcat-7.0.72.tar.gz (2)Tomcat目录移植到/usr/local: #mv apache-tomcat-7.0.72 /usr/local/tomcat (3)启动Tomcat #cd /usr/local/tomcat/bin #./startup.sh (4)验证: Windows浏览器访问http://****(CentOS外网地址):8080,出现Apache Tomcat的WEB界面(变态黄猫) 4. Mysql安装: (1)安装Mysql: 先查看当前Linux是否已安装mysql:#rpm -qa | grep mysql 删除原先的mysql:#rpm -e mysql //普通删除模式 #rpm -e --nodeps mysql // 强力删除模式,上面命令删不干净就用这个 安装:#yum install -y mysql-server mysql mysql-deve (2)验证: #rpm -qi mysql-server (3)启动mysql: #service mysqld start (4)设置开机自启动: 先查看是否为开机自启动:#chkconfig --list | grep mysqld mysqld 0:off1:off2:off3:off4:off5:off6:off(可见非开机自启动) 设置为开机自启动:#chkconfig mysqld on 重新查看:#chkconfig --list | grep mysqld mysqld 0:off1:off2:on3:on4:on5:on6:off(可见已设置为开机自启动) (5)为mysql的root账号设置密码: #mysqladmin -u root password 'root' // 设置密码为root (6)登录mysql: #/mysql -u root -p 输入root密码登录 (7)创建数据库、创建表、插入数据: 创建数据库: show databases; // 查看现有数据库,注意mysql中每条命令最后都要加分号 create database wuyang; // 创建数据库wuyang show databases; use wuyang; // 切换操作wuyang为当前数据库 创建表: show tables; // 查看现有表 create table users (userId varchar(8),userName varchar(8)); // 创建表 show tables; 插入数据: insert into users values ('001','zhangsan'); insert into users values ('002','lisi'); select * from users; // 查询刚刚插入的数据 desc users; // 查看表结构 exit; // 登出 (8)Tomcat中创建Servlet访问Mysql: 建议先在Windows中创建,调通后再将编译后的Servlet.class和mysql驱动器拷贝到CentOS 创建Servlet的java文件: Eclipse创建Dynamic Web Project工程,Dynamic web module version选择2.5(选择3.0的话将不会自动生成web.xml文件) 创建Serverlet.java继承自HttpServlet 添加代码: import java.sql.*; doGet方法添加代码: try Ctrl+s保存后自动生成class文件 (9)下载mysql连接驱动器,地址: http://mvnrepository.com/artifact/mysql/mysql-connector-java 下载mysql-connector-java-5.1.40-bin.jar文件(jar文件在Windows和CentOS中是通用的) Windows放到tomcat/lib目录,CentOS同样放到tomcat/lib中 (10)重启Tomcat(过程略): (11)验证: Windows浏览器访问http://****(CentOS外网地址):8080/****(对应webapps目录)/Servlet,出现: username=zhangsanusername=lisi 5. Nginx安装: (1)安装Nginx: #yum -y install gcc gcc-c++ autoconf automake make // 安装gcc编译器及相关工具 #yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel // 安装相关依赖的模块 #cd /usr/local/src #wget http://www.nginx.org/download/nginx-1.2.8.tar.gz // 下载Nginx #tar -zxvf ngingx-1.2.8.tar.gz #cd nginx-1.2.8 #./configure --prefix=/usr/local/nginx // 通过编译源码的方式进行安装 //------配置完毕后如下提示-----------// #make #make install (2)启动Nginx: #/usr/local/nginx/sbin/nginx -t #/usr/local/nginx/sbin/nginx 检查Nginx进程,确认是否启动成功:#ps -ef | grep nginx (3)验证: Windows浏览器访问http://****(CentOS外网地址):80,出现Welcome to nginx!信息 (4)配置Nginx负载均衡: 在阿里云上申请另一个CentOS6.5的ECS实例(在Tomcat中设置不同的Servlet,或Mysql中插入不同的数据,以便后面进行验证) 设置Nginx配置文件: #vim /usr/local/nginx/conf/nginx.conf 文档末尾追加: upstream localhosts { // 默认轮询算法,权重算法下述每个server添加weight、max_fails、fail_timeout,不再累述 server 127.0.0.1:8080; // 反向代理到本机Tomcat server ****(第二个CentOS内网地址):8080; } nginx.conf文档中部找到server总结点,用#注释掉其中的整个location节点,重新添加location节点: location / { proxy_pass http://localhosts; proxy_set_header X-Real-IP $remote_addr; proxy_redirect default; } (5)重启Nginx: #/usr/local/nginx/sbin/nginx -s reload 如果只是执行#/usr/local/nginx/sbin/nginx,会遇到错误:nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)时 #fuser -k 80/tcp // 关闭被占用的端口 #/usr/local/nginx/sbin/nginx//重新启动Nginx 直接运行#/usr/local/nginx/sbin/nginx -s reload,就不会有上述问题了 (6)验证Nginx负载均衡: Windows浏览器连续刷新访问http://****(CentOS外网地址):80/****(对应webapps目录)/Servlet,依次交替(Nginx负载均衡的轮询算法)出现两个ECS实例的Servlet内容 关闭其中一个CentOS中的Tomcat,再刷新浏览器,发现只会访问那个还开着的CentOS的Tomcat,说明Nginx在实现负载均衡的同时,保证了高可用。 6. Redis安装: (1)先安装tcl,否则后面无法make test:#yum install -y tcl (2)安装Redis: #cd ~ #wget http://download.redis.io/redis-stable.tar.gz #tar -zxvf redis-stable.tar.gz #cd redis-stable #make #make test (3)配置Redis: 在make成功以后,会在src目录下多出一些可执行文件:redis-server,redis-cli等等。 方便期间用cp命令复制到usr目录下运行。 cp redis-server /usr/local/bin/ cp redis-cli /usr/local/bin/ 然后新建目录,存放配置文件 mkdir /etc/redis mkdir /var/redis mkdir /var/redis/log mkdir /var/redis/run mkdir/var/redis/6379 在redis解压根目录中找到配置文件模板,复制到如下位置。 cp redis.conf /etc/redis/redis.conf 通过vim命令修改 daemonize yes pidfile /var/redis/run/redis_6379.pid logfile /var/redis/log/redis_6379.log(默认是空的,这个不太好找) dir /var/redis/6379(默认是空的,这个也不太好找) (4)启动redis: #redis-server /etc/redis/redis.conf (5)验证: #redis-cli // 启动redis客户端 >set foo bar OK >get foo "bar" (6)分布式访问Redis设置: 第二个CentOS上同样也要部署Redis环境,主要是要部署redis-cli(Redis客户端) 直接用第二个CentOS通过#redis-cli -h ****(第一个CentOS内网地址)-p 6379会出现错误: Could not connect to Redis at ****:6379: Connection refused 因为Redis默认只能localhost登录,需要手动开启远程登录 在第一个CentOS修改redis-server的配置文件并重启: #vim /etc/redis/redis.conf 找到bind localhost并使用#注释掉 这是再用第二个CentOS就能够通过#redis-cli -h ****(第一个CentOS内网地址)-p 6379访问第一个CentOS上的Redis了 (7)Tomcat中Servlet访问Redis: 先下载Redis客户端驱动jedis-2.1.0.jar,地址: http://files.cnblogs.com/liuling/jedis-2.1.0.jar.zip 将解压后的jedis-2.1.0.jar放到目录:对应webapps下lib文件夹或对应webapps下WEB-INFO下lib文件夹中 然后在java文件添加代码: import redis.clients.jedis.Jedis; (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |