Gitlab web环境准备及手动实现代码升级(小节4)

该文详细介绍了如何在两台服务器(103和104)上配置HAProxy和Keepalived以实现负载均衡和故障转移的高可用性,同时在另外两台服务器(105和106)上部署Java环境和Tomcat应用,包括JAVA环境的配置、TOMCAT的部署、创建页面、版本升级以及使用免密钥认证进行远程管理。此外,还涉及了服务的启动、停止和权限设置等操作。
摘要由CSDN通过智能技术生成

highlight: androidstudio

theme: fancy

图片.png

103和104

安装包 go apt install haproxy keepalived -y 103 配置文件 ```go cat /etc/haproxy/haproxy.cfg

内容如下

global maxconn 100000

编译装

chroot /usr/local/haproxy

uid 99 gid 99 daemon nbproc 1 pidfile /run/haproxy.pid

socket文件

stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin

log 127.0.0.1 local3 info

defaults option http-keep-alive option forwardfor maxconn 100000 mode http timeout connect 300000ms timeout client 300000ms timeout server 300000ms

listen stats mode http bind 0.0.0.0:9999 stats enable log global stats uri /haproxy-status #登录账号:密码 stats auth haadmin:q1w2e3r4t5 启动 go systemctl restart haproxy systemctl enable haproxy 查看端口是否启动 go ss -ntlp| grep 9999 ```

```go

搜索

find / -name keepalived.conf

拷贝

cp /usr/share/doc/keepalived/samples/keepalived.conf.vrrp /etc/keepalived/keepalived.conf

配置

cat /etc/keepalived/keepalived.conf ! Configuration File for keepalived

globaldefs { notificationemail { acassen } notificationemailfrom Alexandre.Cassen@firewall.loc smtpserver 192.168.200.1 smtpconnecttimeout 30 routerid LVS_DEVEL }

vrrpinstance VI1 { state MASTER interface eth0 garpmasterdelay 10 smtpalert virtualrouterid 51 priority 100 advertint 1 authentication { authtype PASS authpass 1111 } virtual_ipaddress { 192.168.37.240 dev eth0 label eth0:0 } } ```

```go

重启服务

systemctl restart keepalived systemctl enable keepalived 网卡信息 go ifconfig eth0:0 eth0:0: flags=4163 mtu 1500 inet 192.168.37.240 netmask 255.255.255.255 broadcast 0.0.0.0 ether 00:0c:29:f1:73:8f txqueuelen 1000 (Ethernet) 拷贝 go scp /etc/keepalived/keepalived.conf 192.168.37.104:/etc/keepalived/ **104** go

修改下面两项

vim /etc/keepalived/keepalived.conf state BACKUP priority 80

重启服务

systemctl restart keepalived systemctl enable keepalived ``` 103

```go

内容如下

cat /etc/haproxy/haproxy.cfg

global maxconn 100000

编译装

chroot /usr/local/haproxy

uid 99 gid 99 daemon nbproc 1 pidfile /run/haproxy.pid

socket文件

stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin log 127.0.0.1 local3 info

defaults option http-keep-alive option forwardfor maxconn 100000 mode http timeout connect 300000ms timeout client 300000ms timeout server 300000ms

listen stats mode http bind 0.0.0.0:9999 stats enable log global stats uri /haproxy-status

登录账号:密码

stats auth    haadmin:q1w2e3r4t5

监听端口

listen web_port bind 0.0.0.0:80 mode http log global server 192.168.37.105 192.168.37.105:8080 check inter 3000 fall 2 rise 5 server 192.168.37.106 192.168.37.106:8080 check inter 3000 fall 2 rise 5 拷贝、创建目录、重启服务 scp /etc/haproxy/haproxy.cfg 192.168.37.104:/etc/haproxy/ mkdir -p /var/lib/haproxy systemctl restart haproxy ``` 103和104

开启路由转发、监听地址必须打开

vim /etc/sysctl.conf net.ipv4.ip_forward = 1 net.ipv4.ip_nonlocal_bind = 1 生效

sysctl -p 104

重启服务

systemctl restart haproxy systemctl enable haproxy 服务状态页面

图片.png

105和106

配置JAVA环境

上传JAVA包 cd /usr/local/src tar xvf jdk-8u351-linux-x64.tar.gz

软链接 ln -sv /usr/local/src/jdk1.8.0_351 /usr/local/jdk JAVA环境 ```

结尾添加

vim /etc/profile ... export JAVAHOME=/usr/local/jdk export PATH=$JAVAHOME/bin:$JAVAHOME/jre/bin:$PATH export CLASSPATH=.$CLASSPATH:$JAVAHOME/lib:$JAVAHOME/jre/lib:$JAVAHOME/lib/tools.jar 使JAVA环境变量生效 source /etc/profile 查看JAVA版本 java -version 创建目录,在里面部署TOMCAT mkdir /apps 上传[TOMCAT软件包](https://share.weiyun.com/BSxZcgg4) cd /apps/ tar xvf apache-tomcat-8.5.42.tar.gz 软链接 ln -sv /apps/apache-tomcat-8.5.42 /apps/tomcat 创建压缩包目录 mkdir /data/tomcat/tomcatappdir -p 创建解压后目录 mkdir /data/tomcat/tomcatwebdir 放置tomcat应用程序目录 mkdir /data/tomcat/tomcat_webapps 修改此项的目录指向信息 vim /apps/tomcat/conf/server.xml ```

cd /data/tomcat/ mkdir tomcat_webdir/app 105 ```

创建页面

vim tomcat_webdir/app/index.html web1 app 192.168.37.105 <-- **106**

创建页面

vim tomcat_webdir/app/index.html web1 app 192.168.37.106 <-- ``` 105和106

启动tomcat服务 /apps/tomcat/bin/catalina.sh start

ln -sv /data/tomcat/tomcat_webdir/app /data/tomcat/tomcat_webapps/

图片.png

图片.png

``` cd tomcat_webdir/

创建时间戳目录

mkdir app$(date +"%Y%m%d%H%M%S") **105** cp app/index.html app20230215155640/

版本升级

vim app20230215155640/index.html web1 app 192.168.37.105 v2 <-- 停止tomcat /apps/tomcat/bin/catalina.sh stop 删除软链接 rm -rf /data/tomcat/tomcatwebapps/app 软链接、连接到新版本 ln -sv /data/tomcat/tomcatwebdir/app20230215155640 /data/tomcat/tomcat_webapps/app 启动tomcat /apps/tomcat/bin/catalina.sh start ``` 再次访问、信息变了

图片.png

105和106

创建启动账号 ``` groupadd -g 2000 tomcat useradd -m -u 2000 -s /bin/bash -g tomcat tomcat

id tomcat uid=2000(tomcat) gid=2000(tomcat) groups=2000(tomcat) 给tomcat设置密码、此处与后面`免密钥认证`一致 passwd tomcat Enter new UNIX password: <--密码:1234.com Retype new UNIX password: <--密码:1234.com passwd: password updated successfully 停止tomcat /apps/tomcat/bin/catalina.sh stop 递归修改属主属组权限 chown tomcat.tomcat /apps/* /data/tomcat/* -R ``` 上传脚本

添加权限 chmod a+x tomcat cp tomcat /etc/init.d/ 切换到tomcat用户 su - tomcat 启动服务 /etc/init.d/tomcat start

103和104 systemctl restart haproxy

图片.png

图片.png

102

免密钥认证 ```

拷贝密钥到'tomcat'用户、密码:1234.com

ssh-copy-id tomcat@192.168.37.105 ssh-copy-id tomcat@192.168.37.106 此时可直接远程命令到105、106 ssh tomcat@192.168.37.106 "/etc/init.d/tomcat restart" ```

手动代码升级

102 ``` cd /opt/web1/

修改页面信息

vim index.html

Linux01 项目1

Linux01 web1 v3

<--

打包

tar -czvf app.tar.gz index.html

拷到后端服务器

scp app.tar.gz 192.168.37.105:/data/tomcat/tomcat_appdir ```

105

```

查看目录相关属性

ll /data/tomcat/tomcat_appdir

递归修改属主属组

chown tomcat.tomcat /data/tomcat/ -R

切换用户

su - tomcat cd /data/tomcat/tomcat_appdir/

mkdir /data/tomcat/tomcatwebdir/app$(date +"%Y%m%d_%H%M%S")

解压缩到指定文件

tar xvf app.tar.gz -C /data/tomcat/tomcatwebdir/app时间戳

停服务

/etc/init.d/tomcat stop

删除旧的软链接

rm -rf /data/tomcat/tomcat_webapps/app

连接新的软链接

ln -sv /data/tomcat/tomcatwebdir/app时间戳 /data/tomcat/tomcat_webapps/app

启动服务

/etc/init.d/tomcat start `` 浏览器访问页面发生变化`、192.168.37.240/app

图片.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值