主要内容:
- 软件安装方式
- 上传与下载工具
- 常用软件的安装--jdk、tomcat、mysql、redis
- 项目的部署
- Nginx的安装
- Nginx的功能
- 静态网站部署
- 虚拟主机配置及端口绑定
- 域名绑定
- 反向代理与负载均衡
一、Linux软件安装
1、目录结构
- ~表示root目录,即/root
- 软件安装在/usr/local下
2、软件安装方式
- 二进制发布包
软件已经针对具体平台编译打包发布,只要解压,修改配置即可【tar.gz或tar文件】
- RPM包
软件已经按照redhat的包管理工具规范RPM进行打包发布,需要获取到相应的软件RPM发布包,然后用RPM命令进行安装【wget】
- Yum在线安装
软件已经以RPM规范打包,但发布在了网络上的一些服务器上,可用yum在线安装服务器上的rpm软件,并且会自动解决软件安装过程中的库依赖问题【yum install xxx】
- 源码编译安装
软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署。【make install】
3、上传与下载工具
- FileZilla
- lrzsz
- 通过yum install lrzsz安装(yum镜像源配置不再支持CentOS6,推荐使用CentOS7)
- CentOS6镜像源无法使用的解决方案
- rz上传,sz下载(在SecureCRT中)
- SFTP:Alt+P快捷键(在SecureCRT中)
- put上传,get下载到文档
二、软件的安装
1、jdk
- 上传tar.gz文件到/usr/local/tomcat下
- 卸载自带jdk
* 上传JDK * 卸载open-JDK # 查看jdk版本 java –version # 查看安装的jdk信息 rpm -qa | grep java # 卸载jdk rpm -e --nodeps java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.i686 rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.i686
- 解压安装
* 通常将软件安装到/usr/local * 直接解压就可以 # 如 tar –xvf jdk.tar.gz -C 目标路径 tar –zxvf jdk-7u71-linux-i586.tar.gz -c ./jdk
- 配置环境变量
① vi /etc/profile ② 在末尾行添加 #set java environment JAVA_HOME=/usr/local/jdk/jdk1.7.0_71 CLASSPATH=.:$JAVA_HOME/lib.tools.jar PATH=$JAVA_HOME/bin:$PATH export JAVA_HOME CLASSPATH PATH
③保存退出
source /etc/profile 使更改的配置立即生效
2、MySQL
- 上传并解压
# 上传 cd /usr/local/ mkdir mysql rz # 解包 tar -xvf MySQL-5.6.22-1.el6.i696.rpm-bundle.tar
- 卸载默认MySQL
# 将系统自带的mysql卸载 rpm –qa | grep mysql rmp -e --nodeps mysql-libs-5.1.73-5.el6_6.i686
- 安装客户端及服务器端
# 安装服务器端 rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm # 安装客户端 rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm
- 查看初始密码并登录
# 查看初始密码 cat /root/.mysql_secret # 启动MySQL服务 service mysql start #登录 mysql -uroot -p初始的随机密码 # 设置root用户的密码 set password=password(‘root‘) # 使用 show databases;
- 设置远程访问
# 1.关闭防火墙 service iptables stop; # 2.也可以将防火墙打开3306端口 /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT /etc/rc.d/init.d/iptables save /etc/init.d/iptables status # 设置远程访问 grant all privileges on *.* to ‘root‘ @‘%‘ identified by ‘root‘; flush privileges;
3、Tomcat
- 上传解压
# 上传 rz # 解压 tar -zxvf tomcat-5.tar.gz
- 运行并查看输出
# 运行 ./startup.sh >> myLog.txt # 停止 ./shutdown.sh > myLog.txt # 查看输出 tail tomcat/logs/catalina.out cat tomcat/logs/catalina.out
4、redis
- 安装gcc依赖环境
yum install gcc-c++
- 下载解压
# 下载redis wget http://download.redis.io/releases/redis-3.0.4.tar.gz # 解压 tar -xzvf redis-3.0.4.tar.gz
- 编译安装
# 切换目录 cd redis-3.0.4 # 编译 make # 安装 make PREFIX=/usr/local/redis install
- 配置并启动
# 复制配置文件到/usr/local/redis/bin目录 cd redis-3.0.4 cp redis.conf /usr/local/redis/bin # 目录下的文件 redis-server:Redis服务器端启动程序 redis-cli:Redis客户端操作工具。 redis-benchmark:Redis性能测试工具 redis-check-aof:数据修复工具 redis-check-dump:检查导出工具 # 启动redis服务端 cd redis/bin ./redis-server redis.conf # 克隆新窗口,启动客户端 ./redis-cli
三、部署web项目到Linux
1. 修改pom配置
在pom.xml中添加<finalName>并修改jdk版本为1.7
2. 修改项目
2.1 druid.properties设置编码
2.2 header.html
2.3 route_detail.html
3. 使用package命令打包
4. 将travel.war上传到tomcat中的webapps目录
5. 重启tomcat
6. 导出本地mysql数据(结构和数据),并导入linux中的mysql
四、Nginx的安装与启动
1、介绍
Nginx 是一款高性能的http 服务器、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
能够支支撑 5 万并发链接,cpu、内存等资源消耗非常低,运行非常稳定。
2、应用场景
- http 服务器。Nginx 是一个 http 服务可以独立提供 http 服务。可以做网页静态服务器。
- 虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
- 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用 nginx 做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
3、安装
- 安装gcc环境
- 安装第三方开发包
# 安装PCRE(Perl库) # 用来解析redis中http模块的正则表达式 yum install -y pcre pcre-devel # 安装zlib # 提供对http包的压缩和解压 yum install -y zlib zlib-devel # 安装OpenSSL # 套接字层密码库,支持http及https协议 yum install -y openssl openssl-devel
- 上传解压
- 创建Makefile文件(使用NotePad++的sftp连接22端口)
# 上传 mkdir /usr/local/nginx rz # 解压缩 tar zxvf nginx-1.8.0.tar.gz # 创建MakeFile文件 cd nginx-1.8.0 ./configure #文件内容 --prefix=/usr/local/nginx --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_gzip_static_module --http-client-body-temp-path=/var/temp/nginx/client --http-proxy-temp-path=/var/temp/nginx/proxy --http-fastcgi-temp-path=/var/temp/nginx/fastcgi --http-uwsgi-temp-path=/var/temp/nginx/uwsgi --http-scgi-temp-path=/var/temp/nginx/scgi
- 编译及安装
# 编译 make # 安装 make install
- 启动与访问
# 创建临时文件对应的目录 mkdir /var/temp/nginx/client -p # 进入启动目录sbin cd /usr/local/ngiux/sbin # 启动 ./nginx # 查看进程 ps aux|grep nginx # 访问,地址栏输入ip即可(默认为80端口 ) 192.168.30.128
- 关闭、重启及刷新
# 关闭Nginx ./nginx -s stop # 正常退出 ./nginx -s quit # 刷新 ./nginx -s reload # 重启Nginx ./nginx -s stop ./nginx ./nginx -s reload
五、Nginx的功能
1、静态网站部署
将/资料/静态页面/index目录下的所有内容 上传到服务器的/usr/local/nginx/html下即可访问
2、虚拟主机配置
把一台运行在互联网上的物理服务器划分成多个“虚拟”服务器
2.1 端口绑定
- 上传静态网页到指定目录
-
将/资料/静态页面/index目录上传至 /usr/local/nginx/index下
-
将/资料/静态页面/regist目录上传至 /usr/local/nginx/regist下
-
-
修改Nginx 的配置文件
# 修改 vim /usr/local/nginx/conf/nginx.conf # 具体内容 server { listen 81; # 监听的端口 server_name localhost; # 域名或ip location / { # 访问路径配置 root index;# 根目录 index index.html index.htm; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } } server { listen 82; # 监听的端口 server_name localhost; # 域名或ip location / { # 访问路径配置 root regist;# 根目录 index regist.html; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } }
-
访问测试
-
地址栏输入http://192.168.177.129/:81 可以看到首页面
-
地址栏输入http://192.168.177.129/:82 可以看到注册页面
-
2.2 域名绑定
- 域名级别
- *域名
- 国家~:cn、us、jp
- 国际~:top、org、syz
- 二级域名:baidu.com、edu.cn、gov.cn
- 三级域名:apache.com.cn
- *域名
- 与ip的绑定(一个ip可被多个域名绑定)
# 修改hosts 文件(C:\Windows\System32\drivers\etc)
# 配置后不需要经过DNS服务器 192.168.177.129 www.hmtravel.com 192.168.177.129 regist.hmtravel.com
- 修改Nginx配置文件
- 刷新配置并测试
# 修改配置文件 vi nginx.conf # 具体内容 server { listen 80; server_name www.hmtravel.com; location / { root cart; index cart.html; } } server { listen 80; server_name regist.hmtravel.com; location / { root search; index search.html; } } # 刷新配置 ./nginx -s reload # 测试 http://www.hmtravel.com/ http://regist.hmtravel.com/
3、反向代理
- 概念:
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
- 与正向代理的区别
正向代理是针对你的客户端,而反向代理是针对服务器的
- 配置过程
-
将travel案例部署到tomcat中(package为ROOT.war,变为ROOT目录),上传到服务器。
-
启动TOMCAT,输入网址http://192.168.177.129:8080 可以看到网站首页
-
在Nginx主机修改Nginx配置文件
-
upstream tomcat-travel{ server 192.168.177.129:8080; } server { listen 80; # 监听的端口 server_name www.hmtravel.com; # 域名或ip location / { # 访问路径配置 # root index;# 根目录 proxy_pass http://tomcat-travel; index index.html index.htm; # 默认首页 } }
-
- 重启并测试
# 刷新 ./nginx -s reload # 测试 http://www.hmtravel.com
4、负载均衡
负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
- 准备工作
-
将刚才的存放工程的tomcat复制三份,修改端口分别为8080 ,8081,8082
-
分别启动这三个tomcat服务
-
在首页标题加上标记以便区分
-
- 修改配置文件
upstream tomcat-travel { server 192.168.177.129:8080; server 192.168.177.129:8081; server 192.168.177.129:8082; } server { listen 80; # 监听的端口 server_name www.hmtravel.com; # 域名或ip location / { # 访问路径配置 # root index;# 根目录 proxy_pass http://tomcat-travel; index index.html index.htm; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } }
- 根据不同服务器性能修改负载权重
upstream tomcat-travel { server 192.168.177.129:8080; server 192.168.177.129:8081 weight=2; server 192.168.177.129:8082; }
- 访问,输入http:// www.hmtravel.com
作者介绍:安徽大学软件工程硕士在读,Email为ljh.ahu@qq.com,QQ为782593062,有问题欢迎与我交流