zoukankan      html  css  js  c++  java
  • Gitlab_ansible_jenkins三剑客⑥Jenkins和ansible集成

    ip

    角色

    备注

    10.11.0.215

    jenkins服务器

    通过deploy运行jenkins服务,deploy用户做了免秘钥登录ansible服务器

    10.11.0.210

    ansible服务器

    通过deploy执行ansible服务,做了免秘钥登录test主机

    10.11.0.212

    需要被ansible控制的主机

    环境准备:

    1. 搭建ansible服务环境,参考前面章节
    2. Ansible和10.11.0.212做免密码登录
    3. Jenkins和ansible服务做免秘钥登录

    整理的逻辑:

    Jenkins –> 远程调用ansible上的testansible.sh脚本 -->test.example终端机

    Jenkins的配置,执行脚本

    # 通过jenkins服务器调用ansible(10.11.0.210)上的脚本执行ansible任务

    #!/bin/sh

    source /etc/profile

    ssh deploy@10.11.0.210 "/usr/sbin/ip a"

    ssh deploy@10.11.0.210 "ls"

    ssh deploy@10.11.0.210 "/bin/sh testansible.sh"

    Testansible.sh脚本

    [deploy@node1 ~]$ cat testansible.sh

    #!/bin/sh

    set +x

    source /home/deploy/.py3-a2.5-env/bin/activate

    source /home/deploy/.py3-a2.5-env/ansible/hacking/env-setup -q

    cd /home/deploy

    ansible --version

    ansible-playbook --version

    cat test servers

    ansible -i testservers testserver -m command -a "ip addr"

    set -x

    备注:

    由于ansible和jenkins没有部署在同一台服务器中,为了方便就把jenkins挪到了ansible中(因为ansible部署比较麻烦,jenkins简单)

    实际生产环境中不建议 gitlab/jenkins/ansible部署在一台机器中

    可以将gitlab单独一台机器

    jenkins和ansible公用一台机器

    主要步骤:

    1.在目标服务器中安装java环境

    2.拷贝jenkins相关的程序即 /usr/local/tomcat 到目标服务器目录下,解压并赋权 chown -R deploy.deploy /usr/local/apache-tomcat-8.5.39

    3.拷贝运行jenkins的用户配置到目标服务器下:/home/deploy/.jenkins目录

    由于里面集成了gitlab,原来tomcat的8080口被gitlab占用,修改tomcat端口为8090

    直接访问 10.11.0.210:8090/jenkins 就可以正常访问jenkins了

  • 相关阅读:
    11. 优秀的基数统计算法--HyperLogLog
    10. Redis实现限流功能
    9. Redis中游标迭代器(scan)
    8. 使用Redis查询附近的人或商家
    7. Redis的管道技术
    6. Redis在内存用完时会怎么办?以及Redis如何处理已过期的数据?
    5. 详解Redis中的事务
    4. Redis的配置文件以及持久化
    2020.7.15 遇到一个bug
    A Review of Visual Tracking with Deep Learning
  • 原文地址:https://www.cnblogs.com/reblue520/p/10616426.html
Copyright © 2011-2022 走看看