==在Ubuntu22.04下面,单机部署master和minion出现权限问题,不生成对应的pki。
master在pki下的权限是salt:salt,minion在pki权限root。
需要在master和minion下的配置文件中使用pki_dir,默认的既可以,然后到pki文件夹下看对应的权限。
可以看到两者权限不同。
总是无法访问,但是srv的文件夹可以为True,推断是权限问题,到service里面将user和group改成root吧。
修改root方式失败,还是salt作为用户,查看了debian11,是由debian11引入的,ubiuntu20.04没有变化。
解决方案:
将vscode的默认文件夹转为/srv/ 以后也可以这样做。
配置
salt "*" state.sls saltenv=dev ddns-go.pre test=True
版本变更为saltenv,不是env了,然后ddns-go为services对应的文件夹,
ddns-go-pre:
file.managed:
- name: /tmp/ddns-go.templ
- source: salt://ddns-go/ddns-go-config.templ
- user: root
- group: root
- mode: 0755
ddns-go-source:
file.managed:
- name: /tmp/ddns-go.tar.gz
- source: salt://ddns-go/ddns-go_3.7.1_Linux_x86_64.tar.gz
- user: root
- group: root
- mode: 0755
cmd.run:
- name: cd /tmp/ && tar -zxvf /tmp/ddns-go.tar.gz && ls /tmp/ddns-go
- unless: test -d /etc/ddddd
- require:
- file: ddns-go-pre
- file: ddns-go-source
- salt目录为直接搜索到的salt的dev下面的services文件夹,然后直接ddns-go。便于复制粘贴。
- 默认目录在用户home下,root为/root,所以tar之前需要cd 到对应文件夹下面,再复制。
使用grains和jinja2
- template: jinja # 1. 增加这行表示开启模板
- defaults: # 2. 下面设定变量的值
ipv4hostname: {{grains["host"]}}
ipv6hostname: {{grains["host"]}}
domains:
- {{ipv4hostname}}.internal.dlink.bid
grains信息出现变更
如果自动更新了ipv6,那么发起一个restart所有的salt-minion的信息就好啦。。自己写内容注入到配置管理服务也可以,添加到注册发现也可以。强制刷新grains也可以
刷新grains方法: (1)重启minion (2)Master强制刷新: salt ‘*’ saltutil.sync_grains