TriAquae 使用文档

TriAquae是Python语言 + Django Web框架编写的开源的服务器运维管理软件, 您可以借助TriAquae轻松实现对上万台服务器的统一管理,如批量命令执行、文件分发、主机状态监控、资产信息自动管理、运维操作审计等功能。

功能介绍
主机管理 批量命令执行 批量文件传送 主机监控 主机状态监控 资产管理 主机资产自动管理 快速安装 TriAquae安装

1. 安装前准备

1.1. TriAquae所依赖的环境

Hint

TriAquae支持Centos5.x 、RedHat5.x及Ubuntu 12

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
Python       ==> 2.75
python-pip   ==> 1.1
Httpd        ==> 2.2
MySQL        ==> 5.0
SNMP         ==> 5.4
Django       ==> 1.5
Rrdtool      ==> 1.47
Shellinabox  ==> 2.10
Paramiko     ==> 1.10.1
sysstat
MySQLdb
django_admin_bootstrapped.admin.models

1.2. 获取TriAquae

# wget http://118.244.168.45:8082/TriAquae_beta.3.1.x86_64.tar.gz

Note

目前 TriAquae 版本更新很快,如果想下载最新版本的程序,请直接访问 http://118.244.168.45:8082 , 复制连接,并下载.

2. 安装TriAquae

2.1. 安装依赖环境

Note

CentOS

yum install gcc gcc-c++ make sysstat nc -y
yum install python-devel -y
yum install net-snmp net-snmp-utils net-snmp-devel -y
yum install mysql mysql-server mysql-devel -y
/etc/init.d/mysqld start

安装rrdtool

yum install cairo-devel libxml2-devel pango-devel pango libpng-devel -y
yum install freetype freetype-devel libart_lgpl libart_lgpl-devel intltool -y
yum install rrdtool rrdtool-devel -y

Note

Ubuntu

sudo apt-get install gcc make sysstat nc
sudo apt-get install python-dev
sudo apt-get install snmpd
sudo apt-get install mysql-client mysql-server
sudo apt-get install python-mysqldb
sudo /etc/init.d/mysql start

安装rrdtool

sudo apt-get install rrdtool

2.2. 升级 python 到2.75以上

python -V
sh install/python_ins.sh
python -V
说明:5.x系统python默认版本是2.4。安装包中自带升级python 2.75的脚本,安装完成后在次查看python版本

2.3. 安装TriAquae

tar zxf TriAquae.tar.gz
cd TriAquae/install
python setup.py build --prefix= 指定TriAquae安装路径,如果不指定的话,默认安装路径为/usr/local/TriAquae。
python setup.py install         安装TriAquae到您指定的目录中
_images/startservice_01.jpg

Note

安装程序会检测TriAquae安装的系统环境,如果有不满足要求,TriAquae会帮您自动安装这些pythone和django所需的环境,当然这是在您允许的情况下。

2.4. 配置TriAquae

配置数据库信息

编辑当前目录下的tri_config.py配置文件,填写数据库连接信息。

TriAquae初始化之前会将必要的信息写入到数据库中,必须在初始化之前配置好数据库和本机IP地址。

MySQL_Name = 'TriAquae'  # Don't change this database name
MySQL_User = 'root'      # Your Mysql username
MySQL_Pass = 'coral'     # Your Mysql password, '' means no password.

Note

修改数据库名称目前不支持,使用默认的

配置IP地址

Tri_IP = '10.0.0.171' # your TriAquae server’s IP address

配置报警接受邮件

SMTP_server = 'smtp.company.com' #replace it to your company smtp server
Mail_username = 'tri_mailuser'
Mail_password = 'tri_mailpass'

2.5. 初始化

# python setup.py init

Hint

初始化操作会创建tri_connector用户,导入TriAquae数据库等操作

2.6. 启动TriAquae

# cd "Your installation directory"
# python TriAquae/sbin/tri_service.py start

2.7. 登录TriAquae

http://<Your ip>:7000/

Hint

默认初始账户:admin 密码:triaquae

Tip

注意关闭 iptables

2.8. FAQ

启动tri_service.py时报导入错误

ImportError: libpython2.7.so.1.0: cannot open shared object file: No such file or directory

Hint

升级为python2.7

登陆堡垒机连接远程服务器不显示连接信息,无任何输出

Hint

logs目录需要777权限

执行$ sudo python tri_service.py start

django.core.exceptions.ImproperlyConfigured:

Error loading MySQLdb module: libmysqlclient_r.so.15:

cannot open shared object file: No such file or directory

Hint

访问https://pypi.python.org/simple/MySQL-python/下载合适的MySQLdb版本进行编译安装

3. 配置

Start TriAquae service

Locate to your TriAquae install path

cd /your installdir/TriAquae/sbin

启动服务

python tri_service.py start
_images/service_start_01.png

查看状态

python tri_service.py status
_images/service_status_01.png

关闭服务

python tri_service.py stop
_images/service_stop_01.png

Add a new host

本文将介绍如何在TriAquae中添加一台新的主机

手动添加单台主机

  • 登入TriAquae, 在首页点击”Admin Center” 图标进入管理界面

    _images/addhost1.png
  • 我们可以看到在”hosts” 中有一项名为”ips” ,在该项的右边有 add 按钮

    _images/addhost2.png
  • 点击 add 按钮后会弹出添加主机的界面,如下图

    _images/addips.png

Note

注意

在第一次添加主机的过程中,我们可以同时添加 group(主机组) 和 idc (机房名称) .

只需要在对应的项后点击小加号.

  • 添加主机组

    _images/addgroup.png
  • 添加机房

    _images/addidc.png

批量添加主机

TriAquae 允许你批量添加主机, 使用方法很简单.

在TriAquae Administration 界面的上方可以看到三个按钮, 这里我们来介绍”Batch Add Servers”

点击这个按钮, 弹出添加界面, 用法很简单,只需要按照样例,在下方写入客户机的基本信息, 每条记录一行

_images/batchadd_ip_01.png

添加用户

添加TriAquae 管理账户

Hint

  • 管理用户是TriAquae的账户, 用于用户登录系统,查看监控或执行命令
  • 我们可以根据不同的账户进行权限等设置.

在TriAquae administartion 界面下点击 TriAquae Users , 点击 “Add TriAquae User” 按钮

_images/add_user_001.png

点击user 栏后的加号,弹出新建用户的窗口

_images/add_user_01.png

在此界面下,我们只需填入用户名及密码.

完成后,我们可以继续添加后续的信息

绑定远程用户

_images/add_user_002.png

Hint

TriAquae 运行的命令需经由客户端的某个账户执行, 这个账户就是远程用户. 我们可以根据权限的限制,给 TriAquae 分配不同的远程用户

设置用户属组

_images/add_user_003.png

Hint

用户属组用于统一管理 TriAquae 用户

绑定用户可管理的客户机

_images/add_user_004.png

Hint

此设置顾名思义,是给这个用户指定他可以管理的主机.

完善账户信息

在TriAquae Administration 界面下点击 Users, 点击已添加好的账户,进入详细设置界面.

我们可以在此设置该账户的个人信息,权限,属组等

个人信息:

_images/add_user_02.png

账户权限:

_images/add_user_03.png

Hint

此处三个选项分别设定该用户以下权限:

  • Active : 用户是否处于激活状态
  • Staff Status : 用户是否可以登录TriAquae administration 界面
  • Superuser Status : 用户是否拥有全部管理权限

设置用户的属组及权限

_images/add_user_04.png

绑定远程用户

添加远程用户

在TriAquae administration中,点击”Remote Users”.

_images/add_remoteuser_01.png

Note

在添加 remote user 时可以选择管理端哪些用户可以使用此用户执行任务. 此功能基于用户的权限考虑,管理员可以根据需求进行设置.

Hint

  • 远程用户,指在远程主机既被管理主机上执行命令使用的用户.
  • 在使用时,要注意此用户需要在远程主机中存在,否则执行任务是会报错

批量添加远程用户

在一个成熟的系统环境中,在系统中我们会针对不同的服务或功能添加多个user.

TriAquae 可以让你方面的把这些用户添加到系统中进行使用.

在 TriAquae Administration 界面的上方我们可以找到 “Batch Add RemoteUsers”

点击按钮填出添加界面,使用很方面,只需要按照样例在空行输入要添加的用户信息,每条记录占用一行

_images/batchadd_auth_01.png

设置远程用户的认证方式

根据用户的安全认证设置不同,我们把它分为ssh-password 和ssh-key 两种,即密码认证和密钥认证

TriAquae 在管理或执行命令时,需要通过远程用户连接到对端客户机.

在TriAquae Administration 界面中点击”Auth by IP and Remote Users”

_images/auth_remote_01.png

Note

在此添加设置前,推荐您先在服务端和客户端测试通过,注意SELinux 等服务的影响

批量添加远程用户认证

TriAquae 允许用户批量添加远程用户的认证信息. 操作如下

在 TriAquae Administration 界面的上方我们可以找到 “Batch Add Auth_IP_User Binding”

点击按钮填出添加界面,使用很方面,只需要按照样例在空行输入要添加的用户信息,每条记录占用一行

_images/batchadd_remoteuser_01.png

配置主机

我们可以在这里添加对主机的监控, 这里的监控特指与主机的连通性(通过Ping)

请查看下面这个例子:

_images/server_manage_02.png

添加主机监控

在TriAquae Administration 中点击Server status

要添加对主机的监控只需填入host name 和 IP 地址.

_images/server_manage_01.png

配置 SNMP 监控

测试客户机 SNMP 认证

Note

推荐在配置 SNMP 时先在命令行测试通过. 执行监控的程序在 /安装目录/TriAquae/sbin/

使用 -h 查看使用方法

_images/snmp_02.png

这里,如果您的客户机操作系统为CentOS, 推荐使用 SNMP V3, Ubuntu 可以使用 V2

Hint

如何创建 SNMP v3 用户:

service snmpd stop

chmod 777 net-snmp-config

net-snmp-config –create-snmpv3-user -ro -a mypass -A MD5 myname

#注意上面一句,-a是密码,而用户名跟在最后面,-A是密码加密方式,

配置SNMP 监控

我们可以在没台主机的配置界面下添加 SNMP 监控

使用我们在测试时通过的配置信息

_images/snmp_01.jpg

配置报警

我们需要在管理界面下的TriAquae Users 里添加报警的邮箱,在 ips 中对每台客户机设定报警的阀值

  • 添加邮件地址
_images/alert_01.png
  • 设置报警阀值
_images/snmp_03.png

启动自动资产管理

我们可以在主机管理界面下开启自动资产管理

_images/enable_collector_01.png