Linux系统一站式部署
# 1. 准备工作
# 1.1 本机安装 Xshell 远程连接工具
参考
https://blog.csdn.net/qq_42455308/article/details/105528162
# 1.2 本机安装Navicat数据库工具
参考
https://www.cnblogs.com/sunyllove/p/9776373.html
# 1.3 Linux 常用命令指南
# 1.3.1 磁盘管理
fdisk -l 查询磁盘空间
fdisk /dev/vdb 磁盘分区,/dev/vdb为磁盘名
磁盘分区及格式化教程:https://jingyan.baidu.com/article/7e4409531f27292fc0e2ef39.html
mount /dev/vdb /xxzx 挂载分区,/dev/vdb为磁盘名,/xxzx为挂载目录
https://www.cnblogs.com/hester/p/12385990.html
注意mount命令为临时挂载,重启后会失效,要修改配置文件/etc/fstab添加系统启动挂载点。
df -h 查看分区与挂载点详情
lsblk 查看设备挂载情况
注意:当存在多硬盘设备管理时,建议将多个磁盘设备(物理卷PV)组成逻辑卷组(VG),再将VG分割成多个逻辑卷(LV),这样方便VG、LV进行扩展容量和收缩容量。
参考:https://www.cnblogs.com/chengxuyonghu/p/13652547.html?ivk_sa=1024320u
# 1.3.2 目录切换cd 命令
cd / 切到根目录
cd /usr 切换到根目录下的usr目录
cd ../ 切换到上一级目录 或者 cd ..
cd ~ 切换到home目录
cd - 切换到上次访问的目录
# 1.3.3 目录查看
ls 查看当前目录下的所有目录和文件
ls -a 查看当前目录下的所有目录和文件(包括隐藏的文件)
ls -l 或 ll 列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)
ls /dir 查看指定目录下的所有目录和文件 如:ls /usr
du -sh 查看当前目录空间大小
df -hl 查看磁盘剩余空间
df -h 查看每个根路径的分区大小
# 1.3.4 目录操作
新建目录:mkdir aaa 在当前目录下创建一个名为aaa的目录
删除目录:rm -r aaa 递归删除当前目录下的aaa目录
删除文件:rm 文件 删除当前目录下的文件
删除当前目录下所有文件夹和文件:rm -rf 目录名字
重命名目录或文件:mv aaa bbb 将目录aaa改为bbb
剪切目录或文件:mv /usr/tmp/aaa /usr 将/usr/tmp目录下的aaa目录剪切到 /usr目录下面。
# 1.3.5 文件操作
新建文件:touch 文件名
打开文件:vi 文件名
打开文件编辑模式:i (打开文件后)
退出文件编辑模式:ESC健
退出文件:【1】强制退出(不保存):【:q!】
【2】保存后退出:【:wq】
退出文件之前,要先退出文件编辑模式
# 1.3.6 文件上传与解压
1.安装用于上传和下载文件的rzrs工具
执行命令:yum -y install lrzsz
上传文件和文件压缩包:rz -be
下载文件和文件压缩包:sz 文件名
2.文件解压
(1).tar.gz文件
tar -zxvf filename.tar.gz
(2).zip文件
解压:unzip -q filename.zip
压缩:zip filename.zip dirnam
# 1.3.7 进程查看与强杀
查看进程:ps -ef | grep xxx
干掉进程:kill -9 1234
# 1.3.8 服务器防火墙操作
1.查看防火墙状态
systemctl status firewalld.service
2.关闭防火墙
systemctl stop firewalld.service
3.永久关闭防火墙
systemctl disable firewalld.service
# 1.4 基础环境安装
1. 安装中文字体
https://blog.csdn.net/weixin_45029526/article/details/103686127
2. 安装unzip
3. 安装 unrar
# 2. 部署中间件
# 2.1 安装jdk
1.切换至usr目录下,输入rz指令上传JDK压缩包
[root@localhost /]# cd usr
[root@localhost usr]# rz
2.解压JDK压缩包
输入命令:tar -zxvf jdk-8u261-linux-x64.tar.gz
3.修改配置文件
输入指令打开配置文件:vi /etc/profile
输入i切换为insert状态
添加下面的配置:
export JAVA_HOME=/usr/jdk1.8.0_261 (注意jdk的存放路径和文件名)
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
4.退出配置文件并保持
按ESC健退出编辑状态,执行【:wq】命令保存并退出配置文件。
5.运行配置文件
输入指令:source /etc/profile
6.查看jdk是否安装成功
输入命令:java -version
# 2.2 安装nacos
1.上传安装包,并解压
2.进入到bin目录
cd nacos/bin
3.启动项目
sh startup.sh -m standalone
4.验证是否启动成功
浏览器访问 IP:8848/nacos 用户名/密码 nacos/naocs
5.登录nacos,新建命名空间,输入命名空间名sds。
6.进入配置列表,切换到新建的命名空间,注意命名空间的namespace。
7.开机自启动nacos。
https://all_jun.gitee.io/blog/2020/08/29/CentOS%E8%AE%BE%E7%BD%AEnacos%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF/
# 2.3 安装PGSQL
1.在线安装pg数据库:
yum install postgresql-server postgresql-contrib -y
离线安装pgsql_10.3:
https://www.jianshu.com/p/f1ae82881d69
https://blog.csdn.net/weixin_42657158/article/details/99001137
2.数据库初始化:postgresql-setup initdb
3.开启启动:systemctl enable postgresql
systemctl start postgresql
4.修改配置文件
vi /var/lib/pgsql/data/postgresql.conf
listen_addresses ='localhost' localhost 修改为服务器ip;并删除port = 5432前的 # 。
vi /var/lib/pgsql/data/pg_hba.conf
添加一行:host all all 0.0.0.0/0 md5
5.连接数据库
(1)su - postgres
(2)psql
(3)创建一个root新用户
create user root with password '123456';
(4)给root用户分配数据库权限
alter role root with Superuser;
alter role root with CreateRole;
alter role root with CreateDB;
alter role root with Replication;
(5)删除数据库用户: drop user root;
(6)创建和删除数据库
查看数据库列表: \l (list的意思)
创建数据库: create database db1;
删除数据库: drop database db1;
# 2.4 安装ES
1.创建用户
(1)创建用户组:创建esgroup用户组 groupadd esgroup
(2)创建用户es并指定用户组为esgroup:useradd -g esgroup es
(3)设置新用户密码:passwd es
(4)设置sudo权限:visudo
找到root ALL=(ALL) ALL一行,添加es用户
(5)切换用户:su es
(6)退出用户:exit
2.上传安装文件,并修改权限
(1)切换到es用户,在cd /home/es目录下,上传安装包并解压: tar -zxvf elasticsearch-6.6.2.tar.gz
(2)将解压后的文件转移到esopt目录下:sudo mv elasticsearch-6.6.2 /esopt/
(3)修改目录权限:sudo chown -R es:esgroup /esopt
chown es:esgroup /esopt/elasticsearch-6.6.2 -R
(4)查看esopt目录下各文件归属
3.ElasticSearch 配置修改
(1)修改elasticsearch.yml:
vi /esopt/elasticsearch-6.6.2/config/elasticsearch.yml
修改或添加以下配置:
network.host: 10.14.1.136
http.port: 9200
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
(2)修改线程数threads
vi /etc/security/limits.d/20-nproc.conf
注意:20可能因系统版本不同而不同。
* soft nproc 1024 修改为 * soft nproc 2048
如果文件中的值大于2048,则不用修改。
(3)切换到root用户下,修改/etc/sysctl.conf文件配置:
vi /etc/sysctl.conf
添加内容:vm.max_map_count=2621441
用命令sysctl -p 生效
(4)root用户下修改文件/etc/security/limits.conf
vi /etc/security/limits.conf
添加如下内容:
* hard nofile 65536
* soft nofile 65536
* soft nproc 4096
* hard nproc 4096
添加分词插件
切换到es用户,切换到elasticsearch-6.6.2目录下,删除plugins目录,然后上传分词插件安装包:es-pliginx.tar.gz,再解压即可。
rm -rf plugins
tar -zxvf es-pliginx.tar.gz
4.ES的启动与停止
(1)直接启动:在es用户的elasticsearch-6.6.2下执行: bin/elasticsearch
(2)停止:Ctrl+c
(3)后台运行:bin/elasticsearch -d
(4)看进程:jps
5.验证
curl http://ip:9200 IP为服务器ip
6.遇到问题与解决方案
(1)找不到java
解决方案:
vi /home/es/esopt/elasticsearch-6.6.2/config/elasticsearch.yml
添加:JAVA_HOME=/usr/local/java (JAVA_HOME可以参考安装jdk时的路径)
(2)当前系统不支持X-Pack特性
解决方案:在elasticsearch.yml配置文件中添加:
xpack.ml.enabled: false
# 2.5 安装Kafka
1.上传安装包,并解压
2.修改配置文件
3. server.properties
打e置文件:vi kafka_2.11-2.3.1/config/server.properties
添加命令:listeners=PLAINTEXT://10.14.2.212:9092 把IP改为自己服务器的IP
4.启动
进入bin目录:cd /kafka_2.11-2.3.1/bin
启动:
./zookeeper-server-start.sh -daemon ../config/zookeeper.properties
./kafka-server-start.sh -daemon ../config/server.properties
5.验证 ps -ef |grep kafka ,正常会有两个线程
6.国产麒麟服务器在启动阶段遇到问题:
解决方法:vi /kafka_2.11-2.3.1/bin/kafka-run-class.sh,找到下面语句:
KAFKA_JVM_PERFORMANCE_OPTS="-server -XX:+UseG1GC -XX:MaxGCPauseMillis=20
直接删掉 -XX:+UseG1GC后重启 。
7.定时启动(防kafka挂掉)
(1)执行crontab -e命令
(2)添加以下语句(文件路径根据具体情况更改):
*/1 * * * * . /etc/profile; sh /kafka_2.11-2.3.1/bin/kafka-server-start.sh -daemon /kafka_2.11-2.3.1/config/server.properties >> /kafka_2.11-2.3.1/logs/log.out 2>&1
(3)退出并保存::wq
# 2.6 安装redis
参考资料:https://www.cnblogs.com/monjeo/p/7568785.html
1.在服务器/usr/local目录下上传安装包
cd /usr/local
tar -zxvf redis-5.0.7.tar.gz
2.安装gcc
查看gcc版本:gcc -v(如已安装则不需要执行下一步安装命令)
安装命令:yum install gcc
升级为9.1版本:
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
离线安装gcc9.1(可能会报缺少依赖包的提示):https://blog.csdn.net/wanglin199709/article/details/94553903
下载4个依赖包:
ftp://gcc.gnu.org/pub/gcc/infrastructure/
3.安装redis
cd redis-5.0.7
make
cd src
make install PREFIX=/usr/local/redis
安装成功会出现:Hint: It's a good idea to run 'make test'
执行 make test 进行测试
Linux安装Redis后,make test出现You need tcl 8.5 or newer in order to run the Redis test”问题
https://blog.csdn.net/hussci/article/details/103340422
4.修改redis.conf 文件 ,修改这四个配置,
redis.conf文件在redis-5.0.7目录下:
vi编辑器使用/:向后搜索;?:向前搜索n:查找下一处;N:查找上一处。进行内容查找定位。
daemonize yes #修改redis为后台运行
启动
cd /usr/local/redis/bin
./redis-server /usr/local/redis-5.0.7/redis.conf
redis常用命令
1、查看redis是否在运行: ps aux | grep redis 或 netstat -lntp
2、启动redis: redis-server /etc/redis.conf
3、关闭redis: /usr/b in/redis-cli shutdown
4、当设置密码后,上面的关闭命令无效:
带密码输入: redis-cli -a [password] 回车后输入:shutdown
即可关闭redis,输入exit 退出。
如果上面都无法关闭,直接使用 kill -9 进程号 来关闭。
查看redis密码;可查看 redis 安装根目录下的配置文件:redis-conf 中SECURITY下面的 requirepass 后面的内容。
redis远程访问:./redis-cli -h 100.64.16.13 -p 6379
# 2.7 安装SeaTa
1.上传安装包,并解压
tar -zxvf seata.tar.gz
2.修改配置文件registry.conf和file.confg
修改配置参考资料:https://blog.csdn.net/qq853632587/article/details/111644295
vi registry.conf 修改nacos中的serverAddr和namespace
username和password为空。
注意nacos配置项内容是否有重复项,否则会无法添加到nacos。
vi file.conf 根据当前环境的数据库配置,修改图中配置。
PGSQL配置:
3.启动seata
进入bin目录cd ../bin
后台启动seata:nohup ./seata-server.sh &。
启动成功后,在nacos的服务列表中可以看到seata服务。
# 2.8 安装nginx
1.安装插件
(1)yum install -y pcre pcre-devel
(2)yum install -y zlib zlib-devel
(3)yum install -y openssl openssl-devel
2.安装nginx
(1)上传并解压文件:tar -zxvf nginx-1.16.1.tar.gz
(2)安装nginx:
cd nginx-1.16.1
./configure
make
make install
(3)修改nginx配置
cd /usr/local/nginx/conf/
修改nginx.conf文件的ip,可以下载其他项目的配置文件,把其他项目配置文件的ip改成自己服务器的ip,然后再上传到该目录下。记得先删除原配置文件再上传。
3.启动nginx
cd /usr/local/nginx/sbin/
./nginx #启动
./nginx -t #检查配置
./nginx -s reload #重启
./nginx -s stop #停止
# 2.9 安装Hadoop
1.创建用户,并为其添加root权限
sudo adduser hadoop
visudo #添加一行
2.给hadoop用户创建目录,并添加到sudo用户组中,命令如下
sudo chown hadoop /home/hadoop
sudo adduser -G hadoop sudo
3.配置shh无码登录
ssh localhost
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
4.安装hadoop
(1)切换到hadoop用户下
su hadoop
(2)在home/hadoop目录下上传安装包,并解压
(3)在home/hadoop目录下新建tmp、hdfs/name、hdfs/data目录
mkdir tmp
mkdir hdfs
mkdir hdfs/name
mkdir hdfs/data
(4)设置环境变量,vi ~/.bash_profile
添加:export HADOOP_HOME=/home/hadoop/hadoop-2.9.2
export PATH=$PATH:$HADOOP_HOME/bin
使配置生效:source ~/.bash_profile
(5)修改配置文件,在/home/hadoop/hadoop-2.9.2/etc/hadoop目录下
1)vi hadoop-env.sh
export JAVA_HOME =/usr/jdk1.8.0_261
2)yarn-env.sh
export JAVA_HOME =/usr/jdk1.8.0_261
3)core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://10.14.2.214:9000</value>
<description>HDFS的URI,文件系统://namenode标识:端口号</description></property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
<description>namenode上本地的hadoop临时文件夹</description>
</property>
</configuration>
4)hdfs-site.xml
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/hdfs/name</value>
<description>namenode上存储hdfs名字空间元数据 </description> </property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/hdfs/data</value>
<description>datanode上数据块的物理存储位置</description></property>
<property>
<name>dfs.replication</name>
<value>1</value>
<description>副本个数,配置默认是3,应小于datanode机器数量</description>
</property>
</configuration>
5)cp mapred-site.xml.template mapred-site.xml
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
6)yarn-site.xml
5.启动
(1)切换到hadoop-2.9.2目录下,格式化hdfs文件系统:
bin/hadoop namenode -format
(2)cd sbin
(3)./start-dfs.sh
(4)./start-yarn.sh
6.执行jps命令,有如下进程,说明Hadoop正常启动
← 数据库常用总结