Linux一键单机部署和集群部署

整个部署脚本只用执行sh即可,有需要可以联系我。

一、部署类型

  可参考:常见的部署类型(停机部署、蓝绿部署、滚动部署、灰度部署、AB测试等)

 

二、一键单机部署Docker服务

 

三、一键单机部署原生服务

  1. BIN文件制作

    A. 准备压缩包rhxy-standalone.tar.gz;

    B. 编写脚本install-rhxy.sh:

#! /bin/bash

# 安装目录
INSTALL_DATA_DIR=/rhxy/data
# 创建安装目录
mkdir -p ${INSTALL_DATA_DIR}

# 匹配安装压缩包(sed命令是从bin文件中提取出压缩包,$0表示bin文件本身,'1,/^exit 0$/!p'表示匹配bin文件中第一行到以exit开头为0结尾的行之外的所有的行,即匹配安装压缩包) 
sed -n -e '1,/^exit 0$/!p' $0 > ${INSTALL_DATA_DIR}/rhxy-standalone.tar.gz
# 解压安装压缩包
tar -zxvf ${INSTALL_DATA_DIR}/rhxy-standalone.tar.gz -C ${INSTALL_DATA_DIR}

# 切换到安装目录
cd ${INSTALL_DATA_DIR}/rhxy-standalone
# 正式的安装脚本 
sh ./rhxy-standalone.sh 或者就是对应的安装脚本

exit 0

    C. 生成bin文件:cat install-rhxy.sh rhxy-standalone.tar.gz > rhxy-standalone.bin;

    D. 执行bin文件:./rhxy-standalone.bin。

 

四、一键集群部署Docker服务

  1. ssh免密登录

    A. 意义:在一台管理执行服务器上,对其他所有的服务器节点配置成可以ssh免密登录,方便后面一键部署;

    B. 步骤:

      步骤一:生成秘钥对 ssh-keygen,按照提示信息执行完或简单回车;

      步骤二:检查RSA秘钥对是否生成 ll /root/.ssh;

      步骤三:将公钥发送其他服务器 ssh-copy-id -i /root/.ssh/id_rsa.pub ip,按照提示输入密码,ip替换为其他所有的服务器;

      步骤四:其他服务器上检查是否存在秘钥文件 ll /root/.ssh/authorized_keys;

      步骤五:管理服务器验证 ssh root@ip,成功登录其他服务器即可;

  2. sshpass工具

    A. sshpass是一个简单、轻量级命令行工具,提供非交互式密码验证,对比ssh直接使用TTY访问,确保密码是用户键盘输入的,所以该方式是不安全的;

    B. 安装sshpass:yum install -y sshpass;

    C. 不手动输入密码来拷贝文件示例: sshpass -p rhxy scp host.html root@192.168.0.100:/root;

 

posted @ 2022-07-12 21:19  如幻行云  阅读(323)  评论(0编辑  收藏  举报