use*_*708 2 debian apt salt-stack
我只是 SaltStack 的初学者。我可以看到有一个 pkgrepo 模块可用于设置包 repo 以便从中安装包。
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.pkgrepo.html
给出的一个例子是:
base:
pkgrepo.managed:
- humanname: Google Chrome
- name: deb http://dl.google.com/linux/chrome/deb/ stable main
- dist: stable
- file: /etc/apt/sources.list.d/chrome-browser.list
- require_in:
- pkg: google-chrome-stable
- gpgcheck: 1
- key_url: https://dl-ssl.google.com/linux/linux_signing_key.pub
Run Code Online (Sandbox Code Playgroud)
我不明白的是我把上面的代码放在哪里?我在 /srv/salt/top.sls 和其他状态的 .sls 文件中尝试过,但这是不对的。它是如何完成的?
您基本上想知道如何使用 SaltStack 状态。这记录在https://docs.saltstack.com/en/latest/topics/tutorials/starting_states.html。
要测试此代码,您必须:
testrepo.slssalt命令执行此状态。例子:
salt 'hostname.domainname' state.sls testrepo
Run Code Online (Sandbox Code Playgroud)
在哪里hostname.domainname是minion您希望配置的(saltstack 客户端)的名称,如salt-key.
在给定的示例中,base是状态名称。它必须是独一无二的。所以base在文档中使用是一个非常糟糕的选择,因为它可能会使您与顶级 sls 文件语法混淆,记录在此处:https : //docs.saltstack.com/en/latest/ref/states/top.html
因此,为了安装 google-chrome,以您的示例为例,您将创建一个如下所示的状态文件:
google_chrome_repository:
pkgrepo.managed:
- humanname: Google Chrome
- name: deb http://dl.google.com/linux/chrome/deb/ stable main
- dist: stable
- file: /etc/apt/sources.list.d/chrome-browser.list
- gpgcheck: 1
- key_url: https://dl-ssl.google.com/linux/linux_signing_key.pub
google-chrome-stable:
pkg.installed:
- require:
- pkgrepo: google_chrome_repository
Run Code Online (Sandbox Code Playgroud)
请注意,在我看来,如果您要从此存储库安装多个软件包,我将必需的声明从 a 更改require_in为 arequire更有意义。此处记录了必备条件:https : //docs.saltstack.com/en/latest/ref/states/requisites.html
| 归档时间: |
|
| 查看次数: |
4891 次 |
| 最近记录: |