运维各种中间件的手动安装(非常详细)

发布于:2024-05-06 ⋅ 阅读:(27) ⋅ 点赞:(0)

压缩文件夹

tar -zcvf newFolder.tar.gz oldFolder
把oldFolder文件夹压缩成newFolder.tar.gz

解压文件夹

tar -zxvf 压缩文件名.tar.gz

linux安装jdk

(参考 https://blog.csdn.net/qq_42269466/article/details/124079963 )

1、创建目录存放jdk包
mkdir /usr/local/soft
2、创建目录安装jdk
mkdir /usr/local/java
3、解压jdk到指定目录
tar -zxvf /usr/local/soft/jdk-xx-linux-xx.tar.gz -C /usr/local/java/
4、配置环境变量
vi /etc/profile
添加如下配置
#jdk安装目录(需要自己去看具体目录文件名)
export JAVA_HOME=/usr/local/java/jdk1.8.0_181
#jre安装目录
export JRE_HOME=${JAVA_HOME}/jre                   
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=$PATH:${JAVA_HOME}/bin:${JRE_HOME}/bin
5、让配置生效
source /etc/profile
6、测试是否安装成功
java -version

linux安装mysql8.0.

( https://blog.csdn.net/ShockChen7/article/details/126965940 )
注意:

tar -xvf 可以解压tar.xz后缀的压缩文件
tar -zxvf 可以解压tar.gz后缀的压缩文件

(以下以mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz为例)

1、解压:
tar -zxvf mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz
2、重命名
mv mysql-8.0.32-linux-glibc2.17-aarch64 mysql-8.0.32
3、创建data文件夹 储存文件
cd mysql-8.0.32
mkdir data
4、创建用户组和用户
groupadd mysql
useradd -g mysql mysql
5、授权用户
chown -R mysql.mysql /usr/local/soft/mysql-8.0.32
6、mysql初始化(注意这里会生成密码,记得保存)
cd bin
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0.32 --datadir=/usr/local/mysql-8.0.32/data/ --initialize   
(注:如果报错
 ./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
-bash: ./mysqld:: 没有那个文件或目录
则执行:  yum install -y libaio
参考:https://blog.csdn.net/ycsdn10/article/details/121934412
)
然后再执行一次初始化
7、编辑my.cnf
vim /etc/my.cnf

=下面是修改后的

[[mysqld]
#datadir=/var/lib/mysql 【修改点】
datadir=/usr/local/mysql-8.0.19/data
#【修改点】
basedir=/usr/local/mysql-8.0.19
【修改点】
#socket=/var/lib/mysql/mysql.sock
socket=/tmp/mysql.sock]()

Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

Settings user and group are ignored when systemd is used.

If you need to run mysqld under a different user or group,

customize your systemd unit file for mariadb according to the

instructions in http://fedoraproject.org/wiki/Systemd

【修改点】
#[mysqld_safe]
【修改点】
#log-error=/var/log/mariadb/mariadb.log
【修改点】
#pid-file=/var/run/mariadb/mariadb.pid

#

include all files from the config directory

#
!includedir /etc/my.cnf.d

=end

8、添加mysqld服务
返回mysql-8.0目录下,添加mysqld服务到系统
cp -a ./support-files/mysql.server /etc/init.d/mysql
9.授权以及添加服务
chmod +x /etc/init.d/mysql
chkconfig --add mysql
10.启动mysql
service mysql start
11.查看启动状态
service mysql status
12.将mysql命令添加到服务 
ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin
13.登录
mysql -uroot -p
14.修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
15.修改远程连接并生效
use mysql;
update user set host='%' where user='root';
flush privileges;
16.开放防火墙3306端口
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload
查看防火墙端口开放状态(看3306是否开启了)
firewall-cmd --list-all

mysql忘记密码

1.先杀死进程
lsof -i:3306   
kill -9 pid
2.修改配置
vim /etc/my.cnf
添加以下配置
skip-grant-tables
3、重启服务器(到mysql的安装目录下)
bin/mysqld_safe --user=mysql & 
4.修改密码(注意,不同版本修改密码方式不一样,这是8.0.*版本的)
ALTER USER 'root'@'%' IDENTIFIED BY 'root';
5.生效
flush privileges; 
6.重新登录
bin/mysql -u root -p
7.把步骤2的skip-grant-tables注释掉,然后重启服务器
8.重启服务器
service mysql resart

redis安装

离线安装

指定运行conf文件
./redis-server redis/redis.conf
注意:要让外网连接到,redis.conf需要做以下改动
1、bind 127.0.0.1 改为bind 0.0.0.0
2、将 protected-mode yes 改为 protected-mode no
3、设置redis秘密,requirepass 123456
验证别的电脑是否连通
telnet ip port

docker安装

  • 拉取镜像

    docker pull redis
    
  • 创建挂载目录

    mkdir -p /home/docker-redis/conf
    mkdir -p /home/docker-redis/data
    
  • 复制对应版本的redis.conf 到 /home/docker-redis/conf/目录下面

    注意:
    修改点1:bind 0.0.0.0
    修改点2:protected-mode no
    
  • 运行

    docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /home/docker-redis/conf/redis.conf:/etc/redis/redis.conf -v /home/docker-redis/data:/data -d redis redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass 123456
    
    注意:--requirepass 123456 表示密码为123456
    

服务时间不一致解决

参考地址:https://blog.csdn.net/u013810234/article/details/120341377
(centos ntp时间同步)

sudo yum install ntp -y

完成安装之后,您需要编辑NTP服务器配置文件/etc/ntp.conf,执行以下命令:
sudo vim /etc/ntp.conf
在文件底部添加类似以下内容:
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
保存并关闭文件。
接下来,您需要启动NTP服务。执行以下命令:
sudo systemctl start ntpd
您还可以设置NTP服务在服务器启动时自动启动:
sudo systemctl enable ntpd
这样,您就可以通过NTP协议进行时间同步了。

然后重启服务器(代码)

activemq安装

离线安装

https://activemq.apache.org/activemq-5014003-release

1、解压
tar -zxvf apache-activemq-5.14.3-bin.tar.gz 
2、重命名
mv apache-activemq-5.14.3 activemq-5.14.3
3、到解压的目录/bin下
cd activemq-5.14.3/bin
4、启动,并指向日志
./activemq start > /soft/activemq-5.14.3/activemq.log
5、开启61616端口防火墙、开启8161防火墙(阿里云也需要手动开启相应的端口)
6、访问:http://ip:8161/ 默认用户和密码:admin/admin

安装Apache ActiveMQ 5.15.16

1、解压后,来到bin目录下
vim activemq
2、配置java目录(查看java环境:vim /etc/profile 或者 echo $JAVA_HOME)
在activemq里面新增下面两行
JAVA_HOME="/usr/local/jdk1.8.0_341"
JAVA_CMD="/usr/local/jdk1.8.0_341/bin"
3、启动
sh activemq start
4、修改用户名和密码(默认admin/admin)
到config目录下
vim jetty-realm.properties
admin: TX2023666888@EQ#ls3@Te, admin (解读:用户名:admin,密码:TX2023666888@EQ#ls3@Te,角色:admin)
保存后重新启动

docker构建activemq

参考

https://blog.csdn.net/Max_bin/article/details/108453252
https://www.cnblogs.com/shanfeng1000/p/16261005.html
  • 把需要的文件都放到一个目录下
apache-activemq-5.15.16-bin.tar.gz
jdk-8u351-linux-x64.tar.gz
  • 在改目录下创建Dockerfile文件,文件内容如下
FROM centos:latest
ADD apache-activemq-5.15.16-bin.tar.gz /usr/local/
ADD jdk-8u351-linux-x64.tar.gz /usr/local/
WORKDIR /usr/local
ENV LANG C.UTF-8
ENV TZ=Asia/Shanghai
ENV JAVA_HOME=/usr/local/jdk1.8.0_351
ENV ACTIVEMQ_HOME /usr/local/apache-activemq-5.15.16
ENV PATH=$JAVA_HOME/bin:$PATH:$ACTIVEMQ_HOME/bin
ENV export JAVA_HOME PATH
RUN source /etc/profile
EXPOSE 61616 8161
CMD sh /usr/local/apache-activemq-5.15.16/bin/activemq  start && /bin/bash
对以上文件进行解释:
(1)ADD apache-activemq-5.15.16-bin.tar.gz /usr/local/ 把目录下的apache-activemq-5.15.16-bin.tar.gz添加到容器目录/usr/local/中(虚拟路径,无需手动创建,注意:该命令有拷贝且解压作用,无需后续手动解压!!!)
(2)ADD jdk-8u351-linux-x64.tar.gz /usr/local/跟(1)一样
(3) ENV LANG C.UTF-8 设置语言
(4) ENV TZ=Asia/Shanghai #指定容器内时间
  • 生成镜像

    docker build -t future/activemq:v1 .
    
  • 运行

    docker run --name='activemq' -it -p 8161:8161 --rm future/activemq:v1
    

minio安装

1、拉取镜像
docker pull minio/minio:RELEASE.2023-01-18T04-36-38Z

2、运行
docker run
-d --name minio
-v /docker/minio/data:/data
-v /etc/localtime:/etc/localtime
-e “MINIO_ROOT_USER=minio”
-e “MINIO_ROOT_PASSWORD=minio123456”
-p 9000:9000 -p 19000:9090
minio/minio:RELEASE.2023-01-18T04-36-38Z server /data --console-address “:9090”

3、登录
http://ip:19000/
用户:minio
密码:minio123456

https://blog.csdn.net/l848168/article/details/131458698


Ngix安装

查看版本
方法一

strings sbin/nginx |grep "nginx version"

方法二

nginx -V

离线安装

安装步骤
1、解压

tar -zxvf nginx-1.25.2.tar.gz

(参考:https://blog.csdn.net/baidu_38300480/article/details/122292382 )

如果报如下错误

checking for getaddrinfo() ... found
checking for PCRE2 library ... not found
checking for PCRE library ... found
checking for PCRE JIT support ... found
checking for zlib library ... not found

./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using --with-zlib=<path> option.

方法1:重启Linxu

方法2:执行

# yum -y install gcc gcc-c++ autoconf automake make       
# yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

docker安装nginx

https://blog.csdn.net/u010148813/article/details/126172372

  • 拉去镜像

    docker pull nginx:1.22.0
    
  • 下载完成后检查镜像

    docker images
    
  • 创建挂载目录

    mkdir /home/docker-nginx
    
  • 从容器中复制挂载的文件

    先简单创建容器运行,从容器里面复制要挂载的文件到宿主机上。

    创建并运行容器,容器命名为nginx
    docker run --name nginx -p 80:80 -d nginx:1.22.0
    
  • 从容器中复制文件到宿主机

    docker cp nginx:/etc/nginx/nginx.conf /home/docker-nginx/
    docker cp nginx:/etc/nginx/conf.d/ /home/docker-nginx/conf/
    docker cp nginx:/usr/share/nginx/html/ /home/docker-nginx/html/
    docker cp nginx:/var/log/nginx/ /home/docker-nginx/logs/
    
  • 停止、删除容器

    docker stop nginx
    docker rm nginx
    
  • 创建并运行容器

    docker run -p 80:80 \
    -v /home/docker-nginx/nginx.conf:/etc/nginx/nginx.conf \
    -v /home/docker-nginx/logs:/var/log/nginx \
    -v /home/docker-nginx/html:/usr/share/nginx/html \
    -v /home/docker-nginx/conf:/etc/nginx/conf.d \
    -v /etc/localtime:/etc/localtime \
    --name nginx \
    --restart=always \
    -d nginx:1.22.0
    
    参数说明:
    -p 映射端口,格式为“宿主机端口:容器端口”
    -v 挂载文件
    -e TZ=Asia/Shanghai  设置时区
    --privileged=true 让容器中的root用户拥有真正的root权限
    --name  容器名字,以后可以使用这个名字启动或者停止容器
    --restart=always docker启动时自动启动容器
    -d 指定要启动的镜像名
    
  • 访问:ip:80


influxdb安装

https://blog.csdn.net/weixin_67510312/article/details/129954375


docker安装

参考:https://blog.csdn.net/u011397981/article/details/130616038

  • step 1: 安装必要的一些系统工具

    sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    
  • Step 2: 添加软件源信息

    sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
  • Step 3: 更新yum索引列表并安装Docker引擎

    sudo yum makecache fast
    
  • yum索引列表没有更新可以直接使用yum makecache

    sudo yum install docker-ce
    
  • Step 4: 开启Docker服务

    sudo service docker start
    
  • 测试是否安装成功

    docker version
    

xxl-job安装

1、docker pull xuxueli/xxl-job-admin:2.4.0
新建xxl-job的库, 执行xxl-job的脚本
服务器新建/usr/local/xxl-job文件夹, 并把application.properties配置文件放进去, 修改数据库地址
执行docker启动命令并制定端口
docker run -v /usr/local/xxl-job/application.properties:/application.properties -e PARAMS=“–spring.config.location=/application.properties” -p 18080:8080 -v /tmp:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.3.1
注意:需要开启18080端口

nacos持久化(docker)

参考
https://blog.csdn.net/studio_1/article/details/132160081



docker cp nico-nacos:/home/nacos/conf/ /home/docker/nacos
docker cp nico-nacos:/home/nacos/logs/ /home/docker/nacos
docker cp nico-nacos:/home/nacos/data/ /home/docker/nacos

docker 安装zk和kafka

https://blog.csdn.net/yuanjinshenglife/article/details/129472354

安装zookeeper

静态文件安装

  • 解压到指定目录(解压到 /usr)
tar -zxf zookeeper-3.4.6.tar.gz -C /usr/
  • 来到指定/usr目录

    cd zookeeper-3.4.6/
    
  • 拷贝zoo_sample.cfg一份为zoo.cfg

    cp conf/zoo_sample.cfg conf/zoo.cfg
    
  • 修改zoo.cfg

    vim conf/zoo.cfg
    修改
    dataDir=/root/zkdata
    
  • 创建dataDir指定的目录

    mkdir /root/zkdata
    
  • 到zookeeper解压目录,启动

    ./bin/zkServer.sh start conf/zoo.cfg
    
  • 检查是否启动成功

    方式1
    jps
    展示如下信息:
    38961 QuorumPeerMain
    38997 Jps
    方式2
    ./bin/zkServer.sh status conf/zoo.cfg
    展示如下信息
    JMX enabled by default
    Using config: conf/zoo.cfg
    Mode: standalone
    

    注意:3.5.*以上的版本安装可能报错,可能原因是缺少jar,需要特别注意

安装kafka

静态文件安装(单机)

  • 解压到指定目录(解压到 /usr)

    tar -zxf kafka_2.11-2.2.0.tgz -C /usr/
    
  • 到指定的解压目录下

    cd /usr/kafka_2.11-2.2.0/
    
  • 配置主机名

    • 查看是否配置了HOSTNAME

      vim /etc/sysconfig/network
      
    • 没有就新增

      HOSTNAME=主机名
      如下是配置主机名为:CentOS
      
      HOSTNAME=CentOS
      那么CentOS就是主机该linux的主机名
      需要重启才能生效!!!!!!!!!!!!!!!!!!!
      
    • 重启生效

      reboot
      
    • 查看本机地址

      ifconfig
      
      我的ip地址
      172.28.204.91
      
    • 构建主机名和ip的映射文件

      vim /etc/hosts
      配置信息如下
      172.28.204.91 CentOS
      
    • 检查是否配置成功

      ping CentOS
      
  • 修改文件server.properties

    vim config/server.properties
    
    修改点1
    把注释放开
    #listeners=PLAINTEXT://:9092
    改成(CentOS是上面配置的)
    listeners=PLAINTEXT://CentOS:9092
    
    修改点2
    zookeeper.connect=localhost:2181
    改成(CentOS是上面配置的)
    zookeeper.connect=CentOS:2181
    
    修改点3(保证能对该目录进行读写)
    log.dirs=/usr/kafka-logs
    
    修改点4 新增
    advertised.listeners=PLAINTEXT://CentOS:9092
    (默认这个key所在行是注释掉的,正是因为没这个,导致创建topic时总是报错
    如果是阿里云,想让外网能访问,需要替换CentOS为相应的外网ip !!!!!!!!!
    No entry found for connection 1006)
    
  • 启动(后台启动方式,需要先启动zk)

    ./bin/kafka-server-start.sh -daemon config/server.properties
    
  • 查看是否启动成功

    jps
    如下:说明成了jps
    6560 Kafka
    
  • 关闭

    ./kafka-server-stop.sh 
    
  • 创建topic

    ./bin/kafka-topics.sh --bootstrap-server CentOS:9092 --create --topic topic01 --partitions 1 --replication-factor 1
    
  • 消费者

    ./bin/kafka-console-consumer.sh --bootstrap-server CentOS:9092 --topic cmd_ywzn --group group1
    
  • 生产消息

    ./bin/kafka-console-producer.sh --broker-list CentOS:9092 --topic cmd_ywzn
    

kafka图形化界面

参考 https://gitee.com/dushixiang/kafka-map

docker run -d \
    -p 9981:8080 \
    -e DEFAULT_USERNAME=admin \
    -e DEFAULT_PASSWORD=admin \
    --name kafka-map \
    --restart always dushixiang/kafka-map:latest

activemq

  • 部署方式:docker部署
docker pull webcenter/activemq:5.14.3
   docker run --name='activemq-dev' \
      -itd \
      -p 11494:8161 \
      -p 58283:61616 \
      -e ACTIVEMQ_ADMIN_LOGIN=admin \
      -e ACTIVEMQ_ADMIN_PASSWORD=123456 \
      --restart=always \
      -v /docker/activemq-dev:/data/activemq \
      -v /docker/activemq-dev/log:/var/log/activemq \
      -v /etc/localtime:/etc/localtime \
      webcenter/activemq:5.14.3

如果还嫌弃麻烦,这里我准备了一键安装脚本