【Linux系统基础】(2)在Linux上部署MySQL、RabbitMQ、ElasticSearch等各类软件

实战章节:在Linux上部署各类软件

在这里插入图片描述

前言

为什么学习各类软件在Linux上的部署

在前面,我们学习了许多的Linux命令和高级技巧,这些知识点比较零散,同学们跟随着课程的内容进行练习虽然可以基础掌握这些命令和技巧的使用,但是并没有一些具体的实操能够串联起来这些知识点。

所以,现在我们设计了各类软件在Linux上部署安装的实战章节,可以让同学们:

  • 对前面学习的各类操作命令进行复习和练习,从而深度掌握它们
  • 本章节中演示部署的软件,包含了IT行业各类岗位中所必须使用的,如:Java后台、大数据开发、运维开发、测试、AI等。无论学习Linux后从事什么岗位,这些内容都会给你带来帮助

对于零基础学员,实战课程中所讲解的软件大概率多数大家并不了解。

所以,课程仅涉及到安装部署,不对软件的使用做详细说明。

同学们在这个过程中,可能会遇到各种各样的错误,不要怕,解决它,将会给你带来极大的提升。

学习目标

对于本部分的内容学习,我们设计两个目标:

  • 对于零基础或未从业的学员,不要求深入理解所安装部署的软件是什么,仅仅能够跟随课程成功的将其部署安装并运行成功即可

    在这个过程中,主要锻炼大家对Linux操作系统的熟练度,此乃零基础未从业学员的第一学习目标

  • 对于有基础或已从业的学员,本章节讲解的软件涵盖了大多数IT从业者所能接触到的,特别是大数据开发、后端开发两个主流方向,可以作为参考资料,以便在工作中有所帮助。

本章节内的各类软件安装,不强制要求全部学习

  1. 零基础学员,建议全部学习,作为前面学习内容的总结和实战
  2. IT从业者、有经验学员,可以按需选择,选择工作中需要用到的进行学习

章节内包含的软件并非100%涵盖了IT开发领域中所需要的内容。

如果您对某些软件的安装有强烈需求,且课程中没有提供教程,可以私信,老师会酌情根据时间安排补充上去哦。

从现在开始,将要进入到Linux的实操阶段,在这个阶段我们将会涉及到非常多的软件部署等操作,涉及到:

  • 各类命令的使用
  • 各种过程的结果
  • 复杂的流程步骤

前置要求

  1. 实战章节要求同学们务必全部学习前面的知识点,即:初识Linux、Linux基础命令、Linux权限管理、Linux高阶技巧这4个章节,请勿跳过前面的章节学习实战章节。
  2. 实战章节中会开启多台虚拟机,请尽量确保电脑的内存在:8GB(包含8GB)以上。如内存不足可以扩充内存条或购买阿里云、UCloud等云服务器临时使用(1个月多台低配服务器几十块左右)

对于云平台上购买服务器,可以参阅最后的章节(云服务)

注意

下面全部的软件安装的相关流程,90%都是取自软件自身的官方网站。

一个合格的程序员要有良好的信息收集能力哦

MySQL数据库管理系统安装部署【简单】

简介

MySQL数据库管理系统(后续简称MySQL),是一款知名的数据库系统,其特点是:轻量、简单、功能丰富。

MySQL数据库可谓是软件行业的明星产品,无论是后端开发、大数据、AI、运维、测试等各类岗位,基本上都会和MySQL打交道。

让我们从MySQL开始,进行实战的Linux软件安装部署。

本次课程分为2个版本进行安装:

  • MySQL 5.7版本安装
  • MySQL 8.x版本安装

由于MySQL5.x和8.x各自有许多使用者,所以这两个版本我们都演示安装一遍

注意

MySQL的安装过程中,除了会使用Linux命令外,还会使用到少量的数据库专用的:SQL语句

对于SQL语句我们并未涉及,所以可以跟随教程的内容,复制粘贴即可

如有时间,建议可以在学习完Linux系统之后,学习一下MySQL数据库

无论从事什么方面的开发,Java后端、大数据、AI、前端、Linux运维等,都会要求掌握MySQL数据库的

可以说,MySQL是IT开发从业者必备的技能了。

MySQL5.7版本在CentOS系统安装

注意:安装操作需要root权限

MySQL的安装我们可以通过前面学习的yum命令进行。

安装

  1. 配置yum仓库

    # 更新密钥
    rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
    
    # 安装Mysql yum库
    rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm
    

    image-20221012182514865

    由于MySQL并不在CentOS的官方仓库中,所以我们通过上述rpm命令:

    • 导入MySQL仓库的密钥
    • 配置MySQLQ的yum仓库
  2. 使用yum安装MySQL

    # yum安装Mysql
    yum -y install mysql-community-server
    

    image-20221012182555420

  3. 安装完成后,启动MySQL并配置开机自启动

    systemctl start mysqld		# 启动
    systemctl enable mysqld		# 开机自启
    

    MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理

  4. 检查MySQL的运行状态

    systemctl status mysqld
    

    image-20221012182716598

配置

主要配置管理员用户root的密码以及配置允许远程登录的权限。

  1. 获取MySQL的初始密码

    # 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
    grep 'temporary password' /var/log/mysqld.log
    

    image-20221012182744115

  2. 登陆MySQL数据库系统

    # 执行
    mysql -uroot -p
    # 解释
    # -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root
    # -p,表示使用密码登陆
    
    # 执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库
    

    image-20221012182805966

  3. 修改root用户密码

    # 在MySQL控制台内执行
    ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
    
  4. [扩展],配置root的简单密码

    我们可以给root设置简单密码,如123456.

    请注意,此配置仅仅是用于测试环境或学习环境的MySQL,如果是正式使用,请勿设置简单密码

    # 如果你想设置简单密码,需要降低Mysql的密码安全级别
    set global validate_password_policy=LOW; # 密码安全级别低
    set global validate_password_length=4;	 # 密码长度最低4位即可
    
    # 然后就可以用简单密码了(课程中使用简单密码,为了方便,生产中不要这样)
    ALTER USER 'root'@'localhost' IDENTIFIED BY '简单密码';
    
  5. [扩展],配置root运行远程登录

    默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统

    请注意,允许root远程登录会带来安全风险

    # 授权root远程登录
    grant all privileges on *.* to root@"IP地址" identified by '密码' with grant option;  
    # IP地址即允许登陆的IP地址,也可以填写%,表示允许任何地址
    # 密码表示给远程登录独立设置密码,和本地登陆的密码可以不同
    
    # 刷新权限,生效
    flush privileges;
    
  6. 退出MySQL控制台页面

    # 退出命令
    exit
    
    # 或者通过快捷键退出:ctrl + d
    
  7. 检查端口

    MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

    netstat -anp | grep 3306
    

    image-20221012183746802

至此,MySQL就安装完成并可用了,请妥善保存好MySQL的root密码。

MySQL8.0版本在CentOS系统安装

注意:安装操作需要root权限

安装

  1. 配置yum仓库

    # 更新密钥
    rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
    
    # 安装Mysql8.x版本 yum库
    rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
    
  2. 使用yum安装MySQL

    # yum安装Mysql
    yum -y install mysql-community-server
    
  3. 安装完成后,启动MySQL并配置开机自启动

    systemctl start mysqld		# 启动
    systemctl enable mysqld		# 开机自启
    

    MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理

  4. 检查MySQL的运行状态

    systemctl status mysqld
    

配置

主要修改root密码和允许root远程登录

  1. 获取MySQL的初始密码

    # 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
    grep 'temporary password' /var/log/mysqld.log
    
  2. 登录MySQL数据库系统

    # 执行
    mysql -uroot -p
    # 解释
    # -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root
    # -p,表示使用密码登陆
    
    # 执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库
    
  3. 修改root密码

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
    
  4. [扩展],配置root的简单密码

    我们可以给root设置简单密码,如123456.

    请注意,此配置仅仅是用于测试环境或学习环境的MySQL,如果是正式使用,请勿设置简单密码

    set global validate_password.policy=0;		# 密码安全级别低
    set global validate_password.length=4;		# 密码长度最低4位即可
    
  5. 允许root远程登录,并设置远程登录密码

    默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统

    请注意,允许root远程登录会带来安全风险

    # 第一次设置root远程登录,并配置远程密码使用如下SQL命令
    create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码!';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
    
    # 后续修改密码使用如下SQL命令
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
    
  6. 退出MySQL控制台页面

    # 退出命令
    exit
    
    # 或者通过快捷键退出:ctrl + d
    
  7. 检查端口

    MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

    netstat -anp | grep 3306
    

    image-20221012192303607

至此,MySQL就安装完成并可用了,请妥善保存好MySQL的root密码。

MySQL5.7版本在Ubuntu(WSL环境)系统安装

课程中配置的WSL环境是最新的Ubuntu22.04版本,这个版本的软件商店内置的MySQL是8.0版本

所以我们需要额外的步骤才可以安装5.7版本的MySQL

安装操作需root权限,你可以:

  1. 通过 sudo su -,切换到root用户

    课程中选择这种方式操作

  2. 或在每一个命令前,加上sudo,用来临时提升权限

安装

  1. 下载apt仓库文件

    # 下载apt仓库的安装包,Ubuntu的安装包是.deb文件
    wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
    

    image-20221016094103315

  2. 配置apt仓库

    # 使用dpkg命令安装仓库
    dpkg -i mysql-apt-config_0.8.12-1_all.deb
    

    弹出框中选择:ubuntu bionic (Ubuntu18.04系统的代号是bionic,选择18.04的版本库用来安装)

    image-20221016094142343

    弹出框中选择:MySQL Server & Cluster

    image-20221016094216377

    弹出框中选择:mysql-5.7

    image-20221016094254397

    最后选择:ok

    image-20221016094306917

  3. 更新apt仓库的信息

    # 首先导入仓库的密钥信息
    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
    # 更新仓库信息
    apt update
    
  4. 检查是否成功配置MySQL5.7的仓库

    apt-cache policy mysql-server
    

    image-20221016094546943

    看到如图所示字样,即成功

  5. 安装MySQL5.7

    # 使用apt安装mysql客户端和mysql服务端
    apt install -f -y mysql-client=5.7* mysql-community-server=5.7*
    

    弹出框中输入root密码并选择ok,密码任意,课程中以123456代替

    image-20221016094941439

    再次输入root密码确认

    image-20221016094954505

  6. 启动MySQL

    /etc/init.d/mysql start			# 启动
    /etc/init.d/mysql stop			# 停止
    /etc/init.d/mysql status		# 查看状态
    

    image-20221016095259172

  7. 对MySQL进行初始化

    # 执行如下命令,此命令是MySQL安装后自带的配置程序
    mysql_secure_installation
    # 可以通过which命令查看到这个自带程序所在的位置
    root@DESKTOP-Q89USRE:~# which mysql_secure_installation
    /usr/bin/mysql_secure_installation
    
    1. 输入密码:

      image-20221016095458755

    2. 是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要直接回车(课程中选择直接回车)

      image-20221016095537716

    3. 是否更改root密码,需要输入y回车,不需要直接回车(课程不更改)

      image-20221016095621386

    4. 是否移除匿名用户,移除输入y回车,不移除直接回车(课程选择移除)

      image-20221016101232827

    5. 是否进制root用户远程登录,禁止输入y回车,不禁止直接回车(课程选择不禁止)

      image-20221016101324577

    6. 是否移除自带的测试数据库,移除输入y回车,不移除直接回车(课程选择不移除)

      image-20221016101404392

    7. 是否刷新权限,刷新输入y回车,不刷新直接回车(课程选择刷新)

      image-20221016101442459

  8. 登陆MySQL

    mysql -uroot -p
    # 输入密码即可登陆成功
    

    image-20221016101524498

至此,在Ubuntu上安装MySQL5.7版本成功。

MySQL8.0版本在Ubuntu(WSL环境)系统安装

课程中配置的WSL环境是最新的Ubuntu22.04版本,这个版本的软件商店内置的MySQL是8.0版本

所以直接可以通过apt安装即可

注意,课程是以WSL获得的Ubuntu操作系统环境。

如果你通过VMware虚拟机的方式获得了Ubuntu操作系统环境,操作步骤不用担心,和课程中使用WSL环境是完全一致的

安装操作需root权限,你可以:

  1. 通过 sudo su -,切换到root用户

    课程中选择这种方式操作

  2. 或在每一个命令前,加上sudo,用来临时提升权限

安装

  1. 如果已经安装过MySQL5.7版本,需要卸载仓库信息哦

    # 卸载MySQL5.7版本
    apt remove -y mysql-client=5.7* mysql-community-server=5.7*
    
    # 卸载5.7的仓库信息
    dpkg -l | grep mysql | awk '{print $2}' | xargs dpkg -P
    
  2. 更新apt仓库信息

    apt update
    
  3. 安装mysql

    apt install -y mysql-server
    
  4. 启动MySQL

    /etc/init.d/mysql start			# 启动
    /etc/init.d/mysql stop			# 停止
    /etc/init.d/mysql status		# 查看状态
    
  5. 登陆MySQL设置密码

    # 直接执行:mysql
    mysql
    
  6. 设置密码

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
    
  7. 退出MySQL控制台

    exit
    
  8. 对MySQL进行初始化

    # 执行如下命令,此命令是MySQL安装后自带的配置程序
    mysql_secure_installation
    # 可以通过which命令查看到这个自带程序所在的位置
    root@DESKTOP-Q89USRE:~# which mysql_secure_installation
    /usr/bin/mysql_secure_installation
    
    1. 输入密码:

      image-20221016095458755

    2. 是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要直接回车(课程中选择直接回车)

      image-20221016095537716

    3. 是否更改root密码,需要输入y回车,不需要直接回车(课程不更改)

      image-20221016095621386

    4. 是否移除匿名用户,移除输入y回车,不移除直接回车(课程选择移除)

      image-20221016101232827

    5. 是否进制root用户远程登录,禁止输入y回车,不禁止直接回车(课程选择不禁止)

      image-20221016101324577

    6. 是否移除自带的测试数据库,移除输入y回车,不移除直接回车(课程选择不移除)

      image-20221016101404392

    7. 是否刷新权限,刷新输入y回车,不刷新直接回车(课程选择刷新)

      image-20221016101442459

  9. 重新登陆MySQL(用更改后的密码)

    mysql -uroot -p
    

    image-20221016110414182

至此,在Ubuntu上安装MySQL5.7版本成功。

RabbitMQ安装部署【简单】

简介

RabbitMQ一款知名的开源消息队列系统,为企业提供消息的发布、订阅、点对点传输等消息服务。

RabbitMQ在企业开发中十分常见,课程为大家演示快速搭建RabbitMQ环境。

安装

rabbitmq在yum仓库中的版本比较老,所以我们需要手动构建yum仓库

  1. 准备yum仓库

    # root执行
    # 1. 准备gpgkey密钥
    rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    rpm --import https://packagecloud.io/rabbitmq/erlang/gpgkey
    rpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
    
    # 2. 准备仓库文件
    vim /etc/yum.repos.d/rabbitmq.repo
    # 填入如下内容
    ##
    ## Zero dependency Erlang
    ##
    
    [rabbitmq_erlang]
    name=rabbitmq_erlang
    baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
    repo_gpgcheck=1
    gpgcheck=1
    enabled=1
    # PackageCloud's repository key and RabbitMQ package signing key
    gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
           https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300
    
    [rabbitmq_erlang-source]
    name=rabbitmq_erlang-source
    baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
    repo_gpgcheck=1
    gpgcheck=0
    enabled=1
    # PackageCloud's repository key and RabbitMQ package signing key
    gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
           https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300
    
    ##
    ## RabbitMQ server
    ##
    
    [rabbitmq_server]
    name=rabbitmq_server
    baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
    repo_gpgcheck=1
    gpgcheck=0
    enabled=1
    # PackageCloud's repository key and RabbitMQ package signing key
    gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
           https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300
    
    [rabbitmq_server-source]
    name=rabbitmq_server-source
    baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/SRPMS
    repo_gpgcheck=1
    gpgcheck=0
    enabled=1
    gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300
    
  2. 安装RabbitMQ

    # root执行
    yum install erlang rabbitmq-server -y
    
    Installed:
      erlang.x86_64 0:23.3.4.11-1.el7           rabbitmq-server.noarch 0:3.10.0-1.el7
    
  3. 启动

    # root执行
    # 使用systemctl管控,服务名:rabbitmq-server
    systemctl enable rabbitmq-server		# 开机自启
    systemctl disable rabbitmq-server		# 关闭开机自启
    systemctl start rabbitmq-server			# 启动
    systemctl stop rabbitmq-server			# 关闭
    systemctl status rabbitmq-server		# 查看状态
    
  4. 放行防火墙,RabbitMQ使用5672、15672、25672 3个端口

    # 方式1(推荐),关闭防火墙
    systemctl stop firewalld		# 关闭
    systemctl disable firewalld		# 关闭开机自启
    
    # 方式2,放行5672 25672端口
    firewall-cmd --add-port=5672/tcp --permanent		# 放行tcp规则下的5672端口,永久生效
    firewall-cmd --add-port=15672/tcp --permanent		# 放行tcp规则下的15672端口,永久生效
    firewall-cmd --add-port=25672/tcp --permanent		# 放行tcp规则下的25672端口,永久生效
    firewall-cmd --reload								# 重新加载防火墙规则
    
  5. 启动RabbitMQ的WEB管理控制台

    rabbitmq-plugins enable rabbitmq_management
    
  6. 添加admin用户,并赋予权限

    rabbitmqctl add_user admin 'Itheima66^'
    rabbitmqctl set_permissions -p "/" "admin" ".*" ".*" ".*"
    rabbitmqctl set_user_tags admin administrator
    
  7. 浏览器打开管理控制台

    http://192.168.88.130:15672

    image-20221018154823983

至此,RabbitMQ已经安装完成了。

Redis安装部署【简单】

简介

redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。

redis的特点就是:,可以基于内存存储数据并提供超低延迟、超快的检索速度

一般用于在系统中提供快速缓存的能力。

安装

  1. 配置EPEL仓库

    EPEL 的全称叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。EPEL则为服务器版本提供大量的rpm包(yum程序所使用的程序安装包,类似Windows的exe),而且大多数rpm包在官方 repository 中是找不到的。

    # root执行
    yum install -y epel-release
    
  2. 安装redis

    # root执行
    yum install -y redis
    
  3. 启动redis

    # root执行
    # 使用systemctl管控,服务名:redis
    systemctl enable redis		# 开机自启
    systemctl disable redis		# 关闭开机自启
    systemctl start redis		# 启动
    systemctl stop redis		# 关闭
    systemctl status redis		# 查看状态
    
  4. 放行防火墙,redis使用端口6379

    # 方式1(推荐),关闭防火墙
    systemctl stop firewalld		# 关闭
    systemctl disable firewalld		# 关闭开机自启
    
    # 方式2,放行6379端口
    firewall-cmd --add-port=6379/tcp --permanent		# 放行tcp规则下的6379端口,永久生效
    firewall-cmd --reload	
    
  5. 进入redis服务

    # 执行redis-cli
    [root@centos ~]# redis-cli
    127.0.0.1:6379> set mykey hello
    OK
    127.0.0.1:6379> get mykey
    "hello"
    127.0.0.1:6379> 
    

至此,redis安装完成。

ElasticSearch安装部署

简介

全文搜索属于最常见的需求,开源的 Elasticsearch (以下简称 es)是目前全文搜索引擎的首选。

它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。

Elasticsearch简称es,在企业内同样是一款应用非常广泛的搜索引擎服务。

很多服务中的搜索功能,都是基于es来实现的。

安装

  1. 添加yum仓库

    # root执行
    # 导入仓库密钥
    rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
    
    # 添加yum源
    # 编辑文件 
    vim /etc/yum.repos.d/elasticsearch.repo
    
    [elasticsearch-7.x]
    name=Elasticsearch repository for 7.x packages
    baseurl=https://artifacts.elastic.co/packages/7.x/yum
    gpgcheck=1
    gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
    enabled=1
    autorefresh=1
    type=rpm-md
    
    
    # 更新yum缓存
    yum makecache
    
  2. 安装es

    yum install -y elasticsearch
    
  3. 配置es

    vim /etc/elasticsearch/elasticsearch.yml
    
    # 17行,设置集群名称
    cluster.name: my-cluster
    
    # 23行,设置节点名称
    node.name: node-1
    
    # 56行,允许外网访问
    network.host: 0.0.0.0
    
    # 74行,配置集群master节点
    cluster.initial_master_nodes: ["node-1"]
    
  4. 启动es

    systemctl start | stop | status | enable | disable elasticsearch
    
  5. 关闭防火墙

    systemctl stop firewalld
    systemctl disable firewalld
    
  6. 测试

    浏览器打开:http://ip:9200/?pretty

    image-20221025085432335

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/272513.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux基础】6. 进程管理工具

文章目录 【 1. 查询进程 】【 2. 终止进程 】【 3. top 进程监控 】【 4. pmap 分析线程栈 】【 5. 综合运用 】 任何进程都与文件关联;我们会用到 lsof 工具(list opened files),作用是列举系统中已经被打开的文件。在 linux环境…

【MySQL】数据库之日志管理、备份与恢复

目录 一、MySQL的日志管理 二、MySQL的完全备份与恢复 物理冷备份(完全备份)与恢复 数据库上云迁移的方案? 逻辑热备份(完全备份)与恢复 三、MySQL的增量备份与恢复 1、手动增量备份 2、脚本增量备份 3、增量备…

华为鸿蒙的发展史:从初创到全球领先的科技之旅

华为鸿蒙操作系统的发展历程堪称科技领域的传奇。作为中国科技产业的璀璨明星,鸿蒙系统在面临外部压力与挑战的同时,凭借着华为的坚定信念与不懈努力,逐步崛起成为全球领先的智能终端操作系统。本文将带您深入了解华为鸿蒙的发展史&#xff0…

ThreadPoolExecutor使用浅谈

1. 基础介绍 ThreadPoolExecutor是Python标准库concurrent.futures模块中的一个类,用于实现线程池的功能。 ThreadPoolExecutor模块相比于threading等模块,通过submit方法返回的是一个Future对象,它代表了一个未来可期的结果。通过Future对…

一文教你如何绕过统一认证拿到赏金

1.漏洞背景 统一认证通常是一种安全措施,用于验证用户的身份,以确保只有授权的用户才能访问敏感或受限的信息和服务。 当你尝试访问某个需要特定权限的网站或服务时,系统会将你重定向到一个统一认证页面。在这里,你需要输入你的登…

【鸿蒙应用ArkTS开发系列】- 沉浸式状态栏实现

文章目录 一、前言二、封装沉浸式状态栏管理类1、创建Demo工程2、封装状态栏管理类 三、编写页面实现沉浸式状态栏效果1、存储windowStage实例2、Page页面中实现沉浸式开启关闭功能2.1、开启沉浸式状态栏2.2、设置标题栏偏移量 一、前言 在应用开发中,页面跟状态栏…

Java代码审计鉴权漏洞InterceptorFilterShiroJWT(非常详细!!)

目录 0x00 前言 0x01 鉴权方式&审计思路 1、目前主流的鉴权方式 2、鉴权漏洞审计思路 0x02 Interceptor鉴权审计 - NewbeeMall电商系统 1、项目介绍 - NewbeeMall 2、Interceptor 补充介绍 3、NewbeeMall - Interceptor鉴权 - 代码审计 0x03 Filter鉴权审计 - 华…

PostGIS学习教程十五:几何图形的有效性

PostGIS学习教程十五:几何图形的有效性 在90%的情况下,“为什么我的查询给了我一个’TopologyException’错误"的问题的答案是"一个或多个输入的几何图形是无效的”,这就引出了这样一个问题:几何图形"无效"是什么意思&a…

JAVA复习三——CH5 Java Collection 、CH6 MultiThread

CH5 Java Collection(集合) 5.1 Java集合框架(位于java.util包中) 图一 集合框架图 从上面的集合框架图可以看到,Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集…

pytest分布式执行插件 pytest-xdist 的高级用法

想要使用多个CPU核心来进行测试,可以使用 -n 参数( 或者 --numprocesses) (使用8个核心来跑测试用例) 1 pytest -n 8 使用 -n auto 参数可以利用电脑的所有核心来跑测试用例 测试时使用的算法可以根据--dist命令参数定制: --dist load(默认选项)&…

手拉手Springboot整合JWT

环境介绍 技术栈 springbootmybatis-plusmysqljava-jwt 软件 版本 mysql 8 IDEA IntelliJ IDEA 2022.2.1 JDK 1.8 Spring Boot 2.7.13 mybatis-plus 3.5.3.2 Json Web令牌简称JWT Token是在服务端产生的一串字符串是客户端访问资源接口(AP)时所需要的资源凭证。…

【多省市译协盖章】2023年第九届中西部外语翻译大赛

“由中西部翻译协会共同体指导发起,各省市译协共建学术指导委员会,2023年第九届中西部外语翻译大赛由中西部翻译协会共同体秘书处(武汉公仪网络科技有限公司)承办。” (证书样图) 证书盖章单位&#xff1…

文件重命名:特殊符号影响你找文件吗?来看看这个解决方法

在日常生活和工作中,电脑已经成为必不可少的工具,而文件管理也是一项重要的任务。有时候遇到文件重命名的问题,例如当文件名中包含特殊符号时,这可能会给工作带来很大的困扰。当尝试寻找一个文件时,却发现因为文件名中…

Linux的账号及权限管理

一.管理用户账号 1.1 用户账户的分类 1.1.1 用户账号的分类 超级用户:(拥有至高无上的权利) root用户是Linux操作系统中默认的超级用户账号,对本主机拥有最高的权限,系统中超级用户是唯一的。普通用户: …

c++学习笔记(6)-类型转换

1、概念 C类型转换是将一种数据类型转换为另一种数据类型的过程。 2、分类 C中的类型转换可以从3个角度来划分: 根据类型转换是由程序员显式指定,还是由编译器自动完成,分为显式类型转换和隐式类型转换;根据参与类型转换的变量…

智能优化算法应用:基于减法平均算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于减法平均算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于减法平均算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.减法平均算法4.实验参数设定5.算法结果6.…

测试用例要如何写

​ 📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢交流讨论:欢迎加入我们一起学习!📢资源分享:耗时200小时精选的「软件测试…

IDEA基本设置

本博客适用于纯新手小白,或者刚下载IDEA想要优化开发添加配置的读者。 基础设置 不区分大小写代码补全 打开 IntelliJ IDEA。转到 “File”(文件) > “Settings”(设置)(Windows/Linux)或 “…

swagger1.2 apiPost工具测试接口没有问题,换成swagger 接口调测时报错 Required request body is missing

把 请求方法由get换成post GetMapping换成 PostMapping 原因apiPost自动把请求json参数封装到请求体里了, 但swagger没有封装,通过networker可以看到载荷里并没有任何东西

(C++)DS哈希查找—二次探测再散列(附思路和详细注释)

Description 定义哈希函数为H(key) key%11。输入表长(大于、等于11),输入关键字集合,用二次探测再散列构建哈希表,并查找给定关键字。 Input 测试数据组数 1≤�≤50. 每组测试数据格式如下&#xff1a…