NGINX

1、ngxin的安装 

  1.   安装yum工具:yum install yum-utils
  2. 切换目录:cd /etc/yum.repos.d/
  3. 创建文件:touch nginx.repo
  4. 修改文件内容:把以下文本复制到上述文件
    1. [nginx-stable]
      name=nginx stable repo
      baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
      gpgcheck=1
      enabled=1
      gpgkey=https://nginx.org/keys/nginx_signing.key
      module_hotfixes=true
      [nginx-mainline]
      name=nginx mainline repo
      baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
      gpgcheck=1
      enabled=0
      gpgkey=https://nginx.org/keys/nginx_signing.key
      module_hotfixes=true
  5. 切换到该目录下启动:/usr/sbin 启动命令:./nginx  暂停命令:./nginx -s stop  查看进程命令:ps -ef | grep nginx 配置文件的路径:/etc/nginx/nginx.conf 重新加载配置文件:切换到命令窗口 pwd:/usr/sbin 路径下。 如果nginx处于开启状态,./nginx -s reload  安装yum install nginx
  6. 修改文件命令 mv a.text b.text
  7. 优雅的停止nginx ./nginx -s quit   会等待处理的请求处理完,在进行关闭
  8. linux的命令停止  kill -s QUIT 7061

2、nginx配置文件的介绍

3、安装tomcat

  •   查看是否安装了tomcat--- systemctl status tomcat
  • 安装tomcat---yum install -y tomcat
  • 查看tomcat的安装目录---cd /usr/share/tomcat/
  • 在webapps下新建ROOT 目录,在下面创建index的文件 通过echo helleo,tomcat >index.html  直接写道index.html文件中
  • 启动tomcat ---systemctl start tomcat
  • 查看tomcat的状态 systemctl status tomcat

4、实现访问NG代理到tomcat上。

  • 配置NG配置文件,首先copy ,更改 ,reload配置文件
  • 实现简单化代理--通过修改host文件,实现域名www.wanghm.com 访问linux。实现代理到另一个服务器的tomcat上。
       server{
                listen 80;
                server_name  www.wanghm.com;
                location / {
                        proxy_pass http://192.168.184.140:8080;
}
}

 5、通过外部拷贝文件安装tomcat

1、通过官网现在tar.gz的tomcat文件

2、安装这个工具 yum install lrzsz 简单实现上传  通过这个命令rz

3、然后解压到安装目录下

4、修改tomcat配置文件,修改两个地方 通过:set nu 修改第22行和第69行 启动tomcat

5、在webapps下ROOT下新建index.html  输入便于测试 

6、复制文件夹:cp -r apache-tomcat-8.5.81/ ../tomcat-8081/

7、tomcat默认访问ROOT下的index.html 。如果我们访问http://192.168.184.140:8081/beijing/index.html 就是在webapps下新建beijing目录下index.html默认访问静态资源目录。

6、通过nginx实现访问代理两个tomcat。nginx默认80端口,其实配置什么端口都可访问。

server{
                listen 9000;
                server_name  www.wanghm.com;
                location ~ /beijing {

                        proxy_pass http://192.168.184.140:8081;

                                }

                location ~ /shanghai {

                        proxy_pass http://192.168.184.140:8082;

                                }

  此处是正则表达式匹配 如果是www.wanghm.com:9000/beijing放到到nginx的9000端口上,会映射到 http://192.168.184.140:8081加上/beijing 补齐实现代理。

  

 7、基于nginx实现负载均衡的配置。

  注意在upstream myservers 中不需要在填写http了。

  #server list
        upstream myservers{
        server 192.168.184.140:8081;
        server 192.168.184.140:8082;
        }

        server{
                listen 9001;
                server_name www.wanghm.com;
                location / {
                        proxy_pass http://myservers;
                }    
        }

8、负载均衡的方法

  nginx支持4中负载均衡的方法 默认轮询

9、nginx实现动静分离。主流就是把静态资源放在一个服务器上。也可以把静态资源放到服务器上。  

    server{
                listen 9004;
                server_name www.wanghm.com;
                location / {
                        root /data/www;
                }
                location /images/ {
                        root /data;
                }
        }

访问:www.cpf.com/index.html 转换成:/data/www/index.html 访问:www.cpf.com/images/2.jpg 转换成:/data/images/2.jpg

注意 只要匹配不上的都可以匹配/ 比如访问:http://www.wanghm.com:9004/ming/index.html 转换成/data/www/ming/index.html

10、nginx的高可用介绍。在每台nginx上配置keepalived访问虚拟ip实现nginx的高可用。

   

  查看ngxin是否运行 :systemctl status nginx 检查服务器上是否有: systemctl status keepalived
  安装keepalived: yum install -y keepalived
  一般我们安装我一个服务以后,配置文件都是在/etc/keepalived下

  修改keepalived的配置文件:

  根据行号删除::4,7d 删除4到7行

  修改配置文件

vrrp_instance VI_1 {
        state MASTER --主机 存级(BACKUP)
        interface enp0s3--网卡 通过ip addr可以看
        virtual_router_id 51--是为了和从机的id保持一致
        priority 100--优先级 主机要比从机高
         advert_int 1--每隔多久检测下心跳
        authentication{
        auth_type PASS--服务之间认证的方式
        auth_pass 1111
        }
 virtual_ipaddress{
        192.168.184.100--虚拟ip
 }

}

我们可以配置虚拟ip的host实现访问,但现在发现 当keepalived挂了的时候,可以实现高可用,当nginx挂了的时候,不可以用。

启动keepalived systemctl start keepalived  查看启动的日志 systemctl status keepalived

posted @ 2022-07-14 23:29  Jerry&Ming  阅读(67)  评论(0)    收藏  举报