shell脚本--03自动化部署

1.需求

server  master  agent    envtype

8.0.0.1  8.0.0.11  8.0.0.111   aaa

           8.0.0.112

       8.0.0.12   8.0.0.113

           8.0.0.114

1.获取文档中的机器列表

/etc/ansible/hosts

[server][master][agent]

2.发包到目标机器

  2.1 将flask发送给所有机器

  2.2 将熟悉将安装包发给各个节点

3.执行脚本

  3.1 安装flask等--flask.sh

  3.2 配置server节点--config_server.py

    3.2.1 获取本机ip地址,当ip=8.0.0.1时,master=[8.0.0.11, 8.0.0.12]; agent=[8.0.0.111, 8.0.0.112, 8.0.0.113, 8.0.0.114]

    3.2.2 将task_server.json中的server ip=8.0.0.1

    ...

  3.3 配置master节点

    3.3.1 获取本机ip地址,当ip=8.0.0.11时,server=8.0.0.1; agent=[8.0.0.111, 8.0.0.112]

    3.3.2 修改task_agent.json中的server ip=8.0.0.1,master ip=本机ip, agent1 ip=8.0.0.111, agent2 ip =8.0.0.112, envtype=aaa

    ...

  3.4 配置agent节点

    ...    

4.执行

2.json

3.ansible

添加本机的public ssh key添加到目标机器的authorized_keys

  # 生成不对称加密公私钥

  ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ‘‘

  # 使本机可以访问目标机器

  ssh-copy-id -i ~/.ssh/id_rsa.pub 目标用户@目标机器IP

3.命令

参考文档:https://www.cnblogs.com/yc913344706/p/7867554.html

原文地址:https://www.cnblogs.com/cevinchen/p/9434203.html

时间: 2024-10-19 15:20:03

shell脚本--03自动化部署的相关文章

使用shell脚本实现自动化部署hadoop集群

有四台Linux服务器,其中一台为主,其它为从.服务器使用的是CentOS6.5,jdk选择1.6,hadoop选择1.0.4版本.要到实际环境中应用还要根据实际情况做修改. 如果是新装好的系统,要先配置好ip,shell脚本如下: #!bin/bash read "input ip:" ip echo 'the default hostname is master' sed -i '$aIPADDR='$ip /etc/sysconfig/network-scripts/ifcfg-

Shell脚本,自动化发布tomcat项目【转】

Shell脚本,自动化发布tomcat项目脚本. 1. vko2c_auto_build_by_scp.sh 文件内容: #---------------------start---------------------# #封装shutdown函数,关闭tomcat服务 #封装kill函数,强制关闭tomcat的进程 # 调用关闭函数与项目备份 # 使用expect , 采用scp 免输入密码,远程copy ROOT.war 包 # tomcat启动与现实启动日志 #--------------

使用Shell脚本+expect批量部署ssh

Shell脚本+expect批量部署ssh一.准备工作及思路1,三台机器做实验(centos6.5.IP:192.168.0.22 (主控制).192.168.0.156.192.168.0.157)2,IP:22这一台做主控机器,另外2台做客户机.3,提前在主控制机器上创建好公钥,安装好expect,使用脚本批量推送ssh公钥.4,本次部署是以root身份进行下面的操作.二.正式部署1,首先穿件秘钥[[email protected] .ssh]# ssh-keygen -t rsa Gene

Linux定时释放缓存Shell脚本实现自动化运维

使用Linux服务器的用户应该都知道,Linux在使用的时候,可用内存会随着时间慢慢的变小,最终可能到80%-90%,这个时候就需要我们去人工干预,来进行魂村的释放.本文将使用Linux的Cron定时任务结合Shell脚本来实现自动化的内存释放.基本流程1.编写Shell脚本,检测当前服务器的内存使用率,如果达到了我们预设的值则强制释放内存.2.将编写好的Shel脚本,添加到Cron定时任务列表中,设置运行周期.释放缓存的Shell脚本如果在终端中我们通常是使用下面的命令来释放内存 syncec

shell脚本编写nginx部署脚本

下面为shell脚本编写的nginx的安装及修改nginx.conf的脚本,脚本比较简单: #!/bin/bash function yum_install(){ yum install epel-release -y yum install nginx -y} yum_install pw=/etc/nginx/nginx.confread -p "请输入组名:" zuread -p "请输入第一个ip地址:" ip1read -p "请输入第二个ip地

使用Shell脚本实现自动化静默安装Oracle软件

1.首先需要搭建一个Web站点,用于提供yum服务和oracle软体下载,类似软件资料库一样.(也可使用Ftp服务代替Web服务,看自己的选择) 2.Oracle软件安装时,建议不要安装在根目录下,所以此脚本中/u 目录为一个分区,若无/u分区,则相关目录会在根目录下.此脚本还可以结合PXE+KICKSTART无人值守安装实现批量部署. 3.脚本内容如下: #!/bin/bash ##########################################################

shell脚本--03实例

1.架构 2.前置 2.1免密疑问 在首次连接服务器时,会弹出公钥确认提示.会导致自动化任务,由于初次连接服务器而中断. SSH客户端的StrictHostKeyChecking配置,可以实现当第一次连接服务器时,自动接收新公钥. [[email protected] ~]# vi /etc/ssh/ssh_config StrictHostKeyChecking no #或者 [[email protected] ~]# ssh IP -oUserKnownHostsFile=/dev/nul

SHELL脚本之自动化安装通用二进制格式MariaDB

#!/bin/bash datadir="/mydata/data" sqlconf=/etc/mysql installdir=/usr/local/mysql # 关于安装包大家可以去官网下载,注意下载通用二进制格式的 ,然后放在ftp服务器上即可 # 此处假设我把mariadb5.5的安装包放在了ftp上的/pub/Sources/6.x86_64/mariadb下面 case $1 in 36) package=mariadb-5.5.36-linux-x86_64.tar.g

rsync+shell脚本完成自动化备份

第一种备份: ls先查看一下目录 使用scp命令传包查看两台虚拟机是否连通 cd /opt/dvd/Packages/进入这个目录下 yum list installed | grep rsync 查看一下有没有这个包 查看一下端口 Mkdir stor 创建一个目录 Ls查看一下 使用rsync命令将/var/www/html里面的东西放到/stor下 #ls stor/查看一下,发现成功 cd到stor目录 下把里面的东西删掉 使用#rsync -av /var/www/html /stor