Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

24python/SOMS

Repository files navigation

SOMS

OMS自动化运维平台

20181012更新:代码优化、功能完善

一直想写个运维平台,无奈前端太差(虽然也不懂开发语言),所以没实现。。

还好有不少人共享了各种各样的平台,其中就有OMS运维平台

binbin开源的OMS平台 链接:https://github.com/binbin91/oms

所以自己拿来捣鼓,根据自己的需求,也算是写了点东西出来

  • 批量管理
  • 文件管理
  • 用户管理
  • 项目管理等

利用空闲时间,启用了全新模板,并不停的修改完善,想到什么就写些什么
放到github上也是希望可以给有需要的人一些帮助,也希望可以得到大家的提拔指点

另外,还是要说一下,希望使用的人可以保留版权出处

语言:python
框架:django
工具:saltstack

使用模板gentelella: https://github.com/puikinsh/gentelella

SOMS演示地址: https://soms.imaojia.com

User: admin Passwd: soms123

主机管理

命令执行

模块部署

文件下载

文件上传

用户管理
soms-user

安装saltstack(salt version 2018.3)

# yum install salt-master salt-minion salt-api salt-ssh -y

安装PIP

# wget https://bootstrap.pypa.io/get-pip.py
# python get-pip.py
# cat > /etc/pip.conf <<EOF
[global]
index-url = https://pypi.douban.com/simple
trusted-host = pypi.douban.com
disable-pip-version-check = true
timeout = 120
EOF

配置salt-api

# pip install pyOpenSSL==16.2.0
# useradd -M -s /sbin/nologin saltapi && echo "password"|/usr/bin/passwd saltapi --stdin
# salt-call --local tls.create_self_signed_cert

配置salt-master 我这里把soms解压到了/data/wwwroot下

# cat > /etc/salt/master <<EOF
interface: 0.0.0.0
external_auth:
 pam:
 saltapi:
 - .*
 - '@wheel'
 - '@runner'
 - '@jobs'
rest_cherrypy:
 port: 8000
 ssl_crt: /etc/pki/tls/certs/localhost.crt
 ssl_key: /etc/pki/tls/certs/localhost.key
file_recv: True
include: /data/wwwroot/soms/saltconfig/*.conf
EOF

配置好后,把服务启起来,并测试salt-api

##centos6
# service salt-master start
# service salt-api start
# service salt-minion start
##centos7
# systemctl start salt-master salt-api salt-minion
##
# curl -sSk https://localhost:8000/login -H 'Accept: application/x-yaml' -d username=saltapi -d password=password -d eauth=pam

返回如下信息则配置成功:

return:
- eauth: pam
 expire: 1472695867.308063
 perms:
 - .*
 - '@wheel'
 - '@runner'
 - '@jobs'
 start: 1472652667.308062
 token: 99993ca778fa4f31dce472421cbf01d37be936ad
 user: saltapi

上面这些操作都完成后就可以部署soms项目了

安装依赖(组件要求查看requirements.txt)

# pip install -r requirements.txt

同步数据库

# python manage.py makemigrations
# python manage.py migrate

创建管理员

# python manage.py createsuperuser

runserver运行检查是否正常

# python manage.py runserver 0.0.0.0:8080

如果无法正常运行,请检查以上步骤

20180201新增:
新增file_bakup.py文件,放至项目下media/salt/_modules目录下,然后执行如下命令同步到minion
salt '*' saltutil.sync_all

20170721新增:
关于部署完后报401错误的,需要修改soms/settings_local.py里的相关信息

有任何问题或指教可加QQ群或在本人博客留言
QQ群:291809453
爱猫家 https://imaojia.com
或者email:qqing_lai@hotmail.com

PS:

soms正常运行后,正式上线最好部署django+nginx+uwsgi环境
https://imaojia.com/blog/linux/django-nginx-uwsgi-setup-on-centos

代码写的比较烂,欢迎吐槽 -_-||

About

SaltStack自动化运维平台-SOMS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.7%
  • Other 0.3%

AltStyle によって変換されたページ (->オリジナル) /