centos 刷新host,centos配置hosts文件
如何在centos7上安装zabbix
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案,下文我们一起来看看linux中Zabbix安装配置图文教程,希望例子能帮助到各位同学哦。
说明:
操作系统:CentOS
IP地址:192.168.21.127
Web环境:Nginx+MySQL+PHP
zabbix版本:Zabbix 2.2 LTS
备注:Linux下安装zabbix需要有LAMP或者LNMP运行环境
安装篇
一、创建、导入zabbix数据库
cd/usr/local/src#进入软件包下载目录
tar zxvf zabbix-2.2.6.tar.gz#解压
cd/usr/local/src/zabbix-2.2.6/database/mysql#进入mysql数据库创建脚本目录
ls#列出文件,可以看到有schema.sql、images.sql、data.sql这三个文件
mysql-u root-p#输入密码,进入MySQL控制台
create database zabbix character set utf8;#创建数据库zabbix,并且数据库编码使用utf8
insert into mysql.user(Host,User,Password) values(‘localhost','zabbix',password('123456’));#新建账户zabbix,密码123456
flush privileges;#刷新系统授权表
grant all on zabbix.* to'zabbix'@'127.0.0.1' identified by'123456' with grant option;#允许账户zabbix能从本机连接到数据库zabbix
flush privileges;#再次刷新系统授权表
use zabbix#进入数据库
source/usr/local/src/zabbix-2.2.6/database/mysql/schema.sql#导入脚本文件到zabbix数据库
source/usr/local/src/zabbix-2.2.6/database/mysql/images.sql#导入脚本文件到zabbix数据库
source/usr/local/src/zabbix-2.2.6/database/mysql/data.sql#导入脚本文件到zabbix数据库
注意:请按照以上顺序进行导入,否则会出错。
exit#退出
或者这样导入
mysql-uzabbix-p123456-hlocalhost zabbix</usr/local/src/zabbix-2.2.6/database/mysql/schema.sql
mysql-uzabbix-p123456-hlocalhost zabbix</usr/local/src/zabbix-2.2.6/database/mysql/images.sql
mysql-uzabbix-p123456-hlocalhost zabbix</usr/local/src/zabbix-2.2.6/database/mysql/data.sql
cd/usr/lib64/mysql#32位系统为/usr/lib/mysql,注意系统版本同,文件版本可能不一样,这里是16.0.0
ln-s libmysqlclient.so.16.0.0 libmysqlclient.so#添加软连接
ln-s libmysqlclient_r.so.16.0.0 libmysqlclient_r.so#添加软连接
二、安装zabbix
1、添加用户:
groupadd zabbix#创建用户组zabbix
useradd zabbix-g zabbix-s/bin/false#创建用户zabbix,并且把用户zabbix加入到用户组zabbix中
2、安装依赖包#CentOS使用yum命令安装
yum install net-snmp-devel curl curl-devel mysql-devel
备注:以上软件包如果在安装Web环境LAMP或者LNMP时已经安装过,此步骤可忽略
3、安装zabbix
cd/usr/local/src/zabbix-2.2.6#进入安装目录
./configure--prefix=/usr/local/zabbix--enable-server--enable-agent--with-net-snmp--with-libcurl--enable-proxy--with-mysql=/usr/bin/mysql_config#配置
make#编译
make install#安装
说明:find/-name mysql_config查找位置,如果没有mysql_config,需要安装yum install mysql-devel
4、添加zabbix服务对应的端口
vi/etc/services#编辑,在最后添加以下代码
# Zabbix
zabbix-agent 10050/tcp# Zabbix Agent
zabbix-agent 10050/udp# Zabbix Agent
zabbix-trapper 10051/tcp# Zabbix Trapper
zabbix-trapper 10051/udp# Zabbix Trapper
:wq!#保存退出
5、修改zabbix配置文件
cd/usr/local/zabbix/etc
vi/usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix#数据库名称
DBUser=zabbix#数据库用户名
DBPassword=123456#数据库密码
ListenIP=127.0.0.1#数据库ip地址
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts#zabbix运行脚本存放目录
:wq!#保存退出
6、添加开机启动脚本
cp/usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_server/etc/rc.d/init.d/zabbix_server#服务端
cp/usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_agentd/etc/rc.d/init.d/zabbix_agentd#客户端
chmod+x/etc/rc.d/init.d/zabbix_server#添加脚本执行权限
chmod+x/etc/rc.d/init.d/zabbix_agentd#添加脚本执行权限
chkconfig zabbix_server on#添加开机启动
chkconfig zabbix_agentd on#添加开机启动
7、修改zabbix开机启动脚本中的zabbix安装目录
vi/etc/rc.d/init.d/zabbix_server#编辑服务端配置文件
BASEDIR=/usr/local/zabbix/#zabbix安装目录
:wq!#保存退出
vi/etc/rc.d/init.d/zabbix_agentd#编辑客户端配置文件
BASEDIR=/usr/local/zabbix/#zabbix安装目录
:wq!#保存退出
四、配置web站点
cd/usr/local/src/zabbix-2.2.6
cp-r/usr/local/src/zabbix-2.2.6/frontends/php/usr/local/nginx/html/zabbix
chown www.www-R/usr/local/nginx/html/zabbix
备注:/usr/local/nginx/html为Nginx默认站点目录 www为Nginx运行账户
service zabbix_server start#启动zabbix服务端
service zabbix_agentd start#启动zabbix客户端
六、修改php配置文件参数
1、vi/etc/php.ini#编辑修改
post_max_size=16M
max_execution_time=300
max_input_time=300
:wq!#保存退出
2、vi/usr/local/php/etc/php-fpm.conf#编辑修改
request_terminate_timeout= 300
:wq!#保存退出
service php-fpm reload#重启php-fpm
七、安装web
CentOS环境下Nginx实现3台虚拟机负载均衡
负载均衡
先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解释N台服务器平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。那么负载均衡的前提就是要有多台服务器才能实现,也就是两台以上即可。
测试环境
在VMware里安装了三台。
A服务器IP:192.168.0.219(主)
B服务器IP:192.168.0.119
C服务器IP:192.168.0.109
部署思路
A服务器做为主服务器,域名直接解析到A服务器(192.168.0.219)上,由A服务器负载均衡到B服务器(192.168.0.119)与C服务器(192.168.0.109)上。
在A服务器上,upstream指令——分配负载
vi/etc/nginx/conf.d/default.conf
upstream 192.168.0.219{
server 192.168.0.119:80;
server 192.168.0.109:80;
}
server{
listen 80;
server_name 192.168.0.219;
charset utf8;
location/{
proxy_pass
proxy_set_header Host$host;
proxy_set_header X-Real-IP$remote_addr;
proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;
}
}
保存重启nginx
在B、C服务器上,
vi/etc/nginx/conf.d/default.conf
server{
listen 80;
server_name 192.168.0.219;
index index.html;
root/usr/share/nginx/html;
}
保存重启nginx
测试
当访问的时候,为了区分是转向哪台服务器处理我分别在B、C服务器下写一个不同内容的index.html文件,以作区分。
打开浏览器访问a.com结果,刷新会发现所有的请求均分别被主服务器(192.168.5.149)分配到B服务器(192.168.0.119)与C服务器(192.168.0.109)上,实现了负载均衡效果。
主服务器不能提供服务吗?
以上例子中,我们都是应用到了主服务器负载均衡到其它服务器上,那么主服务器本身能不能也加在服务器列表中,这样就不会白白浪费拿一台服务器纯当做转发功能,而是也参与到提供服务中来。
怎么解决这个问题呢?因为80端口已经用来监听负载均衡的处理,那么本服务器上就不能再使用80端口来处理192.168.0.219的访问请求,得用一个新的。
于是我们在主服务器中编辑/etc/nginx/conf.d/default.conf,添加以下内容
server{
listen 8080;
server_name 192.168.0.219;
index index.html;
root/usr/share/nginx/html;
}
重启nginx
然后,再重新渡负载均衡。
更多Nginx相关教程见以下内容:
CentOS 6.2实战部署Nginx+MySQL+PHP
使用Nginx搭建WEB服务器
搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程
CentOS 6.3下Nginx性能调优
CentOS 6.3下配置Nginx加载ngx_pagespeed模块
CentOS 6.4安装配置Nginx+Pcre+php-fpm
Nginx安装配置使用详细笔记
Nginx日志过滤使用ngx_log_if不记录特定日志
linux(Centos7.4)下安装mysql8.0.26离线安装教程图解
在Linux系统(如Centos7.4)下安装MySQL8.0.26,需要按照以下步骤操作:
首先,创建一个名为mysql的文件夹。
执行命令:`cd/usr/local&& mkdir mysql`
然后,从指定地址下载MySQL资源完整包,并上传至/usr/local/mysql目录。
点击下载链接,下载资源。
接着,解压下载的资源包,命令如下:
执行`tar-xvf mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar`
解压完成后,执行命令查询本地是否存在已安装的MySQL包或卸载已存在的MySQL。
运行`rpm-qa| grep mariadb`命令查询,若有已安装包,使用`rpm-e mariadb-libs-5.5.56-2.el7.x86_64--nodeps`命令卸载。
接下来,安装MySQL。
依次执行以下命令:
`rpm-ivh mysql-community-common-8.0.26-1.el7.x86_64.rpm`
`rpm-ivh mysql-community-client-plugins-8.0.26-1.el7.x86_64.rpm`
`rpm-ivh mysql-community-libs-8.0.26-1.el7.x86_64.rpm`
`rpm-ivh mysql-community-client-8.0.26-1.el7.x86_64.rpm`
完成安装后,启动MySQL服务,使用命令`systemctl status mysqld`检查服务状态。
若需要停止服务,则执行`service mysqld stop`。
初始化数据库时,确保没有/var/lib/mysql目录,若存在需删除,执行`rm-rf/var/lib/mysql`。
执行`mysqld--initialize--console--lower-case-table-names=1`完成数据库初始化。
编辑配置文件/etc/my.cnf,添加`lower-case-table-names=1`内容。
赋予MySQL权限:`chown-R mysql:mysql/var/lib/mysql/`。
启动MySQL服务,命令为`systemctl start mysqld`。
进行数据库操作。
获取初始密码,通过查看`/var/log/mysqld.log`日志文件中密码信息。
修改密码,登录MySQL:`mysql-uroot-p`,然后执行`ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY'123@admin';`。
更新用户访问限制,使用命令`use mysql; UPDATE USER SET host="%" where user="root";`。
刷新权限,执行`flush privileges;`。
退出MySQL,使用`exit`命令。
最后,开启MySQL服务的自动启动,使用命令`systemctl enable mysqld.service`。
若需要关闭自动启动功能,执行`systemctl disable mysqld.service`。