4.1 创建yum服务端
在192.168.1.1部署安装yum本地源
创建挂载目录
mkdir /mnt/cdrom
sftp上传CentOS-7-x86_64-DVD-2009.iso文件到/data/install-page目录
挂载ISO文件到/mmt/cdrom目录
mount -t iso9660 CentOS-7-x86_64-DVD-2009.iso /mnt/cdrom
备份原yum配置文件
cd /etc/yum.repo/
mkdir yum-backup
mv * yum-backup
创建yum配置文件
vi myiso.repo
[c7-media]
name=CentOS-$releasever - Media
#这里的IP根据现场的yum源决定
#baseurl=http://192.168.1.1/yum
baseurl=file:///mnt/cdrom
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
用wq保存退出
清除yum缓存并创建新缓存
yum clean all
yum makecache
测试yum源
yum list
配置http访问yum服务端文件
cd /data/nginx/conf.d/
vi web.conf
location /yum {
alias /mnt/cdrom/;
index index.html index.php index.htm;
proxy_cache_valid 200 304 12h;
proxy_cache_valid any 20m;
proxy_connect_timeout 60;
proxy_read_timeout 60;
proxy_send_timeout 50;
proxy_buffer_size 32k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
}
用wq保存退出
4.2、部署JDK
远程连接服务器192.168.1.2/4/5/6安装部署JDK
创建下载目录
mkdir /data/install-page
cd /data/install-page
下载JDK
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" Unauthorized Request Java Downloads | Oracle
解压JDK
tar zxvf jdk-8u321-linux-x64.tar.tar.gz
移动JDK并重命名为JAVA
mv jdk1.8.0_32 /u01/data/java
配置JAVA系统环境变量
vim /etc/profile
#JAVA
JAVA_HOME=/u01/data/java/
JRE_HOME=/u01/data/java/jre
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$JAVA_HOME/bin:$PATH
export PATH JAVA_HOME CLASSPATH
source /etc/profile
验证JAVA是否安装成功
java -version
正在上传…重新上传取消
4.3、Nginx部署
远程连接服务器192.168.1.1部署安装nginx
创建Nginx安装目录
mkdir /data/nginx
创建Nginx日志目录
mkdir -p /data/nginx/logs/
创建nginx缓存目录
mkdir -p /data/nginx/temp
创建web目录
mkdir /data/nanhu-web/
创建run目录
mkdir -p /data/nginx/run
进入安装包目录
cd /data/install-page/
下载nginx1.9.9
wget http://nginx.org/download/nginx-1.9.9.tar.gz
下载成功后在/data/install下会出现nginx-1.16.1.tar.gz的源码包
正在上传…重新上传取消
使用yum工具nginx所需的安装依赖包
yum -y install pcre pcre-devel openssl openssl-devel gcc gcc-c++ autoconf automake zlib-devel libxml2 libxml2-dev libxslt-devel gd-devel perl-devel perl-ExtUtils-Embed GeoIP GeoIP-devel GeoIP-data make GeoIP-devel GeoIP-update
创建nginx用户
useradd nginx
解压nginx
tar zvxf nginx-1.9.9.tar.gz
解压完成后进入nginx安装目录
cd nginx-1.9.9
开始编译nginx,以下是编译时所用的参数
./configure --prefix=/data/nginx --error-log-path=/data/nginx/logs/error.log --http-log-path=/data/nginx/logs/access.log --pid-path=/data/nginx/run/nginx.pid --lock-path=/data/nginx/run/nginx.lock --http-client-body-temp-path=/data/nginx/temp/client_temp --http-proxy-temp-path=/data/nginx/temp/proxy_temp --http-fastcgi-temp-path=/data/nginx/temp/fastcgi_temp --http-uwsgi-temp-path=/data/nginx/temp/uwsgi_temp --http-scgi-temp-path=/data/nginx/temp/scgi_temp --user=nginx --group=nginx --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
编译完成后开始安装nginx
make
make install
创建nginx启动文件
vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/data/nginx/sbin/nginx
ExecReload=/data/nginx/sbin/nginx -s reload
ExecStop=/data/nginx/sbin/nginx -s stop
[Install]
WantedBy=multi-user.target
用wq保存退出
创建nginx启动文件赋权nginx.service赋755权限
chmod 755 /lib/systemd/system/nginx.service
设置nginx开机启动
systemctl daemon-reload
systemctl start nginx
systemctl enable nginx
创建nginx配置文件目录及WEB目录
mkdir /data/nginx/conf.d
mkdir /data/nginx/web
修改nginx配置文件
user nginx;
worker_processes 2;
error_log /data/nginx/logs/error.log warn;
pid /data/nginx/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /data/nginx/conf/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /data/nginx/logs/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
client_max_body_size 300m;
gzip on;
gzip_min_length 8k;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_comp_level 3;
gzip_vary on;
gzip_static on;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/javascript application/x-httpd-php image/jpeg image/jpg image/gif image/png;
include /data/nginx/conf.d/*.conf;
}
添加虚拟主机
cd /data/nginx/conf.d
vim web.conf
server {
listen 80;
server_name localhost;
charset utf-8;
access_log /data/nginx/logs/web.access.log;
#ssl_certificate /data/nginx/ssl/SSLname.pem;
#ssl_certificate_key /data/nginx/ssl/SSLname.key;
#ssl_session_cache shared:SSL:1m;
#ssl_session_timeout 5m;
#ssl_ciphers HIGH:!aNULL:!MD5;
#ssl_prefer_server_ciphers on;
location / {
alias /data/nginx/web/dist/;
index index.html index.php index.htm;
proxy_cache_valid 200 304 12h;
proxy_cache_valid any 20m;
proxy_connect_timeout 60;
proxy_read_timeout 60;
proxy_send_timeout 50;
proxy_buffer_size 32k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
wp保存退出
重新加载nginx
systemctl reload nginx.server
检查nginx的状态
Systemctl status nginx.server
4.4、Nacos部署
远程连接服务器192.168.1.4安装部署nacos
cd /u01/data/install-page
tar -zxvf nacos-server-2.0.4.tar.gz -C /u01/data
cd /u01/data/nacos
导入nacos基础数据
scp /u01/data/nacos/conf/ nacos-mysql.sql root@10.23.14.5:/u01/data/install-page
输入10.23.14.5服务器root密码
连接数据库服务器10.23.14.5
mysql -uroot -p
Root123456!
creata database nacos
source /u01/data/install-page/nacos-mysql.sql
select tables;
返回nacos服务器
修改nacos配置文件application.properties
vim /u01/data/nacos/conf/ application.properties
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=Root123456!
wq保存退出
nacos启动脚本增加JAVA变量
vim /u01/data/nacos/bin/startup.sh
在首行添加
export JAVA_HOME=/u01/data/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PAT
启动测试nacos
cd /u01/data/nacos
./bin/startup.sh
创建nacos启动文件
touch /lib/systemd/system/nacos.service
echo '[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/u01/data/nacos/bin/startup.sh -m standalone
ExecStop=/u01/data/nacos/bin/shutdown.sh
[Install]
WantedBy=multi-user.target' > /lib/systemd/system/nacos.service
chmod 755 /lib/systemd/system/nacos.service
加载启动文件
systemctl daemon-reload
设置开机自启
systemctl enable nacos.service
杀死nacso进程用命令启动nacos
ps -aux |grep nacos
kill -9 nacos进程ID
systemctl start nacos.sesrver
查看状态
systemctl status nacos.service
4.5、Kafka部署
远程连接服务器192.168.1.4安装部署kafka
cd /u01/data/install-page/
解压KAFKA
tar -zxvf kafka_2.13-3.1.0.tgz
mv kafka_2.13-3.1.0 /u01/data/kafka
修改端口指定日志目录
vim /u01/data/kafka/config/server.properties
port=9092
host.name=192.168.1.4
log.dirs=/u01/data/kafka/logs
创建kakfa启动文件,并配置开机自启
touch /lib/systemd/system/kafka.service
chmod 755 /lib/systemd/system/kafka.service
vim /lib/systemd/system/kafka
[Unit]
Description=Apache Kafka server (broker)
After=network.target zookeeper.service
[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/u01/data/java/bin"
User=root
Group=root
ExecStart=/u01/data/kafka/bin/kafka-server-start.sh /u01/data/kafka/config/server.properties
ExecStop=/u01/data/kafka/bin/kafka-server-stop.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable kafka
systemctl start kafka
systemctl status kafka
解压Zookeeper
tar zvxf zookeeper-3.4.12.tar.gz
mv zookeeper-3.4.12 /u01/data/zookerper
vim /u01/data/kafka/config/zookeeper.properties
dataDir=/u01/data/kafka#zookeeper
dataLogDir=/u01/data/kafka/logs#zookeeper
创建kakfa启动文件,并配置开机自启
touch /lib/systemd/system/zookeeper.service
chmod 755 /lib/systemd/system/zookeeper.service
vim /lib/systemd/system/zookeeper.service
[Unit]
Description=Zookeeper service
After=network.target
[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/u01/data/java/bin"
User=root
Group=root
ExecStart=/u01/data/kafka/bin/zookeeper-server-start.sh /u01/data/kafka/config/zookeeper.properties
ExecStop=/u01/data/kafka/bin/zookeeper-server-stop.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable zookeeper
systemctl start zookeeper
systemctl status zookeeper
4.6、Redis部署
远程连接服务器192.168.1.4安装部署redis
cd /data/install-page
tar -zvxf redis-6.2.6.tar.gz -C /u01/data
cd /u01/data/ redis-6.2.6
make
创建存储redis文件目录
mkdir -p /u01/data/redis
将server与cli迁至存储文件目录
cp /u01/data/redis-4.0.2/src/redis-server /u01/data/redis/
cp /u01/data/redis-4.0.2/src/redis-cli /u01/data/redis/
将配置文件迁到存储目录
cp /u01/data/redis-4.0.2/redis.conf /u01/data/redis/
vim /u01/data/redis/redis.conf
在bind 127.0.0.1前加“#”将其注释掉
默认为保护模式,把 protected-mode yes 改为 protected-mode no
默认为不守护进程模式,把daemonize no 改为daemonize yes
将 requirepass foobared前的“#”去掉,密码改为Root123456!
配置redis-server服务启动文件
vim /lib/systemd/system/redis-server.service
[Service]
ExecStart=/u01/data/redis/redis-server /u01/data/redis/redis.conf --daemonize no
ExecStop=/u01/data/redis/redis-cli -p 6379 shutdown
Restart=always
[Install]
WantedBy=multi-user.target
保存退出
chmod 755 /lib/systemd/system/redis-server.service
systemctl daemon-reload
systemctl start redis-server.service
systemctl status redis-server.service
systemctl enable redis-server.service
4.7、Mysql部署
远程连接服务器192.168.1.5安装部署mysql
创建MySQL账号
useradd -M -s /sbin/nologin mysql
进入安装包目录
cd /data/install-page
解压mysql8.0
tar zxvf mysql-8.0.28-el7-x86_64.tar.gz
mv mysql-8.0.28-el7-x86_64/ /u01/data/mysql/
安装依赖包libaio
yum -y install libaio
创建MySQL数据目录、日志目录、错误日志文件、运行目录
mkdir /data/mysql/mysqldata
mkdir /data/mysql/logs
touch /data/mysql/logs/error.log
mkdir /data/mysql/run
修改mysql配置文件
vim /etc/my.cnf
[mysqld]
datadir=/data/mysql/mysqldata
port=3306
log-error=/data/mysql/logs/error.log
long_query_time=2
symbolic-links=0
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
default-time_zone = '+8:00'
character-set-server=utf8
max_connections = 500
sort_buffer_size = 16M
open_files_limit = 1024
innodb_buffer_pool_size = 128M
innodb_buffer_pool_instances = 4
innodb_buffer_pool_load_at_startup = 1
innodb_flush_log_at_trx_commit = 2
innodb_file_per_table = ON
innodb_log_buffer_size = 8M
innodb_log_file_size = 256M
innodb_flush_method=O_DIRECT
skip_name_resolve
max_allowed_packet = 500M
wait_timeout = 600
interactive_timeout = 300
[client]
default-character-set=utf8
wq保存退出
MySQL目录赋权
cd /u01/data
chown -R mysql:root mysql
初始化数据库
./mysqld --initialize --user=mysql --basedir=/u01/data/mysql --datadir=/u01/data/mysql/mysqldata
创建mysql启动文件,并配置开机自启
vim /usr/lib/systemd/system/mysql.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/u01/data/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
#Restart=on-failure
#RestartPreventExitStatus=1
#PrivateTmp=false
wq保存退出
chmod 755 /usr/lib/systemd/system/mysql.service
systemctl daemon-reload
systemctl start mysql
systemctl enable mysql
配置MySQL系统环境变量
vim /etc/profile
#ES
#MYSQL
export ES_HOME=/u01/data/mysql
export PATH=$ES_HOME/bin:$PATH
source /etc/profile
查看MySQL初始密码
cat /u01/data/mysql/logs/error.log
tYgjL+4!fq?3
正在上传…重新上传取消
修改mysql的root密码,并创建远程连接账号和密码及赋权。
进入mysql
mysql -u root -p
alter user 'root'@'localhost' identified by 'Root123456';
create user 'root'@'%' identified by 'Root123456!';
grant all privileges on *.* to root@'%' with grant option;
flush privileges;
4.8、kkFileView部署
远程连接服务器192.168.1.4安装部署kkFileView
安装KKFileView时,LibreOffice包可能会无法正常下载,所以提前下载好,放在安装目录下面,并改名
cd /u01/data/install-page
mv LibreOffice_7.1.4_Linux_x86-64_rpm.tar.gz LibreOffice_7_rpm.tar.gz
解压KKFileView包
tar zvxf kkFileView-4.0.0.tar.gz
mv kkFileView-4.0.0 /u01/data/kkFileview
创建KKFileView启动文件,并设置开机自启
touch /lib/systemd/system/KKFileView.service
chmod 755 /lib/systemd/system/KKFileView.service
vim /lib/systemd/system/KKFileView.service
[Unit]
Description=kkFileView server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/u01/data/java/bin"
User=root
Group=root
ExecStart=/u01/data/kkFileview/bin/startup.sh
ExecStop=/u01/data/kkFileview/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
wq保存退出
systemctl daemon-reload
systemctl enable KKFileView.service
systemctl status KKFileView.service
修改安装文件
cd /u01/data/kkFileview/bin
vim install.sh
注释掉两条wget的行
# wget https://kkfileview.keking.cn/LibreOffice_7.1.4_Linux_x86-64_rpm.tar.gz -cO LibreOffice_7_rpm.tar.gz && tar -zxf /tmp/LibreOffice_7_rpm.tar.gz && cd /tmp/LibreOffice_7.1.4.2_Linux_x86-64_rpm/RPMS
# wget https://kkfileview.keking.cn/LibreOffice_7.1.4_Linux_x86-64_deb.tar.gz -cO LibreOffice_7_deb.gz && tar -zxf /tmp/LibreOffice_7_deb.tar.gz && cd /tmp/LibreOffice_7.1.4.2_Linux_x86-deb/RPMS
正在上传…重新上传取消
解压LibreOffice
cd /tmp
tar zxvf LibreOffice_7_rpm.tar.gz
cd LibreOffice_7
cd LibreOffice_7.1.4.2_Linux_x86-64_rpm/install/RPMS
rpm -ivh *.rpm
测试soffice是否正常
cd /opt/libreoffice7.1/program
./soffice -headless -accept="socket,host=127.0.0.1,port=8100:urp;" -nofirststartwizard &
ps -aux |grep soffice
正在上传…重新上传取消
执行启动文件
./startup.sh
ps -aux |grep kk
正在上传…重新上传取消
杀死进程,使用命令启动
systemctl start KKFileView.service
4.9、Minio部署
远程连接服务器192.168.1.6安装部署Minio
yum install -y unzip vim
解压Minio
cd /u01/data/install-page
unzip minio.zip
mv minio /u01/data/
cd /u01/data/minio/bin
chmod 755 *.sh
创建minio 数据目录
mkdir /u01/data/minio/data
测试MINIO
./startup.sh -m standalone
./start.sh -m standalone
./minio server /u01/data/minio/data
./minio server /u01/data/minio/data
创建Minio启动文件,并配置开机自启
touch /lib/systemd/system/minio.service
[Unit]
Description=minio server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/u01/data/minio/bin/start.sh
ExecStop=/u01/data/minio/bin/stop.sh
[Install]
WantedBy=multi-user.target
wq保存退出
chmod 755 /lib/systemd/system/minio.service
systemctl daemon-reload
systemctl start minio
systemctl enable minio
systemctl status minio



