• AWX+gitlab


    AWX+gitlab

    我们可以将playbook上传到gitlab,然后awx去执行任务的时候,任务的playbook从gitlab去下载

    1. Awx配置

    点击左侧访问下拉菜单,然后添加机构

    1.1 添加机构

    1.2 添加团队

    1.3 添加主机

    将需要被管理的节点添加进来

    变量这个地方可以写内部变量,不知道什么是内部变量可以去看看ansible变量部分

    也可以不直接在这里指定变量,那么就需要在凭证里面添加一个机器凭证,里面会让你填入用户名/密码 或者密钥的

    1.4 测试主机连通性

    依次点击 清单--->Demo Inventory ---> 主机----> 勾选主机---->执行命令

    执行一个简单的whoami命令

    输出没问题

    2. 对接gitlab

    2.1 添加凭证

    这里的用户名和密码不能乱填,要填已经在gitlab上注册的用户或者马上要到gitlab上注册的用户,这里是我的gitlab用户截图

    2.2 添加项目

    在awx上创建新项目

    确保gitlab上有一个群组,等会是需要输入url的

    这个url的来源这样的

    • 1.来到gitlab的界面
    • 2.找到新建的群组/已存在的群组

    最后的页面应该成这样

    2.3 上传playbook

    来到任意节点,只要能连接上git就行

    2.3.1 克隆仓库

    # 这里的gitlab.hcie.com需要自己在hosts里面做解析
    [root@master gitlab]# git clone http://gitlab.hcie.com/devops/myroles.git
    Cloning into 'myroles'...
    Username for 'http://gitlab.hcie.com': test
    Password for 'http://test@gitlab.hcie.com':
    remote: Enumerating objects: 3, done.
    remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3 (from 1)
    Receiving objects: 100% (3/3), done.

    这里需要输入用户名和密码,用户名就用刚刚在awx里面添加凭据的那个用户

    2.3.2 创建分支

    [root@master myroles]# git checkout -b dev
    Switched to a new branch 'dev'
    [root@master myroles]# git push -u origin dev
    然后输入用户名和密码

    2.3.3 编写playbook并上传

    [root@master myroles]# cat test.yaml
    - name: test playbook
    hosts: all
    tasks:
    - name: debug
    debug:
    msg: "hello world"
    [root@master myroles]# git add .
    [root@master myroles]# git commit -m "commit test playbook"
    [root@master myroles]# git push
    输入用户名和密码开始推送

    上传完之后会变成这个样子

    2.3.4 上传ansible.cfg(可选)

    如果没有特殊的配置的话可以不做这一步

    如果是使用的角色来执行任务的话ansible.cfg里面还要定义role的路径

    修改里面的一项

    [root@master myroles]# vim ansible.cfg
    host_key_checking = False

    本身是有这一项的,把注释取消

    2.3.5 创建作业模板

    这里的playbook里面是没有什么东西的,你可以自己把剧本的名字写进去,然后点击保存

    这个凭证没有的话你可以创建一个ssh凭证,不创建的话可以在变量里面把用户名和密码都定义进去

    然后点击保存

    2.4 测试

    直接点击启动,他就会开始执行剧本了

    等他执行

  • 相关阅读:
    mysql字符串函数
    web安全漏洞-SQL注入实验2
    Ribbon 添加快速访问区域
    VPN技术简介
    3.NLP基础:文本可视化简述
    Java变量
    如何在JVM层写切面?JVM Sandbox入门教程与原理浅谈
    【推荐系统学习】推荐系统架构
    用Python操作Word文档,看这一篇就对了!
    信息安全实验一:DES加密算法的实现
  • 原文地址:https://www.cnblogs.com/fsdstudy/p/18261332