本文是作者学习kuberSphere过程中的具体搭建流程,供需要的小伙伴一起学习进步,具体中间件包括:MySQL、Redis、ElasticSearch、RabbitMQ。搭建的过程从最基础的部分开始,可能比直接通过应用商店部署应用的方式复杂。但可以更加深入理解整体的搭建过程。后续真实需求场景,为方便起见,可以考虑直接通过应用商店的方式部署。本文的RabbitMQ中间件采用了应用的方式部署,供读者参考。enjoy!

1 MySQL搭建

1631544800244-cd4ed8a8-06d0-40bc-9752-dd0ba9df325c.png

1.1 添加mysql的配置文件

  1. 创建新的配置文件
image-20220429102842467.png

  1. 编辑conf的基本信息,包括名称和描述信息
image-20220429103024950.png

  1. 编辑conf的配置信息,其中的键作为文件名,值作为文件中的内容
image-20220429103135445.png

# my.cnf
[client]
default-character-set=utf8mb4[mysql]
default-character-set=utf8mb4[mysqld]
init_connect='SET collation_connection = utf8mb4_unicode_ci'
init_connect='SET NAMES utf8mb4'
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
  1. 创建配置文件成功
image-20220429103205231.png

1.2 创建mysql的服务

  1. 创建新的服务
image-20220429103313648.png

  1. 由于mysql需要保存数据,需要创建有状态的服务
image-20220429103356175.png

  1. 编写服务的基本信息
image-20220429103430019.png

  1. 添加容器镜像
image-20220429103521401.png

  1. 初始化密码设置并同步主机时区
MYSQL_ROOT_PASSWORD=199748
image-20220429103558840.png

  1. 添加挂载的存储卷模版(模块会为每个实例挂载对应的data卷,而不是只存在一个卷被所有实例共享)
/var/lib/mysql
image-20220429103937485.png

image-20220429103817368.png

  1. 添加服务的配置文件(会将配置文件挂载至对应的挂载目录下,仅仅包含挂载的文件,其他文件存在也会被覆盖)
/etc/mysql/conf.d
image-20220429104009157.png

image-20220429104038101.png

1.3 配置外网访问端口

  1. 创建自定义方式的服务
image-20220429104348076.png

  1. 编写服务基本信息
image-20220429104436524.png

  1. 指定工作负载,并设置容器端口
image-20220429104527226.png

  1. 指定外网访问
image-20220429104550075.png

image-20220429104605723.png

1.4 连接测试

  1. 集群内部可以通过DNS域名访问mysql
image-20220429104754284.png

  1. 集群外部可以通过NodePort暴露的port访问
image-20220429104940955.png

2 Redis 搭建

1631610241479-a4dc9586-872d-49ef-95a0-2d0116c9b9ed.png

2.1 添加 redis 配置文件

  1. 创建新的配置文件,填写redis的基本信息
image-20220429143957046.png

  1. 编辑conf的配置信息,其中的键作为文件名,值作为文件中的内容
# redis.conf
appendonly yes
port 6379
bind 0.0.0.0
image-20220429144105866.png

  1. 创建配置文件成功
image-20220429144151914.png

2.2 创建 redis 的服务

  1. 创建新的服务,由于redis需要缓存数据至本地,需要创建有状态的服务
image-20220429103356175.png

  1. 编写服务的基本信息
image-20220429144334755.png

  1. 添加容器
image-20220429144431014.png

  1. 添加redis的启动命令并同步主机时区
redis-server /etc/redis/redis.conf
image-20220429144526669.png

  1. 添加挂载的存储卷模版(模块会为每个实例挂载对应的data卷,而不是只存在一个卷被所有实例共享)
/data
image-20220429103937485.png

image-20220429144746259.png

  1. 添加服务的配置文件(会将配置文件挂载至对应的挂载目录下,仅仅包含挂载的文件,其他文件存在也会被覆盖)
/etc/redis/
image-20220429144921859.png

2.3 配置外网访问端口

参考 MySQL 搭建的流程,与其一致,指定为NodePort形式

2.4 连接测试

  1. 集群内部可以通过DNS域名访问 redis
image-20220429150529574.png

  1. 集群外部可以通过NodePort暴露的port访问
image-20220429150716489.png

3 ElasticSearch 搭建

1631609524580-f264a6dc-e619-4843-a717-b8852716785d.png

3.1 添加 ES 配置文件

  1. 编写基础配置信息
image-20220429160349307.png

  1. 添加两个配置信息
  • elasticsearch配置信息
# elasticsearch.yml
cluster.name: "docker-cluster"
network.host: 0.0.0.0
image-20220429160501597.png

  • jvm配置信息
# jvm.options
################################################################
##
## JVM configuration
##
################################################################
##
## WARNING: DO NOT EDIT THIS FILE. If you want to override the
## JVM options in this file, or set any additional options, you
## should create one or more files in the jvm.options.d
## directory containing your adjustments.
##
## See https://www.elastic.co/guide/en/elasticsearch/reference/current/jvm-options.html
## for more information.
##
################################################################################################################################
## IMPORTANT: JVM heap size
################################################################
##
## The heap size is automatically configured by Elasticsearch
## based on the available memory in your system and the roles
## each node is configured to fulfill. If specifying heap is
## required, it should be done through a file in jvm.options.d,
## and the min and max should be set to the same value. For
## example, to set the heap to 4 GB, create a new file in the
## jvm.options.d directory containing these lines:
##
## -Xms4g
## -Xmx4g
##
## See https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html
## for more information
##
################################################################################################################################
## Expert settings
################################################################
##
## All settings below here are considered expert settings. Do
## not adjust them unless you understand what you are doing. Do
## not edit them in this file; instead, create a new file in the
## jvm.options.d directory containing your adjustments.
##
################################################################## GC configuration
8-13:-XX:+UseConcMarkSweepGC
8-13:-XX:CMSInitiatingOccupancyFraction=75
8-13:-XX:+UseCMSInitiatingOccupancyOnly## G1GC Configuration
# NOTE: G1 GC is only supported on JDK version 10 or later
# to use G1GC, uncomment the next two lines and update the version on the
# following three lines to your version of the JDK
# 10-13:-XX:-UseConcMarkSweepGC
# 10-13:-XX:-UseCMSInitiatingOccupancyOnly
14-:-XX:+UseG1GC## JVM temporary directory
-Djava.io.tmpdir=${ES_TMPDIR}## heap dumps# generate a heap dump when an allocation from the Java heap fails; heap dumps
# are created in the working directory of the JVM unless an alternative path is
# specified
-XX:+HeapDumpOnOutOfMemoryError# specify an alternative path for heap dumps; ensure the directory exists and
# has sufficient space
-XX:HeapDumpPath=data# specify an alternative path for JVM fatal error logs
-XX:ErrorFile=logs/hs_err_pid%p.log## JDK 8 GC logging
8:-XX:+PrintGCDetails
8:-XX:+PrintGCDateStamps
8:-XX:+PrintTenuringDistribution
8:-XX:+PrintGCApplicationStoppedTime
8:-Xloggc:logs/gc.log
8:-XX:+UseGCLogFileRotation
8:-XX:NumberOfGCLogFiles=32
8:-XX:GCLogFileSize=64m# JDK 9+ GC logging
9-:-Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,pid,tags:filecount=32,filesize=64m
image-20220429160557916.png

  1. 创建配置文件成功
image-20220429160801015.png

3.2 创建 es 服务

  1. 创建有状态服务,由于es需要存储数据
image-20220429160845193.png

  1. 编写服务基本信息
image-20220429160920040.png

  1. 添加镜像
image-20220429161005484.png

  1. 添加环境变量
discovery.type     single-node
ES_JAVA_OPTS       -Xms512m -Xmx512m
image-20220429161108687.png

  1. 挂载存储模版
/usr/share/elasticsearch/data
image-20220429161310160.png

  1. 挂载两个配置文件
  • 挂载第一个配置文件
/usr/share/elasticsearch/config/elasticsearch.yml
image-20220429161908750.png

  • 挂载第二个配置文件
/usr/share/elasticsearch/config/jvm.options
image-20220429162017148.png

3.3 配置外网访问端口

参考 MySQL 搭建的流程,与其一致,指定为NodePort形式

3.4 连接测试

  1. 集群内部连接测试
image-20220429163531823.png

  1. 集群外部连接测试
image-20220429163702174.png

4 RabbitMQ 搭建(应用市场)

4.1 添加应用市场仓库

  1. 登陆拥有企业空间权限的账号「beijing-boss」
  2. 添加应用仓库地址
https://charts.bitnami.com/bitnami
image-20220429170102941.png

image-20220429170139336.png

  1. 添加应用仓库成功
image-20220429170214971.png

4.2 通过应用商店部署RabbitMQ

  1. 切换至bitnami的应用商店,并选择 RabbitMQ 应用
image-20220430151644027.png

  1. 填写基本信息和选择版本后,部署
image-20220430151735015.png

  1. 开放外网访问端口
image-20220430152118458.png

  1. 部署成功,可以外网登陆 RabbitMQ
image-20220430152054919.png


http://www.taodudu.cc/news/show-3449709.html

相关文章:

  • OpenHarmony开发环境搭建
  • windwos搭建NFS
  • windows kafka环境搭建
  • rtsp 服务器搭建
  • 如何搭建小型视频点播网站
  • openwrt编译环境搭建
  • React Native 环境搭建
  • redis 5.0.2 搭建集群
  • Siebel界面搭建
  • 基本邮件服务器搭建
  • 我的世界bc端mysql_[BC]建筑 (BuildCraft)
  • uCOS-II PC编译环境搭建(基于BC45)
  • kali系统搭建本地服务器,kali linux 下搭建git服务器
  • linux搭建rtsp服务端,手把手搭建RTSP流媒体服务器
  • 搭建博客网站详细报告
  • wordpress搭建企业网站
  • 连锁电商BC一体化运营,F2B2b2C平台搭建思路
  • javafx 五子棋 两小时实现最low-五指棋
  • C/C++零基础开发,实现五指棋游戏!小白也能学会
  • C/C 零基础开发,实现五指棋游戏!小白也能学会
  • 用python实现简易控制台五子棋小游戏
  • js canvas 五指棋,138行实现五指棋
  • Android 最完整的五指棋代码示例
  • c++简易五子棋
  • Python五子棋小游戏源代码,支持人机对战和局域网对战两模式
  • Linux下基于c++的简单五子棋小游戏
  • 第30篇 Android Studio实现五子棋游戏(一)杂记
  • 五指棋逻辑, 简单实现
  • java五指棋添加音效,如何在java编写的五子棋中添加背景音乐?
  • Java面向对象之五指棋

kuberSphere搭建中间件相关推荐

  1. Serverless 如何落地?揭秘阿里核心业务大规模落地实现

    来源|阿里巴巴云原生公众号 2020 年,新冠肺炎疫情催化数字化生活方式渐成常态.在企业积极进行数字化转型.全面提升效率的今天,几乎无人否认背负"降本增效"使命诞生的 Server ...

  2. Serverless 落地之痛怎么解?

    简介:在Serverless缺少最佳实践的背景下,今年双11,阿里云实现了国内首例 Serverless 在核心业务场景下的大规模落地,扛住了全球最大规模的流量洪峰,创造了 Serverless 落地 ...

  3. 明知 | TypeScript 结合 egg.js 基本使用

    小小又进入了学习状态,此时小小由于最近接触了js的相关内容,进而接触了一些ts相关的内容,所以小小本次主要学习的内容是ts. 安装相关依赖 这里安装两个依赖,分别为egg和ts 安装ts 这里需要确保 ...

  4. 所有方向你要的资料干货这都有,从入门到实战!【CSDN宝藏资料图鉴第一期】

    前言 CSDN 是全球知名的开发者社区,创建于1999年,经过20来年的知识文档积累已然成为中文开发者的知识宝库:从基础的法入门到蜕变实战案例.从神秘前沿技术到清晰的实践步骤,可以说CSDN是你找寻资 ...

  5. WOT干货大放送:大数据架构发展趋势及探索实践分享

    WOT大数据处理技术分会场,PingCAP CTO黄东旭.易观智库CTO郭炜.Mob开发者服务平台技术副总监林荣波.宜信技术研发中心高级架构师王东及商助科技(99Click)顾问总监郑泉五位讲师,分别 ...

  6. 不知道要学什么?不知道怎么学?或许你应该看看这篇

    前言 随着博客数量的越来越多,考虑到以后会逐渐成为比较完整的知识体系.为了给阅读者提供更好的阅读体验,所以博主决定写一篇博客作为博客的索引,以方便阅读者更快的找到自己需要的内容. 同时,零散的知识点毫 ...

  7. MQTT协议学习:3、MQTT客户端实例

    MQTT协议学习:3.MQTT客户端实例 文章目录 MQTT协议学习:3.MQTT客户端实例 1. 前言 2. Paho MQTT (1). Go客户端实例 (2). Python客户端实例 (3). ...

  8. 微服务架构推动精益数字化管理体系建设,构建大数据分析平台

    某研究院使用多个独立的,不同架构的系统,对产能.产线.业务协同等业务进行管理.在十四五期间,由于数据量急剧增加,现有的数据管理工具难以对大数据量的平台进行统一.精细化管理,需要对不同系统的数据.权限. ...

  9. webpack实现ssr打包

    webpack实现ssr打包 知识点 技术栈:React, webpack, express 概念 目的 原理 实现 react组件 express webpack 事件 代码 学习链接: https ...

最新文章

  1. UI培训技术分享:设计大神都在用的10种技法!
  2. matlab语言unique,Matlab的unique函数的C++实现
  3. 十字消源码分享(基于libgdx开发)
  4. 前端常用linux命令
  5. 看到碟摊上有D版的《阿猫阿狗2》
  6. 中科大 计算机网络11 应用层原理
  7. dbhelp mysql c_C++写的一个MYSQL控制台(3)
  8. ssis导出数据性能_使用SSIS Hadoop组件导入和导出数据
  9. 性能测试--jmeter中的函数助手【15】
  10. Visual Studio 开发环境安装与配置
  11. 【数据可视化应用】绘制风玫瑰图(附Python代码)
  12. 超简洁好看的个人网站导航页源码
  13. 尝试说透网关和路由器的异同
  14. 【ZOJ2750】Idiomatic Phrases Game(最短路)
  15. 【Visual C++】游戏开发笔记四十三 浅墨DirectX教程十一 为三维世界添彩:纹理映射技术(二)...
  16. 来表达我说过如果有那么一天
  17. 浅谈快件清关与邮关的区别
  18. Google又逆天:语音输入离线实时输出文字,仅占80MB!然而……
  19. 中国互联网20年简史
  20. 红米note9pro和vivos7e哪个好 哪个更值得入手

热门文章

  1. Shuriken粒子系统学习笔记
  2. 2014华为编程大赛题目2:笨笨熊搬家打包篇
  3. io口输入输出实验程序c语言,【51单片机】普通I/O口模拟SPI口C语言程序
  4. Win10任务栏搜索框无法输入文字怎么回事?
  5. 几本软件测试方面的经典书籍
  6. Mac如何实现剪切的功能
  7. 一些免费的api接口
  8. Open3D 0.13版本 源代码编译
  9. Hadoop单机伪分布式安装详解
  10. Oracle身份证号码校验函数