首页 文章

Ansible Tower -

提问于
浏览
-4

我有一个看起来像这样的ansible项目 .

[root@ansible-tower kubernetes]# pwd
/var/lib/awx/projects/kubernetes
[root@ansible-tower kubernetes]# tree
.
├── files
│   ├── apiserver
│   ├── config
│   ├── config.json
│   ├── docker
│   ├── dockercfg
│   ├── docker-storage
│   ├── ericsson-redhat-7-extras.repo
│   ├── ericsson-redhat-7.repo
│   └── http-proxy.conf
├── tasks
│   └── main.yaml
└── templates
    ├── config.j2
    ├── etcd.conf.j2
    └── kubelet.j2

3 directories, 13 files

现在在Ansible Tower GUI中,我已经为Kubernetes设置了一个项目 .

然后我继续尝试为这份工作创建一个模板 . 但是当我尝试选择Playbook时,我无法看到 main.yaml .

如何配置Ansible Tower以了解我的主要剧本是 main.yaml 且其依赖项位于 files/templates/ 文件夹中?

2 回答

  • 0

    在上面的第二个屏幕截图中,您似乎尚未在作业模板中选择项目 .
    一旦选择它,您应该能够看到其中可用的剧本(即在配置项目时选择的'kubernetes'目录中的剧本) .
    您可能需要更新目录结构以使用角色,并添加顶级手册以在'/var/lib/awx/projects/kubernetes'目录下包含您的角色 . 这样,您可以将塔工作指向顶级游戏手册,然后使用main.yml执行角色

    [root@ansible-tower kubernetes]# tree
    .
    ├── kubernetes_top_level_playbook.yml
    ├── roles   
    │   ├──kubernetes 
    ├──────├── files
    │          ├── apiserver
    │          ├── config
    │          ├── config.json
    │          ├── docker
    │          ├── dockercfg
    │          ├── docker-storage
    │          ├── ericsson-redhat-7-extras.repo
    │          ├── ericsson-redhat-7.repo
    │          └── http-proxy.conf
    ├──────├── tasks
    │          └── main.yaml
    ├──────├──templates
               ├── config.j2
               ├── etcd.conf.j2
               └── kubelet.j2
    
  • 0

    我认为你持有一个角色存储库作为你的ansible“项目” .

    为了使您的代码能够工作,您需要:

    • 确保你的代码可以通过支持的源代码控制( git )获得,告诉塔/剧本你的角色是git仓库,类似galaxy的工作

    • 将您的文件(包括文件夹本身 kubernetes )放在塔上的 roles 文件夹中

    然后在你的剧本中你应该像常规角色一样参考角色 .

    NOTE: 我对塔完全没有经验

相关问题