Ansible的部署配置

 

目录

一、Ansible基础安装

二、Ansible配置

(1)SSH免密钥登录设置

(2)ansible配置

三、制作ansible的docker镜像

(1)前置准备

(2)自制ansible镜像

①准备ansible依赖包

②准备dockerfile

③打包成镜像


一、Ansible基础安装

  1. 先在本地有网络环境下准备好ansible的安装文件
    yum -y install ansible --downloadonly --downloaddir /tmp/soft/ansible_rpm
  2. 将文件夹压缩成zip文件(ansible_rpm.zip),路径为/tmp/soft/ansible_rpm/
    zip -q -r ansible_rpm.zip /tmp/soft/ansible_rpm/
  3. 将ansible_rpm.zip文件下载上传至服务器的/tmp/目录下
  4. 进入服务器的/tmp/目录下进行解压
    unzip ansible_rpm.zip
  5. 离线安装
    rpm -ivh *.rpm --force --nodeps
  6. 简单测试
    ansible --version

    二、Ansible配置

    (1)SSH免密钥登录设置

  • 一路回车,主要是用来免密通信的
ssh-keygen -t rsa
  • 需要输入指定用户和ip的密码
ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@ip

(2)ansible配置

  1. 编辑配置文件ansible.cfg
    vi /etc/ansible/ansible.cfg
  2. 参考下面进行配置
    [defaults] 
    # 主机列表配置文件
    #inventory = /etc/ansible/hosts  
    # 库文件存放目录
    #library = /usr/share/my_modules/ 
    # 临时py命令文件存放在远程主机目录 
    #remote_tmp = $HOME/.ansible/tmp 
    # 本机的临时命令执行目录 
    #local_tmp = $HOME/.ansible/tmp 
    # 默认并发数,同时可以执行5次  
    #forks = 5 
    # 默认sudo 用户 
    #sudo_user = root 
    #每次执行ansible命令是否询问ssh密码 
    #ask_sudo_pass = True
    # 每次执行ansible命令是否询问ssh口令 
    #ask_pass = True
    # 默认模块
    module_name = command 
    # 检查对应服务器的host_key,建议取消注释
    host_key_checking = False
    #日志文件
    log_path=/var/log/ansible.log              

    三、制作ansible的docker镜像

    注意:我这里生产环境部署应用,开始之前需要在本地有网络环境下准备centos:7的镜像、jdk安装包,下面所用的是jdk-17.0.5_linux-x64_bin.tar.gz,如没有需要  可以不下载

(1)前置准备

  1. jdk安装包
    wget https://download.oracle.com/java/17/archive/jdk-17.0.5_linux-x64_bin.tar.gz
  2. centos:7的镜像
    docker pull centos:7

(2)自制ansible镜像

①准备ansible依赖包

  • 下载yum包管理工具
    yum -y install yum-utils createrepo
  • 创建ansible目录并进入该目录
    mkdir ansible && cd ansbile
  • 下载依赖包到本地
    repotrack ansible
    cd ../ && createrepo ansible
  • 准备repo文件
    vim ansible.repo
    [ansible]
    name=ansible
    baseurl=file:///usr/local/ansible/
    gpgcheck=0
    enabled=1
  • 放到ansible目录里面
    mv ansible.repo ansible/ 
  • 打成tar包
    tar cf ansible.tar ansible

②准备dockerfile

cat >Dockerfile <<EOF
FROM centos:7

WORKDIR /usr/local/ansible

ADD ansible.tar /usr/local/
ADD jdk-17.0.5_linux-x64_bin.tar.gz /root
RUN rm -rf /etc/yum.repos.d/* && mv /usr/local/ansible/ansible.repo /etc/yum.repos.d/ && yum -y install ansible && rm -rf /usr/local/ansible

#配置jdk编译环境
ENV JAVA_HOME=/root/jdk-17.0.5
ENV PATH=$PATH:$JAVA_HOME/bin

CMD tail -f /dev/null

  
EOF

③打包成镜像

docker build -t ansible:latest .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值