Zabbix之CentOS7.3下yum安装Zabbix3.5

一、Zabbix特点介绍

(此介绍来源于https://www.zabbix.com/documentation/3.4/zh/manual/introduction/features)

概述

Zabbix是一个高度集成的网络监控解决方案,一个简单的安装包中提供多样性的功能。

数据收集

可用性和性能检查
支持SNMP(包括捕获和主动轮训),IPMI,JMX,VMware监控
自定义检查
按照自定义的间隔收集需要的数据
由Server/Proxy和agents执行

灵活的阀值定义

您可以非常灵活的定义问题阈值,称之为触发器,触发器从后端数据库获取参考值

高度可配置化的告警

可以根据升级计划,接收方和媒体类型来定制发送告警通知 * 使用宏变量可以使告警通知更有意义更高效 * 自动化动作包含执行远程命令

实时图表绘制

使用内置图表绘制功能可以将监控项的内容立即绘制成图表

Web监控功能

Zabbix可以模拟鼠标在Web网站上的操作来检查Web的功能和响应时间

丰富的可视化选项

能够创建自定义的图形,图形中可将多个监控项组合在一个视图展示
网络拓扑图
以仪表盘的样式展现自定义的展现和幻灯片
报告
监控资源的高级(业务)视图

历史数据存储

数据存储在数据库中
可配置历史数据
内置数据管理机制

配置简单

将被监控对象添加为主机
主机被创建用于监控,在数据库中是唯一存在的
应用模板来监控设备

使用模板

在模板中分组检查
模板可以关联其他模板

网络发现

自动发现网络设备
监控代理自动注册
发现文件系统,网络接口和SNMP OID值

简洁的Web界面

Web前端基于PHP
可从任何地方访问
你可以定制自己的操作方式
审核日志

Zabbix API

Zabbix API为Zabbix 提供了对外的可编程接口,用于批量操作,第三方软件集成和其他目的

权限管理系统

安全用户认证
特定用户可以限制访问特定的视图

功能强大并易于扩展的监控代理

部署在被监控对象上
可以部署在Linux和Windows上

二进制代码

为了性能和更少内存的占用,用C语言编写
便于移植

为复杂环境准备

使用Zabbix proxy代理服务器,使得远程监控更简单

二、部署安装Zabbix

安装yum源

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

可以查看安装哪些组件

rpm -ql  zabbix-release

安装zabbix相关包

yum install zabbix-server-mysql -y
yum install zabbix-proxy-mysql -y
yum install zabbix-web-mysql -y
yum install zabbix-get -y
yum install zabbix-agent -y

说明:

zabbix-server-mysql:提供zabbix-server服务
zabbix-proxy-mysql:提供zabbix的代理服务,可以实现分布式监控,减轻zabbix-server的压力
zabbix-web-mysql:提供httpd服务
zabbix-get:提供检查是否能正确获取到zabbix的监控脚本key的监控值
zabbix-agent:提供zabbix-agent服务

三、安装MariaDB

配置MariaDB的yum源

vim /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = https://ipv4.mirrors.ustc.edu.cn/mariadb/yum/10.2/centos7-amd64
gpgkey=https://ipv4.mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

更新源

yum update

安装MariaDB

yum -y install MariaDB-server MariaDB-client

设置字符集

vim /etc/my.cnf.d/server.conf
[mysqld]
init_connect='SET collation_connection = utf8_general_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake

创建zabbix数据库和账户

mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> quit;

导入zabbix相关sql

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

zabbix-server 配置数据库地址 数据库 数据库用户 数据库密码

vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

启动zabbix-server(监听10051端口)

service zabbix-server start

设置开机启动

systemctl enable zabbix-server

zabbix的web配置

vim /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai

SELinux配置

setsebool -P httpd_can_connect_zabbix on
setsebool -P httpd_can_network_connect_db on

被监控机器zabbix-agent安装(被动模式监听10050端口,主动模式下不监听端口)

yum install zabbix-agent
service zabbix-agent start

上述完成后,访问http://192.168.217.20/zabbix/,安装web提示依次完成下面步骤

欢迎界面—>php需求检–>数据库配置—> zabbix服务端详细信息—>zabbix安装前信息列表—>安装完成—>Finish

访问:http://192.168.217.20/zabbix/index.php开始登陆zabbix

默认用户名:Admin,密码:zabbix

http://192.168.217.20/zabbix/index.php

未分类

CentOS 7更改yum源与更新系统

开源镜像

网易开源镜像镜像

网易开源镜像使用帮助: http://mirrors.163.com/.help
未分类

阿里云开源镜像

https://mirrors.aliyun.com/repo/

1、备份

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
或者
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2、下载CentOS-Base.repo 到/etc/yum.repos.d/

cd   /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo

3、生成缓存

yum clean all
yum makecache

4、更新系统

更新系统时间可能会比较久取决于服务器网速

yum -y update

CentOS下yum安装mysql5.7

1、安装yum库

[root@dream7788 ~]# wget https://repo.mysql.com//mysql57-community-release-el7-9.noarch.rpm
[root@dream7788 ~]# yum localinstall mysql57-community-release-el7-9.noarch.rpm
[root@dream7788 ~]# yum repolist enabled | grep "mysql.*-community.*"

2、安装mysql

[root@dream7788 ~]# yum install mysql-community-server

3、启动mysql

[root@dream7788 ~]# systemctl restart mysqld.service

4、获取初次安装时root的密码

[root@dream7788 ~]# grep 'temporary password' /var/log/mysqld.log

显示如下:

2017-01-08T19:41:01.080513Z 1 [Note] A temporary password is generated for root@localhost: js!iUor1wOTT

5、修改root密码

[root@dream7788 ~]# mysql -u root -p

修改密码:

mysql> set global validate_password_policy=0;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'dream7788';
mysql> FLUSH PRIVILEGES;

6、允许root远程登录

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'dream7788' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> quit

yum部署zabbix监控

第1章 yum部署zabbix服务端

1.1 命令行部署

自己搭建的yum仓库(推荐-因为局限于网络-很坑)

[root@m01 ~]# tail -1 /etc/hosts
192.168.19.200 repo.zabbix.com mirrors.aliyun.com

获取yum源(只提供安装zabbix的源)

rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

安装zabbix,httpd,php(依赖中有httpd和php)

yum install zabbix-server-mysql zabbix-web-mysql

安装、启动 mariadb (mysql被oracle甲骨文公司收购)

yum -y install mariadb-server
systemctl start mariadb.service

创建数据库,权限

mysql
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
flush privileges;
exit

导入数据库sql文件(安装server时下载的)

zcat /usr/share/doc/zabbix-server-mysql-3.0.13/create.sql.gz|mysql -uzabbix -pzabbix zabbix

配置zabbix Server连接mysql(yum安装时,大部分不需要修改)

sed -i.ori '115a DBPassword=zabbix' /etc/zabbix/zabbix_server.conf

修改apache-php配置 (yum安装时,大部分不需要修改)

sed -i.ori '18a php_value date.timezone  Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf

启动 zabbix-server httpd

systemctl start zabbix-server
systemctl start httpd

=======至此,进入web界面进行操作=====

1.1.1 yum源配置-解释

推荐自己搭建yum仓库,安装会很顺利,不局限于网络yum源的各种安装不上的问题。(特别全的需要50G以上)
先准备yum源

[root@CentOS7 ~]# rpm -ql zabbix-release-3.0-1.el7.noarch
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
/etc/yum.repos.d/zabbix.repo
/usr/share/doc/zabbix-release-3.0
/usr/share/doc/zabbix-release-3.0/GPL

方法一:网上直接下载(网上安装)

rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

方法二:先自行下载此rpm包,再上传,最后安装(网上安装)
未分类

 [root@CentOS7 ~]# rpm -ivh zabbix-release-3.0-1.el7.noarch.rpm

方法三:自己搭建本地yum仓库,(推荐-下载速度更快)
未分类

1.1.2 MariaDB 与 mysql

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

1.2 zabbix-web界面设置

1.2.1 web图文过程详解

未分类
未分类
未分类
未分类
未分类

1.3 添加被监控主机

所有需要被监控的服务器都要执行
更新yum源(或者将此rpm包下载到本地再安装)

rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

安装zabbix-agent

yum install zabbix-agent

配置文件

sed -i.ori 's#Server=127.0.0.1#Server=172.16.1.61#' /etc/zabbix/zabbix_agentd.conf

启动

systemctl start zabbix-agent.service

1.3.1 zabbix-web界面操作

未分类

1.3.2 字符集优化

安装 “文泉驿-微米黑字体”

yum -y install wqy-microhei-fonts

替换原有字体

cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

刷新web页面即可
未分类

centos重新安装,卸载python yum

公司测试机环境不知道给我卸了什么包,导致yum运行报错状况:

  • 系统版本:Red Hat Enterprise Linux Server release 6.2 (Santiago)

  • 内核版本:2.6.32-220.el6.x86_64

  • 报错情况:

There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

No module named sqlite

Please install a package which provides this module, or
verify that the module is installed correctly.

It’s possible that the above module doesn’t match the
current version of Python, which is:

一、升级或卸载Python导致

1、查看已安装python的版本,可能是当前系统存在多个python导致

[root@test ~]# whereis python
python: /usr/bin/python2.6 /usr/bin/python /usr/bin/python2.6-config /usr/lib/python2.6 /usr/lib64/python2.6 /usr/include/python2.6 /usr/share/man/man1/python.1.gz
[root@test ~]# vi /usr/bin/yum

将 #!/usr/bin/python 修改为 #!/usr/bin/python2.6

如果是源代码安装的,默认路径是/usr/local/bin/python2.6,做个软链接即可

rm -rf /usr/bin/python
ln -s /usr/local/bin/python2.6 /usr/bin/python

二、完全重装python和yum

1、删除现有Python

[root@test ~]# rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps ##强制删除已安装程序及其关联
[root@test ~]# whereis python |xargs rm -frv ##删除所有残余文件 ##xargs,允许你对输出执行其他某些命令
[root@test ~]# whereis python ##验证删除,返回无结果

2、删除现有的yum

[root@test ~]# rpm -qa|grep yum|xargs rpm -ev --allmatches --nodeps
[root@test ~]# whereis yum |xargs rm -frv

3、从http://mirrors.ustc.edu.cn/centos/6.4/os/x86_64/Packages/下载相应的包

python-2.6.6-36.el6.x86_64.rpm
python-devel-2.6.6-36.el6.x86_64.rpm
python-libs-2.6.6-36.el6.x86_64.rpm
python-pycurl-7.19.0-8.el6.x86_64.rpm
python-setuptools-0.6.10-3.el6.noarch.rpm
python-urlgrabber-3.9.1-8.el6.noarch.rpm  
python-iniparse-0.3.1-2.1.el6.noarch.rpm
rpm-python-4.8.0-32.el6.x86_64.rpm
yum-3.2.29-40.el6.centos.noarch.rpm
yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
yum-utils-1.1.30-14.el6.noarch.rpm
yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm     
yum-plugin-protectbase-1.1.30-14.el6.noarch.rpm
yum-plugin-aliases-1.1.30-14.el6.noarch.rpm
yum-plugin-downloadonly-1.1.30-14.el6.noarch.rpm

由于源中版本会更新,具体请查看URL中的版本再下载下来!

[root@test ~]# rpm -Uvh --replacepkgs python*.rpm
[root@test ~]# rpm -Uvh --replacepkgs rpm-python*.rpm yum*.rpm

可能之间还需要zlib和zlib-devel包,根据情况下载并安装!

三、运行python进行测试

[root@test ~]# python
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import yum
>>>

如上,要是什么都没报,则说明OK啦~

Centos7.2下yum安装zabbix

环境准备:

[root@xudongmingzuishuai ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@xudongmingzuishuai ~]# systemctl status firewalld.service   #关闭防火墙
● firewalld.service – firewalld – dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
[root@xudongmingzuishuai ~]# getenforce  #检查是否关闭selinux
Disabled
[root@xudongmingzuishuai ~]# hostname -I
10.0.0.202 172.16.1.202

第1章 安装zabbix源

[root@xudongmingzuishuai ~]# rpm -ivh http://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Retrieving http://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
warning: /var/tmp/rpm-tmp.de2mvt: Header V4 DSA/SHA1 Signature, key ID 79ea5ed4: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zabbix-release-3.0-1.el7         ################################# [100%]
[root@xudongmingzuishuai ~]# cd /etc/yum.repos.d/
[root@xudongmingzuishuai yum.repos.d]# ls
CentOS-Base-Aliyun.repo  epel-Aliyun.repo  zabbix.repo

替换zabbix源的下载地址

[root@xudongmingzuishuai yum.repos.d]# sed -i.bak 's#repo.zabbix.com#mirrors.aliyun.com/zabbix#g' zabbix.repo 
 [root@xudongmingzuishuai yum.repos.d]# ls
 CentOS-Base-Aliyun.repo  epel-Aliyun.repo  zabbix.repo  zabbix.repo.bak 

第2章 安装zabbix相关服务

yum install -y zabbix-server-mysql zabbix-web-mysql

安装数据库

yum install -y mariadb-server

启动数据库服务

systemctl start mariadb.service

登录数据库并创建数据库授权用户

mysql
create database zabbix character set utf8;
grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';
flush privileges;

启动web服务

systemctl start httpd.service 

更改zabbix服务配置文件时区

sed -i 's@# php_value date.timezone Europe/Riga@ php_value date.timezone Asia/Shanghai@g' /etc/httpd/conf.d/zabbix.conf
systemctl restart httpd.service 

更改httpd配置文件

echo "ServerName 127.0.0.1:80">>/etc/httpd/conf/httpd.conf
systemctl restart httpd.service 

查看zabbix数据库文件所在的位置

rpm -ql zabbix-server-mysql 
cd /usr/share/doc/zabbix-server-mysql-3.0.10/

导入数据库文件

zcat create.sql.gz|mysql -uzabbix -pzabbix zabbix

编辑zabbix服务配置文件添加登录数据库密码

vi /etc/zabbix/zabbix_server.conf 
DBPassword=zabbix

重启zabbix服务

systemctl start zabbix-server.service

CentOS6.5使用yum命令方便快捷安装Nginx

1、默认 yum 仓库无法直接安装nginx,需要创建一个文件

/etc/yum.repos.d/nginx.repo,并将下面的内容复制进去: 
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

2、编辑并保存/etc/yum.repos.d/nginx.repo文件后,在命令行下执行

[root@localhost ~]# yum list | grep nginx
nginx.x86_64                               1.8.0-1.el6.ngx             nginx    
nginx-debug.x86_64                         1.8.0-1.el6.ngx             nginx    
nginx-debuginfo.x86_64                     1.8.0-1.el6.ngx             nginx    
nginx-nr-agent.noarch                      2.0.0-8.el6.ngx             nginx

安装:yum -y install nginx

CENTOS 6.x/7.x yum安装配置Nginx

第一种方法:直接通过RPM包安装

1、查看系统是否已安装Nginx,若已安装查看Nginx版本

yum info nginx

rpm -qa|grep nginx

2、选择RPM包进行安装

在 http://nginx.org/packages/centos 网站下查找需要安装的Nginx版本

执行命令

yum install http://nginx.org/packages/centos/6/x86_64/RPMS/nginx-1.8.0-1.el6.ngx.x86_64.rpm

第二种方法:设置Nginx软件源

在/etc/yum.repos.d/目录下创建一个源配置文件nginx.repo:

cd /etc/yum.repos.d/

vim nginx.repo

内容:

[nginx]

name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

保存,则会产生一个/etc/yum.repos.d/nginx.repo文件。

启动Nginx了:

/etc/init.d/nginx start

或者

service nginx start

配置一下Linux防火墙开通80端口。

iptables -I INPUT 5 -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
service iptables save
service iptables restart

Nginx配置文件位置:

/etc/nginx/nginx.conf

python升级后使用yum出现No module named yum错误处理

最近在看python,虚拟机装的是Centos6.6,自带的python版本是2.6.6,打算升级到2.7。

我的升级过程大致如下:

  • 下载2.7源码包https://www.python.org/downloads/source/
  • 卸载旧的python,rpm -e python
  • 编译安装python2.7

整个过程没有遇到问题,但升级完后,再用yum安装软件时报如下错误

[root@localhost python]# yum
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   No module named yum

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.7.13 (r266:84292, Jan 22 2014, 09:37:14) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)]

If you cannot solve this problem yourself, please go to 
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

yum不可用了,这下问题就大了,spacer.gif没有yum,安装rpm包特别费劲。

开始百度关键字“No module named yum”,出来很多帖子和博客,博客上边说的大概意思就是yum就基于python的,升级python后,yum与高版本的python不兼容,导致yum无法使用。博客上给出的方法都是修改/usr/bin/yum文件的头部,把/usr/bin/python修改为/usr/bin/python2.6就可以了,但我的情况是我把旧的python已经卸载了,于是又开始安装2.6版本的python。

安装好2.6.6版本的之后以为就好了,但是还是报有错误:

[root@localhost python]# yum
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   No module named yum

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.6.6 (r266:84292, Jan 22 2014, 09:37:14) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)]

If you cannot solve this problem yourself, please go to 
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

这就奇怪了,都已经把旧版本的装上了,还是不行。这时看到一篇博客是把python和yum都全部卸载后重新安装的。想想这也是个办法于是就又全部下载

whereis python |xargs rm -rf
rpm -e --nodeps python

卸载后重新安装,从光盘镜像里找到python和yum的包

rpm -ivh --nodeps python*
rpm -ivh --nodeps yum*

这次总该好了吧,验证一下

[root@localhost python]# python
Python 2.6.6 (r266:84292, Jan 22 2014, 09:37:14) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import yum
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 23, in <module>
    import rpm
ImportError: No module named rpm

还是报错。。。

spacer.gif不过这次错误变了,变成了“No module named rpm”

再次百度,看到有人说是缺少包:rpm -ivh rpm-python-4.8.0-37.el6.i686.rpm

安装上面的包后一切yum恢复正常了。

那问题又来了难道因为yum就不升级python版本吗?当然不是。其实是我在安装新版python的时候把旧版本的也卸载了才导致这样的问题。

后来在不卸载2.6版本的python是,重新编译安装2.7版本,安装成功并且yum仍然可用。

Centos7 YUM安装Percona XtraDB 5.7

node1    10.0.3.111
node2    10.0.3.112
node3    10.0.3.113
注意:避免创建两个或任意偶数个节点集群,因为这可能会导致脑裂。

关闭selinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0

设置防火墙

确保以下端口未被防火墙阻止或其他软件使用。Percona XtraDB集群需要它们进行通信。

3306
4444
4567
4568

安装 node1

yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
yum install -y Percona-XtraDB-Cluster-57
mkdir -p /data/app/mysql/xtradb/{data,logs}
touch /data/app/mysql/xtradb/logs/{data-slow.log,error.log}
chown mysql:mysql /data/app/mysql/xtradb -R
mysqld --initialize --datadir=/data/app/mysql/xtradb/data --user=mysql
mv /etc/my.cnf /etc/my.cnf_bak
mv /etc/percona-xtradb-cluster.cnf /etc/percona-xtradb-cluster.cnf_bak
vi /etc/my.cnf
[client]
port=3306
socket=/var/lib/mysql/mysql.sock
default-character-set=utf8
[mysqld_safe]
socket=/var/lib/mysql/mysql.sock
nice=0
[mysqld]
server-id=111
user=mysql
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/lib/mysql/mysql.sock
port=3306
datadir=/data/app/mysql/xtradb/data/
log_error = /data/app/mysql/xtradb/logs/error.log
skip-external-locking
character-set-server=utf8
max_connections=10000
slow_query_log=1
slow_query_log_file=/data/app/mysql/xtradb/logs/data-slow.log
long_query_time=5
log_queries_not_using_indexes=1
bind-address=0.0.0.0
max_allowed_packet=1024M
myisam_recover_options=BACKUP
query_cache_limit=1M
query_cache_size=16M
expire_logs_days=10
log-bin-trust-function-creators=1
log-bin=bin-log
innodb_buffer_pool_size = 4G
sync_binlog=1
explicit_defaults_for_timestamp = 1
innodb_flush_method = O_DIRECT
disable_ssl
binlog_format=ROW
default_storage_engine=InnoDB
wsrep_provider=/usr/lib64/galera3/libgalera_smm.so
wsrep_cluster_address=gcomm://10.0.3.111,10.0.3.112,10.0.3.113
wsrep_slave_threads=16
wsrep_cluster_name=my_centos_cluster
wsrep_sst_method=xtrabackup-v2
wsrep_node_name=node1
wsrep_node_address=10.0.3.111
wsrep_sst_auth="sstuser:P@ssw0rd"
innodb_locks_unsafe_for_binlog=1
innodb_autoinc_lock_mode=2
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
systemctl start [email protected]
mysqladmin -uroot -p`cat /var/log/mysqld.log | grep 'temporary password' | awk '{print $NF}'` password 'P@ssw0rd'
mysql -uroot -p'P@ssw0rd'
mysql> CREATE USER 'sstuser'@'localhost' IDENTIFIED BY 'P@ssw0rd';
mysql> GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO 'sstuser'@'localhost';
mysql> FLUSH PRIVILEGES;

安装 node2

yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
yum install -y Percona-XtraDB-Cluster-57
mkdir -p /data/app/mysql/xtradb/{data,logs}
touch /data/app/mysql/xtradb/logs/{data-slow.log,error.log}
chown mysql:mysql /data/app/mysql/xtradb -R
mysqld --initialize --datadir=/data/app/mysql/xtradb/data --user=mysql
mv /etc/my.cnf /etc/my.cnf_bak
mv /etc/percona-xtradb-cluster.cnf /etc/percona-xtradb-cluster.cnf_bak
vi /etc/my.cnf
[client]
port=3306
socket=/var/lib/mysql/mysql.sock
default-character-set=utf8
[mysqld_safe]
socket=/var/lib/mysql/mysql.sock
nice=0
[mysqld]
server-id=112
user=mysql
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/lib/mysql/mysql.sock
port=3306
datadir=/data/app/mysql/xtradb/data/
log_error = /data/app/mysql/xtradb/logs/error.log
skip-external-locking
character-set-server=utf8
max_connections=10000
slow_query_log=1
slow_query_log_file=/data/app/mysql/xtradb/logs/data-slow.log
long_query_time=5
log_queries_not_using_indexes=1
bind-address=0.0.0.0
max_allowed_packet=1024M
myisam_recover_options=BACKUP
query_cache_limit=1M
query_cache_size=16M
expire_logs_days=10
log-bin-trust-function-creators=1
log-bin=bin-log
innodb_buffer_pool_size = 4G
sync_binlog=1
explicit_defaults_for_timestamp = 1
innodb_flush_method = O_DIRECT
disable_ssl
binlog_format=ROW
default_storage_engine=InnoDB
wsrep_provider=/usr/lib64/galera3/libgalera_smm.so
wsrep_cluster_address=gcomm://10.0.3.111,10.0.3.112,10.0.3.113
wsrep_slave_threads=16
wsrep_cluster_name=my_centos_cluster
wsrep_sst_method=xtrabackup-v2
wsrep_node_name=node2
wsrep_node_address=10.0.3.112
wsrep_sst_auth="sstuser:P@ssw0rd"
innodb_locks_unsafe_for_binlog=1
innodb_autoinc_lock_mode=2
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
systemctl start mysql.service

安装 node3

yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
yum install -y Percona-XtraDB-Cluster-57
mkdir -p /data/app/mysql/xtradb/{data,logs}
touch /data/app/mysql/xtradb/logs/{data-slow.log,error.log}
chown mysql:mysql /data/app/mysql/xtradb -R
mv /etc/my.cnf /etc/my.cnf_bak
mv /etc/percona-xtradb-cluster.cnf /etc/percona-xtradb-cluster.cnf_bak
vi /etc/my.cnf
[client]
port=3306
socket=/var/lib/mysql/mysql.sock
default-character-set=utf8
[mysqld_safe]
socket=/var/lib/mysql/mysql.sock
nice=0
[mysqld]
server-id=113
user=mysql
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/lib/mysql/mysql.sock
port=3306
datadir=/data/app/mysql/xtradb/data/
log_error = /data/app/mysql/xtradb/logs/error.log
skip-external-locking
character-set-server=utf8
max_connections=10000
slow_query_log=1
slow_query_log_file=/data/app/mysql/xtradb/logs/data-slow.log
long_query_time=5
log_queries_not_using_indexes=1
bind-address=0.0.0.0
max_allowed_packet=1024M
myisam_recover_options=BACKUP
query_cache_limit=1M
query_cache_size=16M
expire_logs_days=10
log-bin-trust-function-creators=1
log-bin=bin-log
innodb_buffer_pool_size = 4G
sync_binlog=1
explicit_defaults_for_timestamp = 1
innodb_flush_method = O_DIRECT
disable_ssl
binlog_format=ROW
default_storage_engine=InnoDB
wsrep_provider=/usr/lib64/galera3/libgalera_smm.so
wsrep_cluster_address=gcomm://10.0.3.111,10.0.3.112,10.0.3.113
wsrep_slave_threads=16
wsrep_cluster_name=my_centos_cluster
wsrep_sst_method=xtrabackup-v2
wsrep_node_name=node3
wsrep_node_address=10.0.3.113
wsrep_sst_auth="sstuser:P@ssw0rd"
innodb_locks_unsafe_for_binlog=1
innodb_autoinc_lock_mode=2
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
systemctl start mysql.service