Saltstack工作缓存的Dahsboard
saltdash的Python项目详细描述
盐划
使用^{
开发
先决条件
安装
git clone git@github.com:lincolnloop/saltdash.git cd saltdash make all # download dependencies and build the world$EDITOR saltdash.yml # change settings as needed pipenv shell # activate the Python virtual environment saltdash migrate # setup the database saltdash runserver # run a development server
客户端
使用parcel。要启动实时重新加载的开发环境,请运行:
cd client
yarn run watch
投产运行
pip install saltdash
saltdash runserver
不适合生产。生产水平
包含webserver,可以使用saltdash serve
启动。如果Docker是
你的速度越快,还有一个Dockerfile
。
内置web服务器不处理https。默认设置假定 应用程序部署在终止https连接和 正确处理邮件头。如果不是这样,you should read this并采取适当的措施。
配置
配置可以通过环境变量、文件或组合来完成
两者都要感谢^{/etc/saltdash/
或当前
目录。您还可以使用-C
或--config
指定配置文件。
旗帜。saltdash-generate-config
可用于生成示例配置文件
包含以下变量:
- debug
启用调试。
类型:bool
- 密钥必需
一个你保密的长随机字符串https://docs.djangoproject.com/en/2.2/ref/settings/#secret-key
类型:str
- 数据库URL
类型:str
默认值:postgres://localhost:5432/salt
- 允许的主机
允许为站点服务的主机https://docs.djangoproject.com/en/2.2/ref/settings/#allowed-hosts
类型:list
默认值:['*']
- 隐藏输出
要在Web界面中隐藏输出的模块列表。
类型:list
默认值:['pillar.*']
- github_团队id
类型:str
- github_客户端id
类型:str
- github_client_secret
类型:str
- sentry\u dsn
类型:str
- listen
用于Web服务器侦听的套接字。
类型:str
默认值:127.0.0.1:8077
github团队身份验证是通过设置相关的GITHUB_*
变量来实现的。
您需要在https://github.com/organizations/<org>/settings/applications
处设置一个oauth应用程序,其回调url的格式为:https://your-site.example.com/auth/complete/github-team/
要检索您的团队ID:
- 创建a token at GitHub
curl -H "Authorization: token <token>" https://api.github.com/orgs/<org>/teams
设置盐
使用saltdash migrate
设置postgresql数据库后,通过向/etc/salt/master.d/job_cache.conf
添加以下行,将salt的外部作业缓存连接到数据库:
# Replace items in brackets with actual valuesmaster_job_cache: pgjsonbreturner.pgjsonb.host: [db-host]returner.pgjsonb.pass: [db-password]returner.pgjsonb.db: [db-database-name]returner.pgjsonb.port: [db-port]returner.pgjsonb.user: [db-user]
重新启动salt-master
,所有未来的作业都应该存储在数据库中。
如果有lot个作业,则可能需要定期清除缓存。提供了一个helper命令来执行此操作,运行:
saltdash purge_job_cache [days_older_than_to_purge]
如果要自动执行此操作,请使用--no-input
标志绕过确认提示。
保护秘密
很容易通过日志和/或
控制台输出。同样的情况也适用于saltdash。因为秘密经常被储存
在加密的支柱数据中,默认情况下,任何pillar.*
调用的输出都是
通过HIDE_OUTPUT
设置隐藏。如果你知道其他的模块
暴露机密数据,应将其添加到列表中。
然而,还有很多其他方法可以泄露秘密。一些一般的提示 无论你是否使用saltdash都是很好的练习。
- 对处理敏感数据的任何
file.*
操作设置show_changes: false
。 - 在任何可能输出敏感数据的
cmd.*
状态上设置hide_output: true
。 - 使用文件时,请使用模板或
pillar_contents
(如果适用)。 - 避免将机密作为参数传递给模块或状态。通常盐罐 改为从支柱或配置中读取它们。
属性
在CCBY
许可下使用的BornSymbols图标。
更改日志
0.9.6(2019-04-17)
- 依赖项更新
0.9.5(2018-05-24)
- 添加
HIDE_OUTPUT
配置以防止在Web界面中显示机密
0.9.4(2018-05-15)
- 修复Systemd套接字激活时的操作
0.9.3(2018-05-15)
- 添加正确的SSL处理
0.9.2(2018-05-15)
- 修复healthcheck中间件以避免
ALLOWED_HOSTS
检查 - 更新依赖项
- 文档更新
0.9.1(2018-05-14)
- 打包修复程序
0.9(2018-05-14)
- 初始PYPI版本