1、LNMP环境部署:
1)系统升级:
yum update -y
2)安装依赖库:
yum install -y zlib pcre pcre-devel openssl openssl-devel
3)添加用户www,那么也自动创建了用户组:www:
useradd -s /sbin/nologin www
4)上传nginx的版本:
tar -zxvf nginx-1.22.1.tar.gz
5)编译安装:
./configure --user=www --group=www --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/usr/local/nginx/logs/error.log --http-log-path=/usr/local/nginx/logs/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/lock/subsys/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-pcre
make && make install
6)启动nginx:
/usr/local/nginx/sbin/nginx
另外也可以参照我另外的文档,将nginx使用systemctl管理。
6)mysql的安装:
1)由于yum源上默认没有mysql-server。所以必须去官网上下载后再安装。
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
2)安装添加mysql的yum源存储库:
rpm -ivh mysql-community-release-el7-5.noarch.rpm
3)使用yum安装mysql的最新版软件:
yum install mysql-community-server -y
4)启动mysql软件,并检查下mysql的占用端口3306:
systemctl start mysqld.service
netstat -atunlp |grep mysqld
5)初始化数据库MySQL(重要):
1)初始化数据:
默认情况下,数据库没有密码,软件就是一个空壳,也没有任何数据,必须要进行初始化:
mysql_secure_installation
含义:mysql自带的初始化程序。
在这个过程中:
1)输入当前密码,直接回车;
2)给root设置密码:在测试环境,设置的密码越复杂越好,生产环境越简单越好;
3)是否移除匿名账号;必须移除;
4)是否禁止root远程登录:禁止
5)是否移除测试数据库?按y代表移除。
6)是否刷新权限?按y确认刷新;
那么,数据库的初始化数据配置就完成了。
6)把mysqld添加到开机启动中:
systemctl enable mysqld
说明:默认已经开机启动,这里可以跳过。通过systemctl status mysqld语句进行判断。
7)连接到mysql数据库:
mysql -u root -p
Enter password: 输入刚才设置的密码。就可以登录到了mysql。
那到了这一步,才说明mysql数据库真正地安装成功。
8)安装PHP:
1)安装依赖库:
yum install -y bzip2-devel libcurl-devel libxml2-devel sqlite-devel oniguruma oniguruma-devel libxml2 libxml2-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel zstd libzstd-devel curl libcurl-devel libpng libpng-devel
2)下载最新的php-8.2.3.tar.gz
wget https://www.php.net/distributions/php-8.2.3.tar.gz
tar -xzxvf php-8.2.3.tar.gz
3)编译需要加载的模块:
cd /php-8.2.3
./configure --prefix=/usr/local/php-8.2.3 --enable-fpm --with-mysqli --enable-mbstring --with-bz2 --with-curl --enable-gd --with-zip --with-zlib --with-openssl
make -j2 # 双核服务器参数配置
make install
4)设置环境变量:
#设置环境变量
touch /etc/profile.d/php.sh
chmod 777 /etc/profile.d/php.sh
echo -e '\nexport PATH=/usr/local/php-8.2.3/bin:$PATH\n' >> /etc/profile.d/php.sh
source /etc/profile.d/php.sh
5)创建配置文件,并将其复制到正确的位置。
# 在源代码目录 php-8.1.9 中下执行以下命令
cd php-8.2.3
cp php.ini-development /usr/local/php-8.2.3/lib/php.ini
cd ..
cp /usr/local/php-8.2.3/etc/php-fpm.conf.default /usr/local/php-8.2.3/etc/php-fpm.conf
cp /usr/local/php-8.2.3/etc/php-fpm.d/www.conf.default /usr/local/php-8.2.3/etc/php-fpm.d/www.conf
6)配置php-fpm服务到systemctl:
1)打开php-fpm.conf:
vim /usr/local/php-8.1.9/etc/php-fpm.conf
2)找到以下内容并修改:
; Pid file
; Note: the default prefix is/usr/local/php-8.2.3/var
; Default Value: none
pid = /var/run/php-fpm.pid
include=/usr/local/php-8.2.3/etc/php-fpm.d/*.conf
;/usr/local/php-8.2.3/etc/php-fpm.d
3)新建php-fpm服务文件:
vim /usr/lib/systemd/system/php-fpm.service
4)
[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target
[Service]
Type=forking
PIDFile=/var/run/php-fpm.pid
ExecStart=/usr/local/php-8.2.3/sbin/php-fpm
ExecReload=/bin/kill -USR2 $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
5)加载服务:
systemctl start php-fpm.service
systemctl enable php-fpm.service
systemctl status php-fpm.service
然后在这个过程中也会遇到问题:
第一个问题:使用源码安装oniguruma库
wget https://github.com/kkos/oniguruma/releases/download/v6.9.5_rev1/onig-6.9.5-rev1.tar.gz -O onig-6.9.5.tar.gz
./configure --prefix=/usr --libdir=/lib64
在使用./configure时添加‘--libdir=/lib64’参数,安装完成后重新编译PHP,如果不使用该参数则仍会报错。
第二个问题:
wget https://libzip.org/download/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"
6)php配置优化:
vim /usr/local/php-8.2.3/lib/php.ini
post_max_size=16M
max_execution_time=300
memory_limit=128M
max_input_time=300
date.timezone=Asia/Shanghai
9)配置LNMP环境:
修改Nginx的配置文件nginx.conf,添加PHP-fpm的整合配置:
把这段指令的注释去掉。
10)然后重新启动php-fpm和nginx:
systemctl restart php-fpm
systemctl restart nginx
2、编译安装Zabbix Server:
1)安装必要的依赖库和插件:
yum install -y net-snmp net-snmp-devel curl curl-devel libxml2 libevent libevent-devel
2)创建普通用户zabbix和用户组:
groupadd zabbix
useradd -g zabbix zabbix
3)下载zabbix的版本:
在官网上找到了Zabbix 6.2的版本:
然后上传和解压:
tar -zxvf zabbix-6.2.7.tar.gz
configure:
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi