zoukankan      html  css  js  c++  java
  • (32)自动化部署脚本

    要求: 编写自动化脚本,在所有机器上安装jdk。其中一台机器作为拥有jdk的yum仓库服务器,其他的机器都要从该yum服务器中下载jdk并安装。

    自动化脚本分为两个文件,boot.sh和install.sh。

    boot.sh:运行在提供yum仓库的机器上,它会配置本机器到其余机器的免密ssh登录,然后发送install.sh脚本到各台机器上,并在其他机器上启动install.sh脚本。

    install.sh:首先用yum安装wget(yum install -y wget),然后从httpd服务器上下载jdk(wget http://mini4/soft/jdk.tar.gz),最后解压和修改配置文件

    前提:每台机器都要有scp命令

    脚本的详细代码:

    boot.sh:

    BASE_SERVER=172.16.203.100

    //配置ssh免密登录
    auto_ssh_copy_id() {
    expect -c "set timeout -1;
    spawn ssh-copy-id $1; # 执行命令
    expect {
    *(yes/no)* {send -- yes ;exp_continue;} # 如果系统提示带有yes/no,就输入yes然后回车
    *assword:* {send -- $2 ;exp_continue;} # 如果系统提示带有assword,就输入PASSWORD然后回车
    eof {exit 0;} # 不再提示,就退出
    }";
    }
    # set timeout -1; : 无限制地等待系统的响应提示,不会超时

    ssh_copy_id_to_all() {
    for SERVER in $SERVERS
    do
    auto_ssh_copy_id $SERVER $PASSWORD
    # 调用auto_ssh_copy_id函数,传入两个参数SERVER和PASSWORD
    done
    }

    ssh_copy_id_to_all


    for SERVER in $SERVERS
    do
    scp install.sh root@$SERVER:/root # 发送install.sh脚本给其他机器
    ssh root@$SERVER /root/install.sh # 在其他机器上启动脚本
    done

    install.sh:

    #!/bin/bash

    BASE_SERVER=mini4  # 提供yum仓库的机器
    yum install -y wget # 安装wget
    wget $BASE_SERVER/soft/jdk-7u45-linux-x64.tar.gz # 下载jdk
    tar -zxvf jdk-7u45-linux-x64.tar.gz -C /usr/local # 解压
    cat >> /etc/profile << EOF # 修改配置文件
    export JAVA_HOME=/usr/local/jdk1.7.0_45
    export PATH=$PATH:$JAVA_HOME/bin
    EOF

    # cat 文件EOF...EOF,追加到/etc/profile文件里去
    # >>输出重定向 <<输入重定向

    详细操作步骤:

    cd /var/www/html/

    mkdir soft

    cp ~/jdk-7u45-linux-x64.tar.gz ./soft/

    chmod +x install.sh boot.sh  # 添加可执行权限

    ./boot.sh

  • 相关阅读:
    luoguP3181 [HAOI2016]找相同字符
    luoguP4248 [AHOI2013]差异
    luoguP2852 [USACO06DEC]Milk Patterns
    后缀自动机
    luoguP3975 [TJOI2015]弦论
    luoguP2824 [HEOI2016/TJOI2016]排序(线段树分裂做法)
    组合数学学习笔记
    「题解」:[BZOJ2938]病毒 (AC自动机+dfs)
    Linux新人报到
    指针学习笔记
  • 原文地址:https://www.cnblogs.com/paradis/p/11380814.html
Copyright © 2011-2022 走看看