centos安装lnmp(centos镜像下载)
如何在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
如何通过docker容器安装LNMP服务器环境
安装系统环境
硬件型号: ThinkPad T520
系统版本: ubuntu 14.04
CPU: i7
RAM: 8G
添加软件源
由于Ubuntu源中的最先版本为0.9无法满足要求,所以需要使用Docker的官方源
添加密钥:
$ sudo apt-key adv--keyserver hkp://keyserver.ubuntu.com:80
--recv-keys\
36A1D7869245C8950F966E92D8576A8BA88D21E9
源地址: deb docker main
添加源可以通过"软件和更新->其它软件->添加"来操作
添加后执行如下命令:
$ sudo apt-get update
$ sudo apt-get install lxc-docker-1.1.1
注:官方给出的源地址为https连接的,但是总是出现ssl验证失败的错误,最后改为非
ssl连接之后正常
测试
执行如下命令获取容器镜像,创建一个实例并打开一个实例shell
$ sudo docker run-t-i centos:latest/bin/bash
注:第一次运行由于需要下载镜像可能需要多等一会儿
运行成功后会有一个新的shell提示符
制作镜像要求
web容器安装Nginx+PHP服务
数据库容器安装Mysql服务
web服务和数据库分离
web服务容器可以访问数据库容器
制作nginx+php镜像
启动一个容器实例:
$ sudo docker run-t-i centos:latest/bin/bash
安装nginx与PHP:
Nginx可以使用源码或rpm包进行安装,PHP可以使用源码或yum安装.具体安装和配置这里
不进行具体讲述.
注:需要把nginx与php-fpm添加到系统服务中并设置开机启动
我设置的站点根目录为/opt/web
退出shell并执行如下命令制作镜像:
$ sudo docker commit-m="web service image nginx+php"-a="username"\
sudo docker ps-lq username/web:v1
这是一个组合命令:
sudo docker commit根据已有实例制作镜像
sudo docker ps-lq返回最后一个运行的实例id
已有镜像可以使用sudo docker images查看
至此创建了第一个镜像 username/web:v1
制作mysql镜像
启动实例:
$ sudo docker run-t-i centos:latest/bin/bash
安装Mysql.
设置Mysql服务开机启动:
$ chkconfig mysqld on
启动mysql.
修改mysql登陆权限:
mysql> grant all privileges on. to'root'@'%'
identified by'dbpasswd';
mysql> flush privileges;
mysql服务默认只能本地连接,制作镜像的时候需要注意.否则是无法连接到数据库的.
退出shell并执行如下命令制作mysql容器镜像:
$ sudo docker commit-m="mysql service image"-a="username"\
sudo docker ps-lq username/mysql:v1
清除不再需要的实例:
$ sudo docker rm sudo docker ps-aq
启动并关联实例
web实例依赖与mysql,所以先打开一个mysql实例:
$ sudo docker run-d--name db username/mysql:v1
/sbin/init
-d参数是让实例以dameon的形式运行./sbin/init是创建实例后执行的操作,此处为初
始化系统服务,包括运行mysql.
启动web实例并与数据库实例进行关联:
$ sudo docker run-d--name web--link db:db-p 8080:80-v/path/to/src:/opt/web username/web:v1/sbin/init
--link参数设置关联的容器,可以设置多个.关联之后会自动更新web容器的host,把db
的地址指向到数据库容器的地址.
-p参数用来进行ip映射.此处把容器的80端口映射到了本地的8080端口.web服务可是
通过localhost:8080访问.
-v参数把数据挂载到容器指定目录.此处为把站点源码目录挂载到容器的站点目录.
在web容器中访问数据库容器的mysql服务可以使用db这个主机地址.
CentOS 7系统远程会话管理工具screen怎么安装使用
安装screen
1、使用putty或类似的SSH工具登录CentOS 7服务器;直接输入screen看提示“bash: screen:未找到命令...”;检车系统有没有安装screen;
2、如果你的CentOS系统没有自带screen,安装方法如下:
yum install screen
安装成功后,输入screen会切换到另一个窗口,可以通过ctrl+a+d切换回原来的命令行界面;
创建screen会话
情景:需要在CentOS 7中下载并安装LNMP一键安装包;
1、先执行以下命令screen-S shapolang以上命令的意思是:新建screen会话,名字为shapolang。
2、开始安装lnmp,
a、执行 wget--no-check-certificate 下载安装包。
b、执行:tar-xvf lnmp1.2-full.tar.gz解压。
c、执行:cd lnmp1.2-full/进入lnmp1.2目录。
d、执行:./install.sh进行安装。
如果网络掉线,可以重新连接,再执行 screen-r shapolang就会看到你的shapolang安装进程。
暂时离开screen会话
(但保留screen里运行的LNMP一键安装包命令)
在SSH窗口中按快捷键:Ctrl+a d(按住Ctrl,依次按a,再按d)即可退出名叫shapolang的screen的会话。
暂时离开screen会话时,screen的会话并不会因为离开而停止,正在运行中(如编译LNMP一键安装包)的进程依然会继续运
行,screen的好处就是可以在同一个ssh窗口中执行多个任务,如再新开一个screen会话安装gitlab。也可以临时关闭ssh窗口,做些其它
事情。
重新读取screen会话
在SSH中执行以上命令即可读取,若忘记之前创建的screen会话的名字或者之前创建时候存在多个相同名称的会话,可以通过下面命令查询正在运行中的screen会话列表信息。
screen-ls
1、通过screen名字(如之前新建的shapolang)读取。
screen-r shapolang
如果存在多个同名名的会在会话名之前有会话ID+会话名称,如4054.shapolang;
可以通过screen-r 4054.shapolang或者screen-r 4054获取指定会话(建议使用后一种,第一种比较复杂)
关闭screen会话
若不再需要当前的screen会话,可以在当前的screen会话中执行 exit,提示[screen is terminating]表示已经成功关闭screen会话(不会保留在内存中),如果需要,请重建。
screen的快捷键
如之前讲到的Ctrl+ a d可以暂时离开当前的screen会话,同时screen还提供其它的快捷键。
Ctrl+ a c:在当前screen会话中创建一个子会话
Ctrl+ a p:上一个子会话
Ctrl+ a n:下一个子会话