saltstsck执行sls配置

SaltStack状态模块配置
本文介绍了一种使用SaltStack状态模块进行配置管理的方法,通过设置'state.slsinit.pkgtest'为'true'来实现包测试初始化等功能。

 

salt '*' state.sls init.pkg
salt '*' state.sls init.pkg test=true

转载于:https://www.cnblogs.com/fanxuanhui-linux/p/6242977.html

### 在 Saltstack 的 sls 文件中配置 Nginx 以下是在 Saltstack 的 sls 文件中实现 Nginx 配置的完整示例,包括虚拟主机设置、网页目录配置、防火墙规则放行以及服务开机启动等功能。 #### 1. 安装 Nginx 在 sls 文件中添加以下内容以安装 Nginx: ```yaml nginx-install: pkg.installed: - name: nginx ``` 此部分确保 Nginx 软件包已安装[^3]。 #### 2. 创建虚拟主机配置文件 使用 `file.managed` 模块创建虚拟主机配置文件 `/etc/nginx/conf.d/site.conf`: ```yaml nginx-site-conf: file.managed: - name: /etc/nginx/conf.d/site.conf - source: salt://nginx/site.conf - user: root - group: root - mode: 644 - require: - pkg: nginx-install ``` 此部分将从 Saltstack 文件服务器中获取 `site.conf` 并放置到目标路径[^2]。 `site.conf` 文件内容如下: ```nginx server { listen 80; server_name node1; # 替换为实际域名或IP地址 root /www; index index.html; location / { return 200 "hello saltstack\n"; } } ``` #### 3. 创建网页目录并设置权限 确保网页目录 `/www` 存在并具有正确的权限: ```yaml nginx-www-dir: file.directory: - name: /www - user: www-data - group: www-data - mode: 755 - makedirs: True - require: - pkg: nginx-install ``` #### 4. 放行防火墙规则 使用 `cmd.run` 模块放行防火墙中的 80 端口: ```yaml firewall-allow-http: cmd.run: - name: ufw allow 80/tcp && ufw reload - unless: ufw status | grep '^80/tcp' ``` 此部分检查是否已放行 80 端口,若未放行则执行命令[^4]。 #### 5. 设置 Nginx 开机自启 确保 Nginx 服务在系统启动时自动运行: ```yaml nginx-service: service.running: - name: nginx - enable: True - watch: - file: nginx-site-conf - file: nginx-www-dir ``` 此部分启用 Nginx 服务并设置开机自启,同时监控虚拟主机配置文件和网页目录的变化[^3]。 ### 完整的 sls 文件示例 以下是完整的 sls 文件内容: ```yaml nginx-install: pkg.installed: - name: nginx nginx-site-conf: file.managed: - name: /etc/nginx/conf.d/site.conf - source: salt://nginx/site.conf - user: root - group: root - mode: 644 - require: - pkg: nginx-install nginx-www-dir: file.directory: - name: /www - user: www-data - group: www-data - mode: 755 - makedirs: True - require: - pkg: nginx-install firewall-allow-http: cmd.run: - name: ufw allow 80/tcp && ufw reload - unless: ufw status | grep '^80/tcp' nginx-service: service.running: - name: nginx - enable: True - watch: - file: nginx-site-conf - file: nginx-www-dir ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值