Chinaunix首页 | 论坛 | 博客
  • 博客访问: 43135
  • 博文数量: 2
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 24
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-02 10:45
文章分类
文章存档

2016年(1)

2013年(1)

我的朋友
最近访客

分类: 系统运维

2016-07-05 18:30:52

该平台是自己变学习python和django 边写的,不足之处,请各位不吝赐教,谢谢! 

qq群:321596971   有兴趣交流的可以加一下^_^


本文出自 “venuxs” 博客,请务必保留此出处http://venuxs.blog.51cto.com/11763538/1792282

ATsystem 使用介绍   --saltstack web 管理平台

一、系统环境

  centos6.4 x64  操作系统,python2.7.10  ,django1.8.1,mysql,saltstack2015.5.5-1(使用过程中 salt低版本有些功能不支持)

二、安装部署

1、先把mysql服务装上。

点击(此处)折叠或打开

  1. yum -y  install  mysql-server mysql-devel  mysql
配置my.cnf 文件

点击(此处)折叠或打开

  1. [mysqld]
  2. character-set-server=utf8
  3. collation-server=utf8_general_ci
  4. [client]
  5. default-character-set=utf8
登陆mysql创建atsystem使用的数据库

点击(此处)折叠或打开

  1. create database salt_sys character set utf8 collate utf8_general_ci;
2、编译安装python2.7.10版本,并设置环境变量。

点击(此处)折叠或打开

  1. wget
  2. tar -zxvf Python-2.7.10.tgz
  3. cd Python-2.7.10
  4. ./configure
  5. make&&makeinstall
  6. cd /usr/bin
  7. mv python python_bak
  8. ln -s/usr/local/bin/python /usr/bin/


3、安装pip工具。
在次之前先安装setuptools,下载setuptools安装

点击(此处)折叠或打开

  1. wget --no-check-certificate
  2. tar -zxvfsetuptools-20.2.2.tar.gz
  3. cd setuptools-20.2.2
  4. python setup.py install
下载安装pip

点击(此处)折叠或打开

  1. wget --no-check-certificate
  2. tar -zxvfpip-8.0.2.tar.gz
  3. cd pip-8.0.2
  4. python setup.py install
  5. pip --version #查看pip的版本

 4、使用pip安装所需要python库

 在代码里面有包含软件的文本softin.txt,内容如下:


点击(此处)折叠或打开

  1. simplejson==2.5.0
  2. Django==1.8.4
  3. PyYAML==3.11
  4. celery==3.1.19 #测试安装的时候高于celery高于这个版本报错,目前没找到原因
  5. django-celery==3.1.17
  6. salt==2015.8.1
  7. tornado==4.3
  8. Jinja2==2.8
  9. msgpack-pure==0.1.3
  10. zmq==0.0.0
  11. pyzmq==15.1.0
  12. pycrypto==2.6.1
  13. MySQL-python==1.2.5
  14. #使用下面命令安装
  15. pip install -r softin.txt
5、安装saltstack。

 首先把epel yum源配置好。


点击(此处)折叠或打开

  1. rpm -Uvh
  2. sed -i"s/https/http/g" /etc/yum.repos.d/epel.repo
  3. yum update
  4. yum install -y salt-master salt-minion salt-api
6、配置salt-api。

 生成自签名证书(用于ssl)
生成自签名证书,过程中需要输入key密码及RDN


点击(此处)折叠或打开

  1. cd /etc/pki/tls/certs
  2. make testcert
  3. cd /etc/pki/tls/private/
解密key文件,生成无密码的key文件, 过程中需要输入key密码,该密码为之前生成证书时设置的密码

点击(此处)折叠或打开

  1. openssl rsa -in localhost.key -out localhost_nopass.key
创建用于salt-api的用户

点击(此处)折叠或打开

  1. useradd -M -s/sbin/nologin salt
  2. echo"salt_pass" | passwd salt --stdin
7、配置salt eauth文件和master配置文件。

 进入/etc/salt/master.d目录

 创建/etc/salt/master.d/eauth.conf 内容如下:


点击(此处)折叠或打开

  1. external_auth:
  2.   pam:
  3.     salt:
  4.       - .*
  5.       - '@wheel'
  6.       - '@runner'
创建/etc/salt/master.d/api.conf 内容如下:

点击(此处)折叠或打开

  1. rest_cherrypy:
  2.   port: 8080
  3.   ssl_crt: /etc/pki/tls/certs/localhost.crt
  4.   ssl_key: /etc/pki/tls/private/localhost_nopass.key
配置salt-master 主配置文件/etc/salt/master

点击(此处)折叠或打开

  1. default_include:master.d/*.conf #去掉行首的#
配置saltstack 文件管理主目录,并在系统中建立/srv/salt目录,这些文件可以这里通过web界面分发到客户机。

点击(此处)折叠或打开

  1. file_roots:
  2.   base:
  3.     - /srv/salt
打开自动接受客户端认证

点击(此处)折叠或打开

  1. auto_accept: True #这样当客户端salt-minion配置完成后,salt-master就自动accept
打开cache保留时间,因为该系统后台有异步任务在执行,会产生很多jobs,导致磁盘inodes 耗尽,系统会出现401访问错误,如果磁盘小于cache所在分区小于20G,最好小于24小时)

点击(此处)折叠或打开

  1. keep_jobs: 24
  2. job_cache: True
启动salt-master,salt-api服务,启动salt-minion方便做测试

点击(此处)折叠或打开

  1. service salt-master start
  2. servicesalt-api start
 8、测试salt-api是否正常

点击(此处)折叠或打开

  1. curl -k -H "Accept: application/x-yaml" -d username='salt' -d password='salt_pass' -d eauth='pam'
如果出现下面信息表示正常

点击(此处)折叠或打开

  1. return:
  2. - eauth: pam
  3.   expire: 1463349349.815177
  4.   perms:
  5.   - .*
  6.   - '@wheel'
  7.   - '@runner'
  8.   start: 1463306149.815177
  9.   token: 4f26aa29ad6090ad1ddd51419de25a9d2aa65b78
  10.   user: salt
9、部署atsystem管理系统。

 使用git 下载程序到系统目录,这里我放在了/opt目录下


点击(此处)折叠或打开

  1. cd /opt
  2. git clone
导入数据库数据,atsystem目录下有salt_sys.sql 文件。

点击(此处)折叠或打开

  1. mysql -uuser -p salt_sys < ./salt_sys.sql #这里使用到的用户名和密码根据自己设定的来
配置salt-master 的group配置文件,把atsystem目录下的nodegroup.conf 放到/etc/salt/master.d下,然后重启以下satl-master服务,加载nodegroup.conf配置文件

点击(此处)折叠或打开

  1. cp /opt/atsystem/nodegroup.conf /etc/salt/master.d/
配置atsystem的配置文件sys.conf,[path]和[log]节点可以不用改,[id]和[salt]节点根据自己的环境和配置来修改。

点击(此处)折叠或打开

  1. [path]
  2. salt_root_path = /srv/salt
  3. file_path = /srv/salt
  4. salt_group_conf = /etc/salt/master.d/nodegroup.conf
  5. acc_key_path = /etc/salt/pki/master/minions
  6. pre_key_path = /etc/salt/pki/master/minions_pre
  7. den_key_path = /etc/salt/pki/master/minions_denied
  8. rej_key_path = /etc/salt/pki/master/minions_rejected
  9. [log]
  10. #salt远程执行命令的日志记录
  11. cmdlog = ./log/
  12. [id]
  13. #定义salt minion使用的ID,比如这里预定定义的有主机名:"hostname",主机sn序列号:"serial-number",主机的ip地址:"ipaddr"
  14. #根据你自己salt minion的配置来选择,我这里使用的ip地址来作为salt-minion的ID
  15. minion_id = ipaddr
  16. [salt]
  17. #salt-master主机的IP和api使用的端口,就是在上面api.conf配置的
  18. hosturl=
  19. user=salt
  20. password=salt_pass
  21. [mysql]
  22. #atsystem使用到的数据库信息
  23. host=localhost
  24. user=root
  25. password=mysql123
  26. dbname=salt_sys
10、启动atsystem服务

 切换到/opt/atsystem目录下执行,我这里开了三个窗口分别执行的


点击(此处)折叠或打开

  1. screen python manage.py runserver 0.0.0.0:8000 #启动web服务
  2. screen python manage.py celery worker --autoreload --loglevel=info #启动work来执行task
  3. screen python manage.py celery beat #启动beat把任务加入到队列当做给work执行

三、测试

    

使用web浏览器打开: 默认账号是admin  密码atsystem

wKioL1drsMfTdE73AAVA6kkVJFQ456.png-wh_50






阅读(2093) | 评论(0) | 转发(0) |
0

上一篇:Mysql-cluster 安装配置

下一篇:没有了

给主人留下些什么吧!~~