CentOS8软件安装总教程一

CentOS8软件安装总教程一_第1张图片

在我看来

她仿佛代言了这整个世界的秘密

              -----《言叶之庭》

目录

防火墙 

JDK安装教程

Tomcat安装

Nginx安装

Redis安装

伪分布式集群 

Redis测试实验

Redis连接RedisDesktopManage可视化工具


基础命令:centos8安装好后进入,使用xshell远程连接上去。

进去执行命令yum install gcc openssl openssl-devel pcre pcre-devel zlib zlib-devel -y

执行rz上传本地文件,如果无法打开窗口,直接执行:sudo yum install -y lrzsz即可.

执行make编译C语音代码找不到命令,gcc没装好的原因:yum install gcc automake autoconf libtool make

安装vim,yum install vim

删除文件夹:rm -rf …,新建文件夹:mkdir …  ,

三种查看进程的方法

ps -ef|grep activemq|grep -v grep,netstat -anp|grep 61616,lsof -i:61616

复制文件并重命名:cp activemq.xml activemq.xml.bk

重命名:mv zookeeper-3.4.14 zookeeper

创建文件:touch zk_batch.sh

防火墙 

查看状态:systemctl status firewalld.service

打开防火墙:systemctl start firewalld.service

关闭防火墙:systemctl stop firewalld.service

开启防火墙:systemctl enable firewalld.service

禁用防火墙:systemctl disable firewalld.service

加端口:firewall-cmd --permanent --zone=public --add-port=8080/tcp

成功添加端口号,然后必须重启防火墙或者虚拟机

firewall-cmd --reload

然后查看是否生效:firewall-cmd --zone=public --query-port=8080/tcp

JDK安装教程

1.到官网下载一个tar.gz的包,例如jdk-8u161-linux-x64.tar.gz。

2.使用rz命令或者ftp直接复制到/usr/local目录下,如图

CentOS8软件安装总教程一_第2张图片

接着进行解压缩,执行命令:tar -zxvf jdk-8u161-linux-x64.tar.gz,如图解压完毕

 CentOS8软件安装总教程一_第3张图片

改个名字,mv jdk1.8.0_161/ jdk1.8,如图

CentOS8软件安装总教程一_第4张图片

3.配置环境变量,vim /etc/profile,配置好:

#jdk环境

export JAVA_HOME=/usr/local/jdk1.8

export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/

export PATH=$PATH:$JAVA_HOME/bin

其中java_home为jdk安装目录,即

CentOS8软件安装总教程一_第5张图片

CentOS8软件安装总教程一_第6张图片

 4.重新加载配置文件:source /etc/profile

CentOS8软件安装总教程一_第7张图片

5.然后javac -version,java -version保证两个版本一致 

CentOS8软件安装总教程一_第8张图片

Tomcat安装

1.压缩包上传至服务器,如

CentOS8软件安装总教程一_第9张图片

解压缩:tar -zxvf apache-tomcat-9.0.35.tar.gz,解压成功

 CentOS8软件安装总教程一_第10张图片

2.接着让防火墙开启8080端口:firewall-cmd --permanent --zone=public --add-port=8080/tcp

查看是否生效:firewall-cmd --zone=public --query-port=8080/tcp

然后重启防火墙:firewall-cmd --reload

3.进入tomcat的bin目录里:./startup.sh,

4.然后ps -ef | grep tomcat,发现线程已经启动了,到浏览器ip+8080如图成功。

 CentOS8软件安装总教程一_第11张图片

CentOS8软件安装总教程一_第12张图片

如果发现浏览器无法访问先./shutdown.sh在./startup.sh试试。 

Nginx安装

1.将压缩包上传至服务器,如图

CentOS8软件安装总教程一_第13张图片

解压:tar -zxvf nginx-1.18.0.tar.gz,如图成功。 

CentOS8软件安装总教程一_第14张图片

2.进入nginx目录,如图:

CentOS8软件安装总教程一_第15张图片

执行:./configure --prefix=/usr/local/nginx,即配置nginx并将文件放置到/usr/local/nginx目录内。

如图成功,但此时nginx目录仍看不到,还需make,make install

 CentOS8软件安装总教程一_第16张图片

 接着执行:make

 CentOS8软件安装总教程一_第17张图片

CentOS8软件安装总教程一_第18张图片

然后make install,然后看下nginx目录有了。 

CentOS8软件安装总教程一_第19张图片

3.启动nginx有两种,一种进入nginx的sbin里,执行./nginx即可

另一宗:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

然后ps -ef | grep nginx,如图成功 

Nginx体系结构有master进程和其worker进程组成,master进程读取配置文件,并维护worker进程,而worker进程则对请求进行实际处理;

检查nginx配置是否正确:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t

浏览器如果仍无法访问看看防火墙是否已开启80端口。 

4.两种方式:优雅关闭:  kill -QUIT 主pid(当一个请求已经在执行时不会受到影响,但此时已经关闭了,仍会让你把那个请求完成掉)   

 快速关闭:kill -term 主pid (不管有没有请求,都关闭掉,最后一个请求会中断不可进行)。

当nginx已经启动想要重启时,到sbin下执行  ./nginx -s reload即可。

Redis安装

压缩包上传至服务器并tar -xvf redis-5.0.5.tar.gz解压。

CentOS8软件安装总教程一_第20张图片

如图解压成功 

CentOS8软件安装总教程一_第21张图片

2.进入redis,执行make install 

这个过程是先编译再安装的过程,时间稍长。

如图安装成功

CentOS8软件安装总教程一_第22张图片

进入src目录启动redis-server启动redis.

CentOS8软件安装总教程一_第23张图片

如图启动成功,注意默认端口如图为6379,需要在防火墙开启这个端口并重启防火墙。

CentOS8软件安装总教程一_第24张图片

这里启动了以后,这个控制台就没法用了,需要例外开启一个控制台。

进入src,执行:redis-cli,如图即可使用

 CentOS8软件安装总教程一_第25张图片

伪分布式集群 

 CentOS8软件安装总教程一_第26张图片

CentOS8软件安装总教程一_第27张图片

CentOS8软件安装总教程一_第28张图片

步骤:

1.与redis同目录下创建一个文件夹redis-cluster,mkdir redis-cluster,然后进入分别创建8001-8006个文件夹。

防火墙开这6个端口:

CentOS8软件安装总教程一_第29张图片

如图 

 CentOS8软件安装总教程一_第30张图片

 2. cp redis-5.0.5/redis.conf redis-cluster/8001 将redis.conf复制到8001里并修改配置,

通过命令  /搜索内容,不要先点insert,去找配置的地方

1)/port  改  8001 

CentOS8软件安装总教程一_第31张图片

2)/bind  改  虚拟机的ip地址,不是本地电脑的IP

记得将下面的127.0.0.1注释掉,否则会默认为下面的端口,不会用你配置的端口。

CentOS8软件安装总教程一_第32张图片

3)/dir+空格 改为  dir /usr/local/redis-cluster/8001

CentOS8软件安装总教程一_第33张图片

4)/cluster-e改yes,指的是启动集群模式

CentOS8软件安装总教程一_第34张图片  

5)/cluster-conf

CentOS8软件安装总教程一_第35张图片

6)设置集群超时时间,比如redis搞了6个实例,其中一个实例挂了,并且超过了此处5s时间则该集群会被踢出去,

7)no 改为yes,表示日志模式开启了。

8)daemonize yes表示后台开启。

至此,一个改好了,另外5个实例同上搭建,但只需复制进去并批量改下端口号即可。

9)例如:进入8001文件夹,cp redis.conf ../8002,依次复制下去。

然后进入8002文件夹修改端口号:

:%s/源字符串/目的字符串/g

 CentOS8软件安装总教程一_第36张图片

10)依次修改完,依次启动redis服务器,

/usr/local/redis/bin/redis-server /usr/local/redis-cluster/8002/redis.conf

 CentOS8软件安装总教程一_第37张图片

11)由于redis集群需要使用ruby命令,所以我们需要安装ruby,因为它的集群模式就是用ruby脚本实现的。

      ①  yum install ruby

 

CentOS8软件安装总教程一_第38张图片

②  yum install rubygems

CentOS8软件安装总教程一_第39张图片

③安装redis和ruby的接口,版本与安装redis一致。如果报错,那就换个版本,例如改版本为4.2.0

   gem install redis --version 5.0.5 

 CentOS8软件安装总教程一_第40张图片

在redis的src目录下有个redis-trib.rb就是ruby的原生脚本。

CentOS8软件安装总教程一_第41张图片

最后一步最关键的命令,启动集群,进入原生redis的src目录下命令:

Redis脚本有个规定,前面8001-3三台就是主服务器,后面三台就是从,1是指主/从比。如果三主6从,则是0.5。主节点第一台8001对应从节点第一台8004,这也是规定。

启动集群。

./redis-cli --cluster create 192.168.1.200:8001 192.168.1.200:8002 192.168.1.200:8003 192.168.1.200:8004 192.168.1.200:8005 192.168.1.200:8006 --cluster-replicas 1

如果报拒绝连接,看看防火墙是否开启了端口或者虚拟机网络看看。如图成功启动集群。 

 CentOS8软件安装总教程一_第42张图片

然后输入yes

CentOS8软件安装总教程一_第43张图片

连接某一台集群看看

/usr/local/redis/bin/redis-cli -c -h 192.168.1.200 -p 8001, 查看集群状态:cluster info,详尽信息:cluster nodes

 CentOS8软件安装总教程一_第44张图片

内部会做重定向算法,类似于负载均衡。于是name只会保存在8002里。以后用到name会专门重定向到8002里取值。

CentOS8软件安装总教程一_第45张图片

一主一从唯一的标识。

Redis测试实验

package com.example.demo.java;

import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;
import redis.clients.jedis.JedisPoolConfig;

import java.io.IOException;
import java.util.HashSet;
import java.util.Set;

/**
 * @author yangss
 * @time 2020/6/13 - 14:12
 */
public class RedisCluster {
    public static void main(String[] args) throws IOException {
        Set jedisClusterNode = new HashSet();
        jedisClusterNode.add(new HostAndPort("192.168.1.200",8001));
        jedisClusterNode.add(new HostAndPort("192.168.1.200",8002));
        jedisClusterNode.add(new HostAndPort("192.168.1.200",8003));
        jedisClusterNode.add(new HostAndPort("192.168.1.200",8004));
        jedisClusterNode.add(new HostAndPort("192.168.1.200",8005));
        jedisClusterNode.add(new HostAndPort("192.168.1.200",8006));

        JedisPoolConfig config = new JedisPoolConfig();
        config.setMaxTotal(100);
        config.setMaxIdle(10);
        config.setTestOnBorrow(true);
        JedisCluster jedisCluster = new JedisCluster(jedisClusterNode, 6000,10,config);
        System.out.println(jedisCluster.set("student","arron"));
        System.out.println(jedisCluster.set("age","18"));
        System.out.println(jedisCluster.get("student"));
        System.out.println(jedisCluster.get("age"));
        jedisCluster.close();
    }
}

后台进入一个8001端口,然后获取get student成功

CentOS8软件安装总教程一_第46张图片

演示主从切换

例如关掉主节点8001:/usr/local/redis/bin/redis-cli -c -h 192.168.1.200 -p 8001 shutdown,然后ps看下进程关闭成功,目前只剩5台服务器。

CentOS8软件安装总教程一_第47张图片

进入8002查看cluster nodes状态如下,显示为fail,然后发现8005变成了主,这个有点疑惑为何不是8004。

Redis内部集群数据是分来存储的,如果数据在第一台,那么访问第三台则会自动重定向到第一台。

如上图目前的三台主服务器后的0-5460,5461-10922,10923-16383代表的是存储空间,互相之间的数据没有关系。

CentOS8软件安装总教程一_第48张图片

Redis集群水平扩展是很复杂的一件事,zookeeper比较方便,自动扩展。Redis底层的分片通讯原理,分片原理这些bat最喜欢问,准备下。

Redis连接RedisDesktopManage可视化工具

 需要设置密码才能连接成功。使用远程工具连接前先杀掉所有redis进程,然后

 修改redis文件夹下redis.conf文件,在bind 127.0.0.1行前面加#注释掉这一行

 CentOS8软件安装总教程一_第49张图片

config set requirepass 123

CentOS8软件安装总教程一_第50张图片

然后连接成功

 CentOS8软件安装总教程一_第51张图片

 二篇继续

你可能感兴趣的:(IT,java)