Ubuntu部署文档
   
    
    
    文档说明
   
    
     本文概述在Linux上安装Ubuntu系统,并安装相关开发环境工具,完成系统部署。
    
   
    
    
    常用指令:
   
    创建文件夹、文件:
    
     mkdir 文件夹名字 touch 文件名字.后缀
    
    
    修改文件查询权限:
    
     chmod 777 文件名字
    
    (赋予文件最高权限)
    
    查询指定端口执行情况:
    
     netstat -ap | grep 8080 或者 lsof -i:8888
    
    
    修改配置后退出文件:
    
     Esc -> : -> wq -> Enter
    
    
    
    安装软件时,遇到紫色背景除了特殊标识操作的全部Esc即可
   
    
    
    基础环境
   
    
    
    切换root用户
   
    
     sudo passwd
    
    -> 输入连接密码 -> 输入新密码 -> 输入新密码 ->
    
     su
    
    -> 输入新密码
    
     
   
    
    
    安装常用工具
   
    安装查询网络状态工具:
    
     sudo apt install net-tools
    
    安装后使用
    
     ifconfig
    
    
    
    
    1) 安装解压缩工具:
    
     sudo apt install zip unzip -y
    
    
    2) 安装RPM工具:
    
     sudo apt install rpm -y
    
    
    3) 安装wget工具:
    
     sudo apt-get install wget
    
    
    4) 安装lrzse工具:
    
     apt-get -y install lrzsz
    
    
    5) 安装rsync工具:
    
     apt-get install rsync
    
    
    
    默认系统配置修改
   
    
    
    设置时区为中国上海时区,并保证每次开机不变。
   
    查看当前服务器时间:
    
     date -R
    
    
    设置时区:
    
     timedatectl set-timezone Asia/Shanghai
    
    
    修改BIOS防止失效:
    
     sudo hwclock --systohc
    
    
    再次确认:
    
     date -R
    
    
    
    确认是否安装ssh 保证外部访问
   
    查看是否安装ssh:
    
     sudo ps -e|grep ssh
    
    (下图表示已经安装)
    
    
    
    安装ssh:
    
     sudo apt install openssh-server
    
    (若已安装,无需执行此步骤。)
   
    
    
    禁用防火墙
   
    指令:
    
     sudo ufw disable
    
    
    确认:
    
     ufw status
    
    
    
    更新软件
   
    更新软件列表:
    
     sudo apt update
    
    
    
    修改最大文件访问语句柄数量
   
    查询当前数量:
    
     ulimit -n
    
    
    修改:
    
     ulimit -n 65535 >>/etc/profile
    
    
    刷新资源:
    
     source /etc/profile
    
    
    再次查看:
    
     ulimit -n
    
    
    
    开发环境
   
    
    
    JDK安装
   
    
    
    安装前检查
   
    1) 查询是否存在jdk:
    
     sudo update-alternatives --config java
    
    
    2) jdk卸载,可根据实际情况卸载具体版本jdk:
    
     sudo apt-get --purge remove openjdk-11-jdk
    
    
    
    jdk11安装
   
    1) 更新数据源:
    
     sudo apt update
    
    
    2) 查看jdk版本:
    
     sudo apt-cache search jdk
    
    
    3) 安装11:
    
     sudo apt install -y openjdk-11-jdk
    
    
    4) 成功后检查:
    
     java -version
    
    
    
    jdk8安装
   
    1) 安装8:sudo apt install -y openjdk-8-jdk
    
    2) 安装成功后的目录在:/usr/lib/jvm/java-8-openjdk-amd64/
   
    
    
    MySql
   
    
    
    安装
   
    安装deb包:wget https://repo.mysql.com//mysql-apt-config_0.8.24-1_all.deb
    
    配置deb:sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb(如下图所示)
    
    
    
    更新数据源:sudo apt update
    
    安装指令:sudo apt install mysql-server -y
    
    安装完毕后设置root密码:*******
    
    
    
    然后回车选择强密码即可
    
    查看状态:systemctl status mysql
   
    
    
    设置mysql开机自启动
   
systemctl enable mysql 
systemctl daemon-reload
    
    
    用户信息修改
   
修改root密码:
sudo mysql
mysql>use mysql;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '*******';
mysql>flush privileges;
mysql>exit;
    Root登录:
    
     mysql -uroot -pHZ@hz300371
    
创建数据库:
CREATE DATABASE `test` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
创建用户:
CREATE USER 'test'@'%' IDENTIFIED BY '*******';
用户授权:
GRANT ALL PRIVILEGES ON *.* TO 'hz'@'%' WITH GRANT OPTION;
mysql>flush privileges;
    利用外网ip和端口既可通过外部Navicat访问连接。进行标准库语句执行等操作。
    
    执行语句前需要开发函数权限:
    
     set global log_bin_trust_function_creators=1;
    
    
    
    Redis
   
    
    
    安装
   
添加ppa源:sudo add-apt-repository ppa:redislabs/redis  -》enter
更新数据源:sudo apt-get update
安装指令:sudo apt install redis-server -y
查看是否成功:systemctl status redis-server
    
    
    修改配置
   
vim /etc/redis/redis.conf 
    设置初始密码:加上requirepass设置,设定自己的密码,并注释127.0.0.1
    
    
    
    重启redis:
    
     service redis-server restart
    
    
    开机自启:
    
     systemctl enable redis-server
    
    
    卸载Redis:
    
     sudo apt-get autoremove --purge redis-server -y
    
    
    
    Nginx
   
    
    
    安装
   
安装指令:sudo apt install nginx -y
调整防火墙(禁用时可不设置):sudo ufw app list
sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'
sudo ufw allow 'Nginx Full'
查看防火墙:sudo ufw status
检查web服务:systemctl status nginx
    
    
    配置
   
    编辑nginx.conf:
    
     vim /etc/nginx/nginx.conf
    
    
    
    
    在此文件的http{}内部填写以下指令(若以前有不需要重复填写)
   
gzip on;
gzip_min_length 1k;
gzip_comp_level 5;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    
    
    保存nginx.conf,修改下一个文件
    
     vim /etc/nginx/sites-available/default
    
    
    替换此文件内部的server部分,这个地方要配置自己的nginx端口映射。具体就要大家自己去处理了
    
    修改完成后进行测试:
    
     nginx -t
    
    
     
   
重新加载配置文件:nginx -s reload
杀死进程:killall nginx
重启nginx : nginx 
没有输出任何内容表示成功。
若出现invalid PID number 问题 通过手动指定配置文件 然后重新加载配置文件。
nginx -c /etc/nginx/nginx.conf
验证是否成功:ps -ef|grep nginx
     
   
    
    
    RabbitMq
   
    
    
    安装(手动安装)
   
安装需要的软件包:sudo apt-get install wget apt-transport-https -y
添加秘钥:
curl -1sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg > /dev/null
添加Erlang PPA:
curl -1sLf "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xf77f1eda57ebb1cc" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/net.launchpad.ppa.rabbitmq.erlang.gpg > /dev/null
添加rabbitmq仓库: 
curl -1sLf "https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/io.packagecloud.rabbitmq.gpg > /dev/null
安装erlang包:
sudo apt-get install -y erlang-base \
erlang-asn1 erlang-crypto erlang-eldap erlang-ftp erlang-inets \
erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key \
erlang-runtime-tools erlang-snmp erlang-ssl \
erlang-syntax-tools erlang-tftp erlang-tools erlang-xmerl
安装rabbitmq:sudo apt-get install rabbitmq-server -y --fix-missing
启用HTTPS传输:sudo apt-get install apt-transport-https
查看rabbitmq状态:sudo systemctl status rabbitmq-server
退出:Ctrl+Z
启用web服务(管理插件):sudo rabbitmq-plugins enable rabbitmq_management
设置网页管理员用户:sudo rabbitmqctl add_user root huizhong
给管理员用户分配权限:sudo rabbitmqctl set_user_tags root administrator
    
    
    修改日志配置
   
创建存储目录:
mkdir -p /mnt/rabbitmq/mnesia
mkdir -p /mnt/rabbitmq/log
chmod -R 755 /mnt/rabbitmq
chown -R rabbitmq:rabbitmq /mnt/rabbitmq
    创建配置文件并将目录地址写入配置文件
    
     vim /etc/rabbitmq/rabbitmq-env.conf
    
    
    
     RABBITMQ_MNESIA_BASE=/mnt/rabbitmq/mnesia
     
     RABBITMQ_LOG_BASE=/mnt/rabbitmq/log
    
    
     
   
重启rabbitMq:systemctl restart rabbitmq-server.service
启动插件页面管理:rabbitmq-plugins enable rabbitmq_management 
创建用户并授权:rabbitmqctl add_user root huizhong
创建用户:rabbitmqctl set_user_tags root administrator
赋予权限:rabbitmqctl set_permissions -p / root ".*" ".*" ".*" 
    
    
    部署系统
   
    
    
    项目文件说明
   
这个地方把自己项目的包拿下来,然后放到对应的目录,然后用上面下载的unzip工具进行解压。
    
    
    修改配置并启动
   
    确认自己的一些配置是否正确,上面的数据库,密码,Redis 队列的日志路径是否正确。都正确只需要给自己项目的启动文件赋予权限。然后./ 启动即可
    
    进入到对应目录
   
chmod u+x start_service.sh
chmod u+x shutdown_service.sh
./start_service.sh
    
    
    Web服务
   
    
    
    采集程序
   
    
    
    分析程序
   
    
    
    程序自启动
   
进入配置文件:crontab -e
首次进入会提示没有这个东西,输入:select-editor
然后ctrl+Z
再次进入配置文件将下面内容加入到配置文件中:crontab -e
    将配置指令加入到文件中
    
    
    
    然后按Ctrl+X进行保存。然后选择 Y 然后Enter即可
    
    修改后重启配置文件:
    
     systemctl restart cron
    
    
    最后重启服务器 reboot
   
 
