2022-11-20 21:15:56 +08:00
2022-11-20 21:15:56 +08:00

编程环境和软件设施安装手册

环境声明(重要!!!)

本文档所有实验、环境、工具、软件均基于 CentOS 7.4 64bit Linux操作系统进行

1.GIT工具安装

方式一:通过包管理器安装

在 Linux 上安装 Git 向来仅需一行命令即可搞定,因为各式各样的包管理器帮了我们⼤忙,所以对于

CentOS 系统来讲,直接执行如下命令即可安装:

yum -y install git

当然通过这种⽅式安装的 Git 可能不是较新版的 Git ,以我们的实验环境 CentOS 7.4 来说,这种⽅

式安装的 Git 版本为 1.8.3.1 ,不过一般来说是够用的。

方式二:通过源码编译安装

如果想安装较新版本的 Git ,则需要自行下载 Git 源码来编译安装。

1、准备Git安装包

我这里选择安装的是 2.26.2 版,将下载好的安装包 v2.26.2.tar.gz 直接放在了 root 目录下

然后将其本地解压,得到 git-2.26.2 目录:

[root@localhost ~]# tar -zxvf v2.26.2.tar.gz

2、提前安装可能所需的依赖

yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc-c++ perl-ExtUtils-MakeMaker

3、编译安装Git

进入到对应目录,执行配置、编译、安装命令即可,如下所示:

[root@localhost ~]# cd git-2.26.2/
[root@localhost git-2.26.2]# make configure
[root@localhost git-2.26.2]# ./configure --prefix=/usr/local/git
[root@localhost git-2.26.2]# make profix=/usr/local/git
[root@localhost git-2.26.2]# make install

4、将Git加入环境变量

将 Git 的可执行程序加入环境变量,便于后续使用

编辑配置文件:

vim /etc/profile

尾部加入 Git 的 bin 路径配置即可

export GIT_HOME=/usr/local/git
export PATH=$PATH:$GIT_HOME/bin

最后执行 source /etc/profile 使环境变量生效即可。

5、查看安装结果 执行 git --version 查看安装后的版本即可

2.JDKJAVA环境安装

注意这里安装的是Oracle JDK

准备JDK安装包

我这里下载的是 jdk-8u161-linux-x64.tar.gz 安装包,并将其直接放在了 /usr/src 目录下

wget https://mirror.liuyan.wang/download/jdk/jdk-8u161-linux-x64.tar.gz -P /usr/src

卸载已有的OPENJDK如果有

如果系统自带有 OpenJDK ,可以按照如下步骤提前卸载之。

首先查找已经安装的 OpenJDK 包:

rpm -qa | grep java

接下来可以将 java 开头的安装包均卸载即可:

yum -y remove java-1.7.0-openjdk-1.7.0.141-2.6.10.5.el7.x86_64
yum -y remove java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64
... 省略 ...

创建目录并解压

1、在 /usr/local/ 下创建 java 文件夹并进入

mkdir -p /usr/local/java
cd /usr/local/java

2、将上面准备好的 JDK 安装包解压到 /usr/local/java 中即可

tar -zxvf  /usr/src/jdk-8u161-linux-x64.tar.gz -C ./

解压完之后, /usr/local/java 目录中会出现一个 jdk1.8.0_161 的目录

配置JDK环境变量

编辑 /etc/profile 文件,在文件尾部加入如下 JDK 环境配置即可

vim /etc/profile
# java
JAVA_HOME=/usr/local/java/jdk1.8.0_161
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

然后执行如下命令让环境变量生效

source /etc/profile

验证JDK安装结果

输入如下命令即可检查安装结果:

java -version
javac

3.NODE环境安装

准备NODE安装包

1、在 /usr/local/ 下创建 node 文件夹并进入,下载node包

mkdir -p /usr/local/node
cd /usr/local/node
wget https://mirror.liuyan.wang/download/nodejs/node-v12.16.3-linux-x64.tar.xz

2、将 Node 的安装包解压到 /usr/local/node 中即可

tar -xJvf node-v12.16.3-linux-x64.tar.xz -C ./

解压完之后, /usr/local/node 目录中会出现一个 node-v12.16.3-linux-x64 的目录

配置NODE系统环境变量

编辑 ~/.bash_profile 文件,在文件末尾追加如下信息:

vim ~/.bash_profile
# Nodejs
export PATH=/usr/local/node/node-v12.16.3-linux-x64/bin:$PATH

刷新环境变量,使之生效即可:

source ~/.bash_profile

检查安装结果

node -v
npm version
npx -v

均有版本信息输出即可:

image-20221118143326259

4.PYTHON环境安装

CentOS 7.4 默认自带了一个 Python2.7 环境

然⽽现在主流都是 Python3 ,所以接下来再装一个 Python3 ,打造一个共存的环境。

下载PYTHON3安装包并解压

wget https://mirror.liuyan.wang/download/python/Python-3.8.3.tgz
tar zxvf Python-3.8.3.tgz

则可以在当前目录得到文件夹: Python-3.8.3

安装相关预备环境

直接执行如下命令即可:

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

编译并安装

这里指定了安装目录为 /usr/local/python3 ,有需要可以自定义

cd Python-3.8.3/
./configure prefix=/usr/local/python3
make && make install

等安装过程完毕, /usr/local/python3 目录就会生成了

添加软链接

我们还需要将刚刚安装生成的目录 /usr/local/python3 里的 python3 可执行文件做一份软链接,链接到 /usr/bin 下⽅便后续使用python3

ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

验证安装

命令行输入 python3 ,即可查看 Python3 版本的安装结果

image-20221118144140082

⽽输入 python ,依然还是 python2.7.5 环境

image-20221118144219840

5.MAVEN项目构建和管理工具安装

下载并解压maven安装包

mkdir -p /usr/local/maven
cd /usr/local/maven
wget https://mirror.liuyan.wang/download/maven/apache-maven-3.6.3-bin.tar.gz
tar zxvf apache-maven-3.6.3-bin.tar.gz

即可在当前目录得到 /usr/local/maven/apache-maven-3.6.3 目录

配置MAVEN加速镜像源

这里配置的是阿里云的maven镜像源。

编辑修改 /usr/local/maven/apache-maven-3.6.3/conf/settings.xml文件,在 <mirrors></mirrors> 标签对里添加如下内容即可:

<mirror>
 <id>alimaven</id>
 <name>aliyun maven</name>
 <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
 <mirrorOf>central</mirrorOf>
</mirror>

image-20221118144949788

配置环境变量

因为下载的是⼆进制版安装包,所以解压完,配置好环境变量即可使用了。

编辑修改 /etc/profile 文件,在文件尾部添加如下内容,配置 maven 的安装路径

vim /etc/profile
# maven
export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.3
export PATH=$MAVEN_HOME/bin:$PATH

接下来执行 source /etc/profile 来刷新环境变量,让 maven 环境的路径配置生效。

source /etc/profile

检验安装结果

执行 mvn v ,能打印出 maven 版本信息说明安装、配置成功:

image-20221118145951040

6.MYSQL数据库部署和安装(二进制)

首先下载安装包

这里下载的是 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 安装包,并将其直接放在了 /usr/src目录下

wget https://mirror.liuyan.wang/download/mysql/binary/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -P /usr/src

安装依赖

yum -y install libaio

卸载系统自带的MARIADB如果有

如果系统之前自带 Mariadb ,可以先卸载之。

首先查询已安装的 Mariadb 安装包:

rpm -qa|grep mariadb

image-20221118160550725

均将其卸载:

yum -y remove mariadb-server-5.5.56-2.el7.x86_64
yum -y remove mariadb-5.5.56-2.el7.x86_64
yum -y remove mariadb-devel-5.5.56-2.el7.x86_64
yum -y remove mariadb-libs-5.5.56-2.el7.x86_64

解压MYSQL安装包

tar -zxvf /usr/src/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
cd /usr/local/
mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql

创建MYSQL用户和用户组

groupadd mysql
useradd -r -g mysql -s /bin/false mysql

同时新建 /usr/local/mysql/data 目录,后续作为数据目录使用

准备MYSQL的配置文件

在 /usr/local/mysql 目录下新建 my.cnf 文件

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
skip-name-resolve
#设置3306端⼝
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最⼤连接数
max_connections=200
# 允许最大包大小
max_allowed_packet=1024M
# 服务端使用的字符集默认为8⽐特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的
#lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写
#lower_case_table_names=2 表名存储为给定的大小写但是比较的时候是小写的
lower_case_table_names=1
############################## 日 志 配 置 ##############################
#二进制日志目录
server-id=99
log-bin = /usr/local/mysql/log/mysql-bin
#自动删除过期日志的天数
expire_logs_days = 10
#限制单个文件大小
max_binlog_size = 100M

#查询日志
general_log = 1
#查询日志文件位置
general_log_file = /usr/local/mysql/log/query.log
#慢查询日志
slow_query_log = 1
#慢日志文件位置
slow_query_log_file = /usr/local/mysql/log/slow-query.log
#超过2秒记录
long-query_time = 2
#错误日志
log-error = /usr/local/mysql/log/error.log

修改MYSQL目录的归属用户

chown -R mysql:mysql  /usr/local/mysql

同时使用如下命令创建 /var/lib/mysql 目录,并修改权限:

mkdir /var/lib/mysql
chmod 777 /var/lib/mysql

正式开始安装MYSQL

执行如下命令正式开始初始化安装:

cd /usr/local/mysql
./bin/mysqld --defaults-file=/usr/local/mysql//my.cnf --initialize --user=mysql

注意:这里也可以使用

./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

来进行初始化,但这样会在/etc/下自动生成一个my.cnf,而不使用/usr/local/mysql下的配置文件

复制启动脚本到资源目录

执行如下命令复制:

cp ./support-files/mysql.server /etc/init.d/mysqld

并修改 /etc/init.d/mysqld ,修改其 basedir 和 datadir 为实际对应目录:

vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

设置MYSQL系统服务并开启自启

首先增加 mysqld 服务控制脚本执行权限:

chmod +x /etc/init.d/mysqld

同时将 mysqld 服务加入到系统服务:

chkconfig --add mysqld

最后检查 mysqld 服务是否已经生效即可:

chkconfig --list mysqld

image-20221118164236118

这样就表明 mysqld 服务已经生效了在2、3、4、5运行级别随系统启动⽽自动启动以后可以直接使用 service 命令控制 mysql 的启停。

启动MYSQLD

直接执行:

service mysqld start

image-20221118164326875

MYSQL 的 BIN 目录加入 PATH 环境变量

这样⽅便以后在任意目录上都可以使用 mysql 提供的命令。

编辑 ~/.bash_profile 文件,在文件末尾处追加如下信息:

export PATH=$PATH:/usr/local/mysql/bin

最后执行如下命令使环境变量生效

source ~/.bash_profile

首次登陆MYSQL

以 root 账户登录 mysql ,使用上文安装完成提示的密码进行登入,如果并未显示,使用下面命令来查询

grep "pass" /usr/local/mysql/log/error.log
mysql -u root -p

修改ROOT账户密码

在mysql的命令行执行如下命令即可密码可以换成你想用的密码即可

mysql> set password=password("mypassword123");
mysql> flush privileges;

设置远程主机登录

mysql> use mysql;
mysql> update user set user.Host='%' where user.User='root';
mysql> flush privileges;

或者

mysql> grant all privileges on *.* to 'root'@'%' identified by 'mypassword123';
mysql> flush privileges;

最后利用NAVICAT等工具进行测试即可

image-20221118165311527

7.REDIS缓存安装部署

首先下载并解压REDIS安装包

1、在 /usr/local/ 下创建 redis 文件夹并进入

mkdir -p /usr/local/redis
cd /usr/local/redis

2、下载并解压REDIS安装包

wget https://mirror.liuyan.wang/download/redis/redis-5.0.8.tar.gz
tar zxvf redis-5.0.8.tar.gz -C ./

解压完之后, /usr/local/redis 目录中会出现一个 redis-5.0.8 的目录

编译并安装

cd redis-5.0.8/
make && make instal

如果报错 cc: command not found执行 yum -y install gcc gcc-c++ libstdc++-devel 然后make distclean再make clean然后重新编译

将 REDIS 安装为系统服务并后台启动

进入 utils 目录,并执行如下脚本即可:

[root@localhost redis-5.0.8]# cd utils/
[root@localhost utils]# ./install_server.sh

此处全部选择的默认配置即可,有需要可以按需定制

image-20221118165918380

查看REDIS服务启动情况

直接执行如下命令来查看Redis的启动结果

systemctl status redis_6379.service

image-20221118171847313

启动自带的 redis-cli 客户端,测试通过

image-20221118171921293

但是此时只能在本地访问,⽆法远程连接,因此还需要做部分设置

设置允许远程连接

编辑 redis 配置文件

vim /etc/redis/6379.conf

bind 127.0.0.1 修改为 0.0.0.0

image-20221118172039920

然后重启 Redis 服务即可:

systemctl restart redis_6379.service

设置访问密码

编辑 redis 配置文件

vim /etc/redis/6379.conf

找到如下内容:

...
#requirepass foobared
...

去掉注释,将 foobared 修改为自⼰想要的密码,保存

requirepass mypassword123

保存,重启 Redis 服务

systemctl restart redis_6379.service

这样后续的访问需要先输入密码认证通过:

image-20221118172842926

8.消息队列RABBITMQ安装部署

首先安装ERLANG环境

因为 RabbitMQ 需要 erlang 环境的⽀持,所以必须先安装 erlang

我们这里要安装的是 erlang-22.3.3-1.el7.x86_64.rpm 所以首先执行如下命令来安装其对应的yum repo

curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | bash

image-20221118173610308

接下来执行如下命令正式安装 erlang 环境:

yum -y install erlang-22.3.3-1.el7.x86_64

image-20221118173926073

接着上面提示再次执行如下命令:

yum load-transaction /tmp/yum_save_tx.2020-05-14.22-21.n0cwzm.yumtx

image-20221118174057972

接下来可以直接执行如下命令,测试 erlang 是否安装成功:

erl

image-20221118174150112

安装RABBITMQ

接下来正式开始安装 rabbitmq ,首先依然是安装其对应的 yum repo

curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash

image-20221118174256730

然后执行如下命令正式安装 rabbitmq

yum -y install rabbitmq-server-3.8.3-1.el7.noarch

image-20221118174406879

image-20221118174506632

设置RABBITMQ开机启动

chkconfig rabbitmq-server on

启动RABBITMQ服务

systemctl start rabbitmq-server.service

开启WEB可视化管理插件

rabbitmq-plugins enable rabbitmq_management

访问可视化管理界面:

浏览器输入: 你的服务器IP:15672

image-20221118174657871

能看到⽹⻚登录入⼝即可。

我们可以在后台先添加一个用户/密码对:

rabbitmqctl add_user codesheep 123456
rabbitmqctl set_user_tags codesheep administrator

然后登录⽹⻚即可:

image-20221118174819812

9.应用服务器TOMCAT安装部署

下载并解压安装包

mkdir -p /usr/local/tomcat
cd /usr/local/tomcat
wget https://mirror.liuyan.wang/download/tomcat/apache-tomcat-8.5.55.tar.gz
mkdir -p /usr/local/tomcat
cd /usr/local/tomcat
tar -zxvf apache-tomcat-8.5.55.tar.gz -C ./

解压完之后, /usr/local/tomcat 目录中会出现一个 apache-tomcat-8.5.55 的目录

启动TOMCAT

直接进 apache-tomcat-8.5.55 目录,执行其中 bin 目录下的启动脚本即可

[root@localhost apache-tomcat-8.5.55]# cd /usr/local/tomcat/bin/
[root@localhost bin]# ./startup.sh

image-20221118175326255

这时候浏览器访问: 主机IP:8080 ,得到如下画面说明成功启动了

image-20221118175357191

配置快捷操作和开机启动

进入 /etc/rc.d/init.d 目录,创建一个名为 tomcat 的文件,并赋予执行权限

[root@localhost ~]# cd /etc/rc.d/init.d/
[root@localhost init.d]# touch tomcat
[root@localhost init.d]# chmod +x tomcat

接下来编辑 tomcat 文件,并在其中加入如下内容:

#!/bin/bash
#chkconfig:- 20 90
#description:tomcat
#processname:tomcat
TOMCAT_HOME=/usr/local/tomcat/apache-tomcat-8.5.55
case $1 in
 start) su root $TOMCAT_HOME/bin/startup.sh;;
 stop) su root $TOMCAT_HOME/bin/shutdown.sh;;
 *) echo "require start|stop" ;;
esac

这样后续对于Tomcat的开启和关闭只需要执行如下命令即可

service tomcat start
service tomcat stop

最后加入开机启动即可:

chkconfig --add tomcat
chkconfig tomcat on

10.WEB服务器NGINX安装部署

首先安装包并解压

这里下载的是 nginx-1.18.0.tar.gz 安装包,并将其直接放在了 /usr/src 目录下

wget https://mirror.liuyan.wang/download/nginx/nginx-1.18.0.tar.gz -P /usr/src

1、进入 /usr/src

cd /usr/src

2、将 Nginx 安装包解压

tar xvf nginx-1.18.0.tar.gz -C ./

解压完之后, /usr/src 目录中会出现一个 nginx-1.18.0 的目录

预先安装额外的依赖

yum -y install gcc gcc-c++ automake pcre pcre-devel zlip zlib-devel openssl openssl-devel 

添加nginx用户

useradd nginx -s /sbin/nologin -M

编译安装NGINX

cd  /usr/src/nginx-1.18.0
./configure --prefix=/usr/local/nginx --pid-path=/usr/local/nginx/log/nginx.pid --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre  --with-http_realip_module   --with-http_sub_module --with-stream
make
make install

安装完成后Nginx的可执行文件位置位于

/usr/local/nginx/sbin/nginx

启动NGINX

直接执行如下命令即可:

/usr/local/nginx/sbin/nginx

如果想停⽌Nginx服务可执行

/usr/local/nginx/sbin/nginx -s stop

如果修改了配置文件后想重新加载Nginx可执行

/usr/local/nginx/sbin/nginx -s reload

注意其配置文件位于:

/usr/local/nginx/conf/nginx.conf

浏览器验证启动情况

image-20221118181443748

11.DOCKER环境安装

卸载旧版本

较旧的 Docker 版本称为 docker 或 docker-engine 。如果已安装这些程序,请卸载它们以及相关的依赖项。

yum -y remove docker \
              docker-client \
              docker-client-latest \
              docker-common \
              docker-latest \
              docker-latest-logrotate \
              docker-logrotate \
              docker-engine

设置仓库

安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。

yum install -y yum-utils device-mapper-persistent-data lvm2

使用以下命令来设置稳定的仓库。

阿里云

yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

清华大学源

yum-config-manager \
    --add-repo \
    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

安装 Docker

yum -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin

如果要安装特定版本的 Docker Engine-Community请在存储库中列出可用版本然后选择并安装

$yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64  3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64  3:18.09.0-3.el7                     docker-ce-stable
docker-ce.x86_64  18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64  18.06.0.ce-3.el7                    docker-ce-stable

$yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

启动 Docker并设置开机自启

systemctl start docker
systemctl enable docker

12.ELASTICSEARCH集群部署

环境准备

  • 节点准备

本文准备搭建 双节点 Elasticsearch集群用双节点仅仅是做演示因此这里准备了两台 Linux CentOS 7.4 64bit 机器:

  • 节点1 192.168.31.8

  • 节点2 192.168.31.9

  • Elasticsearch 安装包准备

这里下载的是: 6.4.2

wget https://mirror.liuyan.wang/download/elasticsearch/elasticsearch-6.4.2.tar.gz
  • 安装目录准备

这里拟将 Elasticsearch安装在 /opt/elasticsearch 目录下:

mkdir /opt/elasticsearch

将压缩包复制到该目录下并解压:

cp elasticsearch-6.4.2.tar.gz /opt/elasticsearch/
cd /opt/elasticsearch
tar xvf elasticsearch-6.4.2.tar.gz

ELASTICSEARCH 集群配置

需要修改两个节点上的配置文件 elasticsearch.yml

  • 节点1配置
cluster.name: escluster # 集群名称
node.name: sheep1 # 节点名
network.host: 192.168.31.8 # 绑定的节点1地址
network.bind_host: 0.0.0.0 # 此项不设置你试试本机可能访问不了啊
discovery.zen.ping.unicast.hosts: ["192.168.31.8","192.168.31.9"] #hosts列表
discovery.zen.minimum_master_nodes: 1
## 如下配置是为了解决 Elasticsearch可视化工具 dejavu的跨域问题若不用可视化工具则可省略之
http.port: 9200
http.cors.allow-origin: "http://192.168.199.76:1358"
http.cors.enabled: true
http.cors.allow-headers : X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization
http.cors.allow-credentials: true
  • 节点2配置
cluster.name: escluster # 集群名称
node.name: sheep1 # 节点名
network.host: 192.168.31.9 # 绑定的节点2地址
network.bind_host: 0.0.0.0 
discovery.zen.ping.unicast.hosts: ["192.168.31.8","192.168.31.9"] #
hosts列表
discovery.zen.minimum_master_nodes: 1
## 如下配置是为了解决 Elasticsearch可视化工具 dejavu的跨域问题若不用可视化工具则可省略之
http.port: 9200
http.cors.allow-origin: "http://192.168.199.76:1358"
http.cors.enabled: true
http.cors.allow-headers : X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization
http.cors.allow-credentials: true

集群启动前准备

  • 创建用户及用户组

由于 Elasticsearch不能以 root用户启动因此需要添加⾮ root用户

groupadd es
useradd es -g es
chown -R es:es ./elasticsearch-6.4.2
  • 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

启动 ELASTICSEARCH集群

  • 切换用户
su es
  • 分别在 节点1和 节点2上启动ES服务
cd bin
./elasticsearch // 若要后台启动,则加-d参数

image-20221118221505934

报错:max file descriptors [4096] for elasticsearch process is too low

解决办法:

vim /etc/security/limits.conf

使用root用户把以下配置加到文件末尾再登录es用户尝试启动

es      soft  nofile     65536
es        hard  nofile     65536

image-20221118221839640

报错:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决办法:

echo 262144 > /proc/sys/vm/max_map_count
  • 命令行查看集群信息

image-20221118222250849

13.ZOOKEEPER安装部署

准备安装包

这里使用的是 3.6.1 版,下载的是 apache-zookeeper-3.6.1-bin.tar.gz 压缩包,并将其放在了 /usr/src 目录下

wget https://mirror.liuyan.wang/download/zookeeper/apache-zookeeper-3.6.1-bin.tar.gz -P /usr/src

解压并安装

/usr/local/ 下创建 zookeeper 文件夹并进入

mkdir -p /usr/local/zookeeper
cd /usr/local/zookeeper

将 ZooKeeper 安装包解压到 /usr/local/zookeeper 中即可

[root@localhost zookeeper]# tar -zxvf /usr/src/apache-zookeeper-3.6.1-bin.tar.gz -C ./

解压完之后, /usr/local/zookeerper 目录中会出现一个 apache-zookeeper-3.6.1-bin 的目录

直接在该目录下创建个data目录

mkdir -p apache-zookeeper-3.6.1-bin/data

image-20221118223548955

等下该 data 目录地址要配到 ZooKeeper 的配置文件中:

创建配置文件并修改

进入到 zookeeper 的 conf 目录,复制 zoo_sample.cfg 得到 zoo.cfg

[root@localhost apache-zookeeper-3.6.1-bin]# cd conf/
[root@localhost conf]# cp zoo_sample.cfg zoo.cfg

修改配置文件 zoo.cfg ,将其中的 dataDir 修改为上面刚创建的 data 目录,其他选项可以按需配置

image-20221118223723092

启动ZOOKEEPER

[root@localhost apache-zookeeper-3.6.1-bin]# ./bin/zkServer.sh start

image-20221118223816158

启动后可以通过如下命令来检查启动后的状态:

[root@localhost apache-zookeeper-3.6.1-bin]# ./bin/zkServer.sh status

image-20221118224553236

从图中也可以看出zookeeper默认会绑定端⼝ 2181 。

配置环境变量

编辑配置文件:

vim /etc/profile

尾部加入 ZooKeeper 的 bin 路径配置即可

export ZOOKEEPER_HOME=/usr/local/zookeeper/apache-zookeeper-3.6.1-bin
export PATH=$PATH:$ZOOKEEPER_HOME/bin

最后执行 source /etc/profile 使环境变量生效即可。

设置开机自启

首先进入 /etc/rc.d/init.d 目录,创建一个名为 zookeeper 的文件,并赋予执行权限

[root@localhost ~]# cd /etc/rc.d/init.d/
[root@localhost init.d]# touch zookeeper
[root@localhost init.d]# chmod +x zookeeper

接下来编辑 zookeeper 文件,并在其中加入如下内容:

#!/bin/bash
#chkconfig:- 20 90
#description:zookeeper
#processname:zookeeper
ZOOKEEPER_HOME=/usr/local/zookeeper/apache-zookeeper-3.6.1-bin
export JAVA_HOME=/usr/local/java/jdk1.8.0_161 # 此处根据你的实际情况更换对应
case $1 in
 start) su root $ZOOKEEPER_HOME/bin/zkServer.sh start;;
 stop) su root $ZOOKEEPER_HOME/bin/zkServer.sh stop;;
 status) su root $ZOOKEEPER_HOME/bin/zkServer.sh status;;
 restart) su root $ZOOKEEPER_HOME/bin/zkServer.sh restart;;
 *) echo "require start|stop|status|restart" ;;
esac

最后加入开机启动即可:

chkconfig --add zookeeper
chkconfig zookeeper on

14.消息队列KAFKA安装部署

首先准备ZOOKEEPER服务

因为 Kafka 的运行环境依赖于 ZooKeeper ,所以首先得安装并运行 ZooKeeper ,这个可以参考上面的内容。

准备KAFKA安装包

这里下载的是 2.5.0 版: kafka_2.12-2.5.0.tgz ,将下载后的安装包放在了 /usr/src 目录下

wget https://mirror.liuyan.wang/download/kafka/kafka_2.12-2.5.0.tgz -P /usr/src

解压并安装

在 /usr/local/ 下创建 kafka 文件夹并进入

mkdir -p /usr/local/kafka
cd /usr/local/kafka

将Kafka安装包解压到 /usr/local/kafka 中即可

[root@localhost kafka]# tar -zxvf /usr/src/kafka_2.12-2.5.0.tgz -C ./

解压完之后, /usr/local/kafka 目录中会出现一个 kafka_2.12-2.5.0 的目录

创建LOGS目录

这里直接在 /usr/local/kafka/kafka_2.12-2.5.0 目录中创建一个 logs 目录

mkdir -p /usr/local/kafka/kafka_2.12-2.5.0/log

等下该 logs 目录地址要配到Kafka的配置文件中。

修改配置文件

进入到 Kafka 的 config 目录,编辑配置文件 server.properties

[root@localhost kafka_2.12-2.5.0]# cd config/
[root@localhost config]# vim server.properties

修改配置文件,一是将其中的 log.dirs 修改为上面刚创建的 logs 目录,其他选项可以按需配置

image-20221118225753731

另外关注一下连接 ZooKeeper 的相关配置,根据实际情况进行配置:

image-20221118225823429

启动KAFKA

执行如下命令即可:

cd /usr/local/kafka/kafka_2.12-2.5.0
./bin/kafka-server-start.sh ./config/server.properties

image-20221118225913005

如果需要后台启动,则加上 -daemon 参数即可

实验验证

首先创建一个名为 topic 的 topic

image-20221118234026684

创建完成以后,可以使用命令来列出目前已有的 topic 列表

cd /usr/local/kafka/kafka_2.12-2.5.0
./bin/kafka-topics.sh --list --bootstrap-server localhost:9092

接下来创建一个生产者,用于在 topic 这个 topic 上生产消息:

cd /usr/local/kafka/kafka_2.12-2.5.0
./bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic topic

⽽后接着创建一个消费者,用于在 codesheep 这个 topic 上获取消息:

cd /usr/local/kafka/kafka_2.12-2.5.0
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topic

此时生产者发出的消息,在消费者端可以获取到:

image-20221118234538148

15.数据库mongodb安装部署

下载mongodb包并解压

cd /usr/local
wget https://mirror.liuyan.wang/download/mongodb/mongodb-linux-x86_64-3.6.17.tgz
tar -zxvf mongodb-linux-x86_64-rhel70-3.6.17.tgz
mv mongodb-linux-x86_64-rhel70-3.6.17.tgz mongodb

然后 在/usr/local/mongodb目录下新建data目录在data目录下新建db目录、logs目录并新建mongodb.conf文件后续会用到建完之后赋予权限。

chmod +x -R /usr/local/mongodb

初始化配置

首先,修改/usr/local/mongodb/data/目录下的mongodb.conf文件设置部分基础的参数修改后保存。

systemLog:
    destination: file
    path: "/usr/local/mongodb/data/logs/mongodb.log"
    logAppend: true
storage:
    dbPath: "/usr/local/mongodb/data/db/"
    journal:
         enabled: true
processManagement:
    fork: true
    pidFilePath: "/usr/local/mongodb/data/mongodb.pid"
net:
    bindIp: 0.0.0.0
    port: 27017
    maxIncomingConnections: 3000
setParameter:
    enableLocalhostAuthBypass: false
#security:
#    authorization: enabled

修改配置文件后启动mongodb数据库启动数据库后可以无密码本地访问、远程访问。

/usr/local/mongodb/bin/mongod --config=/usr/local/mongodb/data/mongodb.conf --fork

启动数据库后,进入数据库进行配置,新增远程访问账户

use admin
db.createUser({user:"root",pwd:"mypassword",roles:[{role:"root",db:"admin"}]}) 
db.auth("root","mypassword")

同时,还要修改配置文件,设置远程访问。把配置文件中的注释项修改。

#security:
   authorization: enabled

修改后,关闭数据并重启数据库

#查询进程 ps -ef|grep mongodb

关闭mongodb数据库注意要用-2参数不要使用-9参数区别请查询相关信息

kill -2 进程号
/usr/local/mongodb/bin/mongod --config=/usr/local/mongodb/data/mongodb.conf --fork

然后使用Robo 3T工具进行远程测试

添加mongodb服务

使用下面命令进行启动并且查询进程号关闭比较麻烦可以把mongodb添加到系统服务这样就可以直接使用系统命令进行启动关闭。

/usr/local/mongodb/bin/mongod --config=/usr/local/mongodb/data/mongodb.conf fork

首先,在/usr/lib/systemd/system/目录下新增一个mongodb.service并新增如下内容。

vim /usr/lib/systemd/system/mongodb.service

[Unit]
Description=mongodb
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/data/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

chmod +x /usr/lib/systemd/system/mongodb.service

配置后就可以使用systemctl start|stop|status mongodb.service进行启动关闭。 当然你也可以配置service start|stop|status mongodb进行数据库操作具体请自行查找(上面其他步骤中有使用)。

设置一个超级管理员账户

设置一个超级管理员账户,对于所有库具有读写权限

①切换admin库进行用户创建

use admin
db.createUser({user:"root",pwd:"root",roles:["root"]})

②关闭mongod服务重启添加权限参数并启动

在启动脚本中加入--auth参数

/usr/local/mongodb/bin/mongod --auth --config=/usr/local/mongodb/data/mongodb.conf fork

16.memcache安装部署

首先获取安装包

wget https://mirror.liuyan.wang/download/memcached/memcached-1.5.22.tar.gz -P /usr/src

解压并进入安装包

cd /usr/src
tar xvf memcached-1.5.22.tar.gz
cd memcached-1.5.22

安装依赖

yum -y install libevent-devel

编译安装memcached

./configure --prefix=/usr/local/memcached
make && make install

查看软件启动参数,并启动

cd /usr/local/memcached/bin
./memcached -h

-p是设置Memcache监听的端口最好是1024以上的端口

-d是启动一个守护进程

-m是分配给Memcache使用的内存数量单位是MB

-u是运行Memcache的用户

-l是监听的服务器IP地址可以有多个地址

-c是最大运行的并发连接数默认是1024

-P是设置保存Memcache的pid文件

启动memcached

#进入memcached文件目录
cd /usr/local/memcached/bin
#后台启动memcached  可以创建一个普通用户memcached  用来启动管理memcached软件
./memcached -uroot -d
#进程查看是否启动成功
ps aux |grep memcached

...未完待续

Description
No description provided
Readme 30 KiB