本地虚拟机环境
本地虚拟机环境说明虚拟机版本系统版本1. 安装,这里最小化安装2. 关闭防火墙Centos 8 软件安装和配置1.依赖软件2. liunx 常用命令3. java环境4. mysql5. MongoDB46.RabbitMQ安装安装依赖环境Erlang安装rabbitMQ7.fastDFS安装 ([下载地址](/happyfish100/FastDFS))- 基础安装- 配置服务(方便管理每个配置一个文件夹)Nginx 模块 fastdfs-nginx-module配置Nginx安装本地虚拟机环境说明
虚拟机版本
VMware® Workstation 16 Pro 16.1.0 build-17198959
系统版本
CentOS-8.1.1911-x86_64
1. 安装,这里最小化安装
2. 关闭防火墙
##查看防火墙状态firewall-cmd --state##关闭防火墙systemctl stop firewalld.service##禁止开机启动systemctl disable firewalld.service
Centos 8 软件安装和配置
1.依赖软件
vim wget c++等其他依赖软件直接下载安装
2. liunx 常用命令
# 常用命令##刷新环境变量source /etc/profile##系统重启reboot##解压 tar.gz#生成 Makefile,为下一步的编译做准备,检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。./configure #从Makefile中读取指令,然后编译make#从Makefile中读取指令,安装到指定的位置make install#systemctl 常用命令##systemctl 开机启动相关命令 命名xxx.service 放入/etc/systemd/system/文件夹 使用##开机启动服务列表systemctl list-unit-files --type=service | grep enabled##设置开机启动的服务systemctl enable [name]##启动服务systemctl start [name]##停止服务systemctl stop [name]##重启服务systemctl restart [name]##移除开机启动项的服务systemctl disable [name]# 杀死一个服务的所有子进程systemctl kill [name]# 重新加载一个服务的配置文件systemctl reload [name]# 重载所有修改过的配置文件systemctl daemon-reload# 显示某个 Unit 的所有底层参数systemctl show [name]# 显示某个 Unit 的指定属性的值systemctl show -p CPUShares [name]# 设置某个 Unit 的指定属性systemctl set-property [name] CPUShares=500#chkconfig 命令### 在/etc/init.d 目录下## 开机启动列表chkconfig --list ## 添加开机启动chkconfig --add [name]## 删除开机启动chkconfig --del [name]## 设置开机启动chkconfig [name] on
3. java环境
安装(java version “1.8.0_281”)
略
环境变量
##java环境配置## 编辑 /etc/profile 文件 最后添加export JAVA_HOME=/opt/java/jdk1.8.0_121export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/export PATH=$PATH:$JAVA_HOME/bin## 安装状态java -version
4. mysql
安装(8.0.21 for Linux on x86_64)
略
相关命令
## 启动mysqlsystemctl start mysqld ## 加入开机启动systemctl enable --now mysqld ## 启动状态systemctl status mysqld## 配置mysql安全参数如:密码强度,远程访问等mysql_secure_installation
ps: mysql_secure_installation 执行完成后依然可以通过之前修改方法修改密码强度等参数参数名称有变化
5. MongoDB4
安装
mongodb-linux-x86_64-rhel80-4.4.4.tgz
相关配置(mongo.conf)
#日志配置systemLog:quiet: false # MongoDB试图最大程度精简日志数量,以安静模式运行,不建议生产环境打开destination: file # 日志输出的目的地,如果值是file,即文件类型,则必须指定path的值path: /usr/local/src/mongodb4.4.4/log/mongod.log # 日志的路径,该值即默认路径logAppend: true # 重启MongoDB实例时,是否在同一个文件追加日志,如果为false,则备份原有日志,同时新增日志文件verbosity: 2 # 日志的详细程度,范围0-5,默认是0,即最简单日志;最高是5,最详细日志。#数据库配置storage:dbPath: /usr/local/src/mongodb4.4.4/db # 数据存储位置,该值即默认值,可手动配置journal:enabled: true # 是否启用持久性日志存储,64位系统默认true,32位默认false##端口和网络net:port: 27017 # MongoDB监听的tcp端口,默认是27017,建议修改bindIp: 0.0.0.0 # 允许链接的IP地址,如需远程连接,应该改为对应IP,或改为0.0.0.0(::,0.0.0.0)以允许所有IPv4(IPv6)链接
启动命令
##启动命令/usr/local/src/mongodb/bin/mongod --config /usr/local/src/mongodb/bin/mongo.conf --fork
开机启动服务
$ systemctl cat mongodb.service#启动顺序与依赖关系## Description字段给出当前服务的简单描述,Documentation字段给出文档位置。## After(程序后面启动)和Before(程序前面启动)字段只涉及启动顺序,不涉及依赖关系[Unit]Description=mongodbAfter=network.target remote-fs.target nss-lookup.target#启动行为 Service区块定义如何启动当前服务。## Type字段定义启动类型。### simple(默认值):ExecStart字段启动的进程为主进程### forking:ExecStart字段将以fork()方式启动,此时父进程将会退出,子进程将成为主进程### oneshot:类似于simple,但只执行一次,Systemd 会等它执行完,才启动其他服务### dbus:类似于simple,但会等待 D-Bus 信号后启动### notify:类似于simple,启动结束后会发出通知信号,然后 Systemd 再启动其他服务### idle:类似于simple,但是要等到其他任务都执行完,才会启动该服务。一种使用场合是为让该服务的输出,不与其他服务的输出相混合## ExecStart字段:定义启动进程时执行的命令。## ExecReload字段:重启服务时执行的命令## ExecStop字段:停止服务时执行的命令## ExecStartPre字段:启动服务之前执行的命令## ExecStartPost字段:启动服务之后执行的命令## ExecStopPost字段:停止服务之后执行的命令## PrivateTmp字段:设置是否使用私有的tmp目录[Service]Type=forkingExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.confExecReload=/bin/kill -s HUP $MAINPIDExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/mongodb.confPrivateTmp=true#Install区块,定义如何安装这个配置文件,即怎样做到开机启动## WantedBy字段:表示该服务所在的 Target。## 通过multi-user.target 服务组开机启动[Install]WantedBy=multi-user.target
6.RabbitMQ安装
安装依赖环境Erlang
1.首先下载Erlang 下载地址 "/downloads/”
将下载好的源码上传到Linux服务器上
2.先安装依赖 "yum install ncurses-devel”
3.执行安装命令"./configure --prefix=/usr/local/[安装目录] --without-javac"
4.进行编译,输入命令"make" , 执行安装命令"make install"
5.进入[安装目录]/bin目录下执行“./erl”命令 查看安装状态
安装rabbitMQ
1.首先下载rabbitMQ 将下载好的源码上传到Linux服务器上 后缀名是“XZ” 先安装XZ压缩软件 解压到安装目录
2.安装相关依赖
3.启动rabbitMQ“./rabbitmq-server”
4.设置开机启动 创建服务文件
#!/bin/bash#chkconfig:2345 61 61export PATH=$PATH:/usr/local/src/erlang/binexport PATH=$PATH:/usr/local/src/rabbitmq_server-3.8.12/sbincase "$1" instart)echo "Starting RabbitMQ ..."rabbitmq-server -detached;;stop)echo "Stopping RabbitMQ ..."rabbitmqctl stop;;status)echo "Status RabbitMQ ..."rabbitmqctl status;;restart)echo "Restarting RabbitMQ ..."rabbitmqctl stoprabbitmq-server restart;;*)echo "Usage: $prog {start|stop|status|restart}";;esacexit 0
5.开机启动服务创建(systemctl命令)
[Unit]Description=rabbitmqAfter=network.target remote-fs.target nss-lookup.target[Service]Type=forkingExecStart=/usr/local/src/rabbitmq_server-3.8.12/sbin/rabbitmq startExecReload=/usr/local/src/rabbitmq_server-3.8.12/sbin/rabbitmq statusExecStop=/usr/local/src/rabbitmq_server-3.8.12/sbin/rabbitmq stopPrivateTmp=true[Install]WantedBy=multi-user.target
7.fastDFS安装 (下载地址)
- 基础安装
1、安装基础环境
yum install -y gcc gcc-c++yum -y install libevent
2、解压libfatscommon函数库
# 解压tar -zxvf libfastcommon-1.0.43.tar.gz
3、进入libfastcommon文件夹,编译并且安装
./make.sh./make.sh install
4、解压fastdfs主程序文件
# 解压tar -zxvf fastdfs-6.06.tar.gz
5、进入fastdfs目录,fastdfs主程序编译并且安装 1 ./make.sh
./make.sh install
6、将安装文件夹下的配置文件拷贝到/etc/fdfs目录下
- 配置服务(方便管理每个配置一个文件夹)
1.配置tracker服务
#复制一份配置文件cp tracker.conf.sample tracker.conf############修改配置#################tracker基础地址base_path=/usr/local/fastdfs/tracker配置 http 端口:http.server_port=80
# 相关命令##启动/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start##重启/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart##关闭/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf stop
2.配置storage服务(多个服务)
#复制一份配置文件cp storage.conf.sample storage.conf############修改配置################## 修改storage的工作空间base_path=/usr/local/fastdfs/storage# 修改storage的存储空间store_path0=/usr/local/fastdfs/storage# 修改tracker服务的地址和端口号,用于心跳tracker_server=192.168.0.11:22122
# 相关命令##启动/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start##重启/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart##关闭/usr/bin/fdfs_storaged /etc/fdfs/storage.conf stop
3.配置client 测试
#修改配置文件base_path=/usr/local/fastdfs/client #tracker的ip根据实际tracker的ip地址配置tracker_server=192.168.0.11:22122tracker_server=192.168.0.12:22122
##上传文件/usr/bin/fdfs_test 客户端配置文件地址 upload 上传文件
Nginx 模块 fastdfs-nginx-module配置
模块下载
解压文件 修改/src/config文件,主要是修改路径,把原路径/usr/local/include/修改为/usr/include/ (fastdfs默认安装fastcommon,fastdfs文件到/usr/include/)
将 FastDFS-nginx-module/src 下的 mod_FastDFS.conf 拷贝至/etc/fdfs/下
修改文件mod_FastDFS.conf#存储数据和日志文件的基本路径(store0_path存在base_path只存储日志)base_path=/usr/local/fastdfs/storage#tracker 服务地址tracker_server=192.168.200.128:22122url_have_group_name = true#如果store0_path 不存在使用base_path地址store0_path=/usr/local/fastdfs/storageps:目录不存在 注意创建
Nginx 生成 Makefile 时增加 --add-module 参数配置解压目录
Nginx安装
1、去官网下载对应的nginx包,推荐使用稳定版本
2、上传nginx到linux系统 3、安装依赖环境
##c++依赖yum install gcc-c++##安装PCRE库,用于解析正则表达式yum install -y pcre pcre-devel##zlib压缩和解压缩依赖yum install -y zlib zlib-develSSL 安全的加密的套接字协议层,用于HTTP安全传输,也就是httpsyum install -y openssl openssl-devel
3、解压nginx包并编译
解压
tar -zxvf [name]
先创建nginx临时目录,如果不创建,在启动nginx的过程中会报错
mkdir /var/temp/nginx -p
生成 Makefile
|参数|说明 | |–|--| | --prefix | 指定nginx安装目录 | | --pid-path|指向nginx的pid| | --lock-path| 锁定安装文件|
| --error-log-path| 错误日志|
| --http-log-path| http日志|
| --with-http_gzip_static_module| 启用gzip模块,在线实时压缩输出数据流 |
| --http-client-body-temp-path| 客户端请求临时目录|
| --http-proxy-temp-path| http代理临时目录 |
| --http-fastcgi-temp-path| fastcgi临时目录|
| --http-uwsgi-temp-path| uwsgi临时目录|
| --http-scgi-temp-path| scgi临时目录| | --add-module| nginx 增加模块|
## 复制注意换行./configure --prefix=/usr/local/src/nginx--pid-path=/usr/local/src/nginx/pid/nginx.pid--lock-path=/usr/local/src/nginx/lock/nginx.lock--error-log-path=/usr/local/src/nginx/log/error.log--http-log-path=/usr/local/src/nginx/log/http.log--with-http_gzip_static_module--http-client-body-temp-path=/usr/local/src/nginx/temp/client--http-proxy-temp-path=/usr/local/src/nginx/temp/proxy--http-fastcgi-temp-path=/usr/local/src/nginx/temp/fastcgi--http-uwsgi-temp-path=/usr/local/src/nginx/temp/uwsgi--http-scgi-temp-path=/usr/local/src/nginx/temp/scgi--add-module=/usr/local/src/nginx/module/fastdfs-nginx-module-1.22/src
从Makefile中读取指令,然后编译
make
从Makefile中读取指令,安装到指定的位置
make install
修改nginx.conf,添加fastdfs虚拟主机
server {listen 8888;server_name localhost;location /group1/M00 {root /usr/local/fastdfs/storage/data/;ngx_fastdfs_module;}}
常用命令
#启动./nginx#停止./nginx -s stop#重新加载./nginx -s reload