在Linux上部署RabbitMQ、Redis、ElasticSearch

文章目录

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

至此,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
  1. 安装redis

    root执行

    yum install -y redis

  2. 启动redis

    root执行

    使用systemctl管控,服务名:redis

    systemctl enable redis # 开机自启
    systemctl disable redis # 关闭开机自启
    systemctl start redis # 启动
    systemctl stop redis # 关闭
    systemctl status redis # 查看状态

  3. 放行防火墙,redis使用端口6379

    方式1(推荐),关闭防火墙

    systemctl stop firewalld # 关闭
    systemctl disable firewalld # 关闭开机自启

    方式2,放行6379端口

    firewall-cmd --add-port=6379/tcp --permanent # 放行tcp规则下的6379端口,永久生效
    firewall-cmd --reload

  4. 进入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

至此ES安装完成。

本人水平有限,有错的地方还请批评指正。

什么是精神内耗?

简单地说,就是心理戏太多,自己消耗自己。

所谓:

言未出,结局已演千百遍;

身未动,心中已过万重山;

行未果,假想灾难愁不展;

事已闭,过往仍在脑中演。

相关推荐
雪饼android之路16 小时前
【Android】 android suspend/resume总结(3)
android·linux
老黄编程16 小时前
ubuntu如何查看一个内核模块被什么模块依赖(内核模块信息常用命令)?
linux·运维·ubuntu
知北游天16 小时前
Linux网络:使用UDP实现网络通信(服务端&&客户端)
linux·网络·udp
半桔17 小时前
【网络编程】TCP 粘包处理:手动序列化反序列化与报头封装的完整方案
linux·网络·c++·网络协议·tcp/ip
<但凡.17 小时前
Linux 修炼:进程控制(一)
linux·运维·服务器·bash
✎﹏赤子·墨筱晗♪18 小时前
Ansible Playbook 入门指南:从基础到实战
linux·服务器·ansible
乌萨奇也要立志学C++19 小时前
【Linux】进程概念(六):进程地址空间深度解析:虚拟地址与内存管理的奥秘
linux·运维
月殇_木言1 天前
Linux 线程
linux
wangjialelele1 天前
Linux中的线程
java·linux·jvm·c++
ANYOLY1 天前
Redis 面试宝典
数据库·redis·面试