目录
LAMP简述
LAMP:是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写:
L指Linux,A指Apache 网页服务器,M一般指MySQL 数据库管理系统,也可以指MariaDB,P一般指PHP 或者 Python Perl
搭建LAMP环境
首先设置一下防火墙,selinux
firewall-cmd --state #查看默认防火墙状态
systemctl stop firewalld #临时关闭firewall
systemctl disable firewalld #禁止firewall开机启动
关闭selinux:vi /etc/selinux/config
修改配置文件:将selinux=enforcing改为disabled
弄好后重启虚拟机,查看后出现Disabled
getenforce #查看selinux状态
或者,
临时关闭(不用重启机器):setenforce 0
安装apache php mariadb
下载LAMP所需的软件包
yum update -y //更新redhat系统下的软件安装和更新
//安装LAMP软件包(apache php mariadb)
yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash
rpm -qa httpd php mariadb //查看软件版本
设置配置文件
配置httpd文件
vim /etc/httpd/conf/httpd.conf
ServerName localhost:80 #修改为主机名,也可以修改域名
DirectoryIndex index.php index.html #添加index.php文件
------------------------------------------------------------------------------
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName localhost:80
#
# Deny access to the entirety of your server's filesystem. You must
------------------------------------------------------------------------------
# is requested.
#
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
#
配置php文件
vi /etc/php.ini
date.timezone = PRC # 配置中国时区
------------------------------------------------------------------------------
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone =PRC //并去掉注释';'
添加index.php文件
touch /var/www/html/index.php //创建index.php文件
vim /var/www/html/index.php //编辑index.php文件
添加以下内容:
<?php
phpinfo()
?>
开启mysql httpd 服务
systemctl start httpd #启动httpd
systemctl enable httpd #开机自动启动httpd
systemctl start mariadb #启动mysqld
systemctl enable mariad #开机自动启动mysql
测试php是否搭建完成(在浏览器中输入http://ip/index.php)
出现此页面即可:
配置mysql
mysqladmin -u root password peng123(自己设置密码) #设置数据库root密码
mysql -u root -p #登录数据库
create database zabbix character set utf8 collate utf8_bin; #创建zabbix数据库(中文编码格式)
grant all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'peng123'; #授予zabbix用户zabbix数据库的所有权限,密码peng123
flush privileges; #刷新权限
quit #退出数据库
vim /var/www/html/index.php #修改测试页内容,测试zabbix用户是否能够登陆数据库
<?php
$link=mysql_connect('自己的ip地址','zabbix','peng123');
if($link) echo "<h1>Success!!</h1>"; #显示Success表示连接数据库成功
else echo "Fail!!";
mysql_close();
?>
在浏览器测试: http://ip/index.php 出现成功即可
若出现本地无法登录情况,解决方式如下:
mysql -u root -p #使用root账户登录数据库;
select user,host from mysql.user; #有空用户名称占用导致本地无法登录远程可登录
drop user ''@localhost; #删除空用户
在这里LAMP搭建就完成了!
Zabbix简述
什么是Zabbix?
Zabbix由Alexei Vladishev创建,目前由Zabbix SIA 开发与维护
zabbix是一个基于 WEB 界面的提供分布式 系统监视 以及网络监视功能的企业级的开源解决方案,这意味着它的源代码是免费开放的,可供公众使用的。
Zabbix的功能非常强大,能保证服务器系统安全稳定的运行,提供灵活的报警机制,这使系统管理员能够及时得知故障并快速定位与解决存在的各类问题。
Zabbix由两部分构成 Zabbix Server与可选组件Zabbix Agent
Zabbix Server:通过收集Agent传递过来的数据,写入数据库(MySQL 等),最终通过Aapche+PHP在web界面进行前端展示Zabbix Agent:通过被监控主机安装 Agent 的方式采集数据(需要监控的数据)
Zabbix服务的部署与配置
查看Zabbix版本及相关操作下载
下载Zabbix 4.0 LTS for CentOS 7, MySQL, Apache
我选择的是Zabbix4.0 如下图:
不同的版本选择,官方下面对应的安装不同!!如下图
官方下面也会有相关安装方法和教程!!如图!
现在我们开始安装!
安装依赖包及组件
//安装依赖包
yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel libevent-devel.x86_64 javacc.noarch javacc-javadoc.noarch javacc-maven-plugin.noarch javacc*
yum install php-bcmath php-mbstring -y #安装php支持zabbix组件
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #导入Zabbix rpm包仓库
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y #安装Zabbix server,Web前端,agent
cd /usr/share/doc/zabbix-server-mysql-4.0.40
zcat create.sql.gz | mysql -uzabbix -p -h 192.168.224.20 zabbix
#导入数据到数据库zabbix中(最后一个zabbix是数据库zabbix),且因为用户zabbix是%(任意主机),所以登录时需要加上当前主机ip(-h 192.168.224.20),密码是用户zabbix登陆密码peng123
检查数据库是否导入成功
mysql -uroot zabbix -e 'show tables'
出现下图及导入成功
为Zabbix server配置数据库
编辑配置文件 /etc/zabbix/zabbix_server.conf
vi /etc/zabbix/zabbix_server.conf #配置数据库用户及密码
### Option: DBPassword
# Database password.
# Comment this line if no password is used.
#
# Mandatory: no
#Default:
DBPassword=peng123 //去掉注释添加确认zabbix数据库密码
grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf #确认数据库用户及密码
38:LogFile=/var/log/zabbix/zabbix_server.log
49:LogFileSize=0
72:PidFile=/var/run/zabbix/zabbix_server.pid
82:SocketDir=/var/run/zabbix
100:DBName=zabbix
116:DBUser=zabbix
124:DBPassword=peng123
356:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
471:Timeout=4
514:AlertScriptsPath=/usr/lib/zabbix/alertscripts
525:ExternalScripts=/usr/lib/zabbix/externalscripts
561:LogSlowQueries=3000
为Zabbix前端配置PHP,编辑配置文件 /etc/httpd/conf.d/zabbix.conf,取消注释并为您设置正确的时区,并启动Zabbix服务
vi /etc/httpd/conf.d/zabbix.conf //修改时区
将# php_value date.timezone Europe/Riga 变更成 php_value date.timezone Asia/Shanghai
<IfModule mod_php5.c>
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 max_input_vars 10000
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai //修改时区
</IfModule>
</Directory>
systemctl enable zabbix-server #启动zabbix-server
systemctl start zabbix-server #开机自动启动zabbix-server
yum install net-tools //下载netstat包装
netstat -anpt | grep zabbix //查看监听端口
systemctl restart httpd //重启服务器
监听端口:10051
web界面安装zabbix
在浏览器http://ip/zabbix
出现下图:
点击Next step
全部为ok才可以哦,点击Next step
输入
端口 3306
zabbix数据库密码 peng123
点击Next step
Name:Zabbix 自行定义 点击Next step
点击Next step
点击Finish
一般输入默认用户
用户名:Admin
密码:zabbix
点击Sign in
出现上图即可!!
注意:Zabbix server is running 要为 yes!!