[Kubernetes]7. K8s包管理工具Helm、使用Helm部署mongodb集群(主从数据库集群)

上一节讲解了[Kubernetes]6. k8s Pod配置管理ConfigMap & Secret以及传递环境变量的使用,k8s的命名空间以及使用kubens管理命名空间的使用,这里来介绍一下Helm的使用

一.Helm相关介绍 

1.介绍

kubernetes 系统上部署容器化应用时需要事 先手动编写资源配置清单文件 定义资源对象 ,而且其 每一次的配置定义基本上都是硬编码 ,基本上 无法实现复用 .对于 较大规模的应用场景 ,应用程序的 配置,分发,版本控制,查找,回滚 甚至是查看都将是用户的噩梦,而Helm可大大简化应用管理的难度, Helm 类似 npm,pip,docker hub , 可以理解为是一个软件库, 它是Kubernetes的包管理器, 可以方便快速的为我们的集群安装一些第三方软件。
        比如要部署mongodb,部署的时候 首先要创建 PVC,PV以及StorageClass,创建好后还要定义mongodb对应的 StatefulSet,StatefulSet定义好后,还需要在配置里面 关联刚才的PVC,PV,关联好后,还需要 部署mongodb,这还只是搭建mongodb数据库,如果要搭建mongodb集群的话,还更加麻烦,如果 使用Helm就 可以非常方便的就搭建出来 MongoDB / MySQL 副本集群 ,只需几个命令就可以 创建mongodb数据库 ,或者 mongodb主从数据库的集群, YAML 文件别人都已经写好了,可以直接使用, 官网接下来看看如何在k8s集群中使用Helm,下面 官网 可以查看如何安装Helm,而 应用中心 可以搜索需要的软件(包)

 

2.安装 Helm

安装 文档  

(1).脚本安装 

Helm现在有个安装脚本可以自动拉取最新的Helm版本并在 本地安装,可以获取这个脚本并在本地执行,命令如下:

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
$ chmod 700 get_helm.sh
$ ./get_helm.sh

如果想直接执行安装,运行curl

https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

 (2).二进制版本安装(推荐)

1).下载
https://github.com/helm/helm/releases
https://get.helm.sh/helm-v3.11.1-linux-amd64.tar.gz
2).减压
tar xzvf helm-v3.11.1-linux-amd64.tar.gz
3).配置到全局
mv linux-amd64/helm /usr/local/bin/

具体如下:

4).配置.kube/config权限  

当使用helm时,如果出现示:kubernetes configuration file is group-readabl

WARNING: Kubernetes configuration file is group-readable. This is insecure.
Location: /root/.kube/config
WARNING: Kubernetes configuration file is world-readable. This is insecure.
Location: /root/.kube/config

则使用下面命令解决,这样就可以正常使用helm了 

chmod -R 600 ~/.kube/config

下面就来看看搭建mongodb集群

二.Helm 搭建mongodb集群 

1.安装mongodb 不使用persistence(无本地存储)

无本地存储:当重启的时候,数据库消失

(1).打开官网的应用中心

(2).安装 

#添加repo仓库
#bitnami 是自定义的
helm repo add bitnami https://charts.bitnami.com/bitnami#安装:bitnami和上面保存一致
#mongo:是自定义的
#--set 可以跟参数
#persistence.enabled 配置应用的持久化
helm install my-mongo bitnami/mongodb --set persistence.enabled=false,auth.rootPassword="mongopass"

具体命令如下: 

# 安装
helm repo add bitnami https://charts.bitnami.com/bitnami#--set 后可设置相关属性,比如用户名,密码等,这个可以查看helm mongodb的帮助文档
helm install my-mongo bitnami/mongodb --set persistence.enabled=false,auth.rootPassword="mongopass"

(3).设置环境变量 

 (4).开启一个客户端进行测试 

1).开启临时客户端

 2).连接数据库

 具体命令如下:

[root@VM-0-3-tencentos ~]# helm install my-mongo bitnami/mongodb --set persistence.enabled=false,auth.rootPassword="mongopass"
WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /root/.kube/config
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /root/.kube/config
NAME: my-mongo
LAST DEPLOYED: Tue Jan  9 22:19:48 2024
NAMESPA

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Prometheus实战篇:Prometheus监控docker

Prometheus实战篇:Prometheus监控docker 准备环境 监控docker 为了能够获取到Docker容器的运行状态,用户可以通过Docker的stats命令获取当前主机上运行容器的统计信息,可以查看容器的CPU利用率,内存使用量,网络IO总量以及磁盘IO总量等信息. docker stats除了使用命令以外,用户…

【占用网络】SurroundOcc:基于环视相机实现3D语义占用预测 ICCV 2023

前言 本文分享“占用网络”方案中,来自ICCV 2023的SurroundOcc,它基于环视相机实现3D语义占用预测。 使用空间交叉注意力将多相机图像信息提升到3D体素特征,即3D体素Query到2D图像中查询融合特征的思想。 然后使用3D卷积逐步对体素特征进行…

如何快速断行、分割行、切割行、换行、限制每行字数、平均分割每行字数、序号自动换行、关键字断行等等内容格式整理

首先,需要用到的这个工具: 百度 密码:qwu2蓝奏云 密码:2r1z 打开工具,切换到“文章工作域”(嗯...默认就是) 找到这个,多内容断行分割 点击打开,出现如下窗口设置 相关的…

Netty-Netty基础应用与了解

前言 Netty 的优势 1、 API 使用简单,开发门槛低; 2、功能强大,预置了多种编解码功能,支持多种主流协议; 3、定制能力强,可以通过 ChannelHandler 对通信框架进行灵活地扩展; 4、性能高…

【教程】通过Excel宏/Pandas两种方法来自动添加渐变数据条

这种数据真的很难看懂: 一般会对其画折线图或者数据条,相比起来就非常直观: 但是每一列都要手动这样设置就非常累了,所以这里就用到了VBA宏(或者Pandas)。 VBA宏方法 从这里进入宏: 随便写一个宏名后点创建&#xff1…

LangChain 69 向量数据库Pinecone入门

LangChain系列文章 LangChain 50 深入理解LangChain 表达式语言十三 自定义pipeline函数 LangChain Expression Language (LCEL)LangChain 51 深入理解LangChain 表达式语言十四 自动修复配置RunnableConfig LangChain Expression Language (LCEL)LangChain 52 深入理解LangCh…

机器视觉在OCR字符检测的应用

在产品质量 检测过程中,对于字符、条码等标识信息的识别、读取、检测是非常重要的一部分,比如在食品饮料包装检测中,生产日期 、保质期 、生产批号 、条码等字符信息是产品管理和追溯必不可缺的,因此利用机器视觉技术进行OCR字符采…

【实用技巧】Windows电脑向iPhone或iPad传输视频方法2:有线传输

一、内容简介 本文介绍如何使用 Windows 电脑向 iPhone 或 iPad 传输视频,以 iPhone 为例,iPad的操作方法类似,本文不作赘述。 二、所需原材料 Windows 电脑(有 USB-A 或 USB-C 接口)(桌面或其它文件夹中…

Web组件的使用

文章目录 1 概述2 加载网页加载在线网页加载本地网页 3 网页缩放文本缩放 4 Web组件事件Web组件处理JS confirm事件 5 Web和JavaScript交互启用JavaScriptWeb组件调用JS方法JS调用Web组件方法 6 处理页面导航7 调试网络应用8 参考链接 1 概述 相信大家都遇到过这样的场景&…

依赖Kafka的Go单元测试例解

Kafka[1]是Apache基金会开源的一个分布式事件流处理平台,是Java阵营(最初为Scala)中的一款杀手级应用,其提供的高可靠性、高吞吐量和低延迟的数据传输能力,让其到目前为止依旧是现代企业级应用系统以及云原生应用系统中使用的重要中间件。 在…

SpringCloud微服务 【实用篇】| RabbitMQ快速入门、SpringAMQP

目录 一:初始RabbitMQ 1. 同步和异步通讯 1.1 同步调用 1.2 异步调用 2. MQ常见框架 二:RabbitMQ快速入门 1. RabbitMQ概述和安装 2. 常见消息队列模型 3. 快速入门案例 三:SpringAMQP 1. Basic Queue 简单队列模型 2. Work Queu…

ORACLE RAC DG文件路径错乱解决办法

最近接手了一个客户的RAC-RAC dg环境的维护,登录上去之后发现dg延迟了8天,由于主库的空间非常紧张,归档日志早就删除了,所以准备使用rman基于scn点的备份恢复的方案恢复dg同步 在备份完成之后,使用新的控制文件进行数据恢复的时候报错datafile 43 not found: 检查了一下发现当…

SpringBoot中使用单例模式+ScheduledExecutorService实现异步多线程任务(若依源码学习)

场景 若依前后端分离版手把手教你本地搭建环境并运行项目: 若依前后端分离版手把手教你本地搭建环境并运行项目_本地运行若依前后端分离-CSDN博客 设计模式-单例模式-饿汉式单例模式、懒汉式单例模式、静态内部类在Java中的使用示例: 设计模式-单例模…

Python requirements.txt 详解

文章目录 1 概述1.1 作用1.2 注意 2 操作2.1 生成 requirements.txt2.2 安装 requirements.txt 3 示例3.1 新建 Django 项目3.2 找到 Scripts 目录,执行生成 requirements.txt 命令 1 概述 1.1 作用 作用:记录 当前项目下 所有 依赖包及其版本号&#…

不知道题目是啥

本题是学校的集训里的题,所有不知道题目名字是啥,直接看题目就好 解题思路:因为字符串只含有小写字母,所以可以创建两个数组分别来存s和t的每个字母出现次数,然后遍历数组,如果s字符串中的某个字母比t的小&…

输电线路分布式故障诊断装置的四大特点介绍-深圳鼎信

输电线路分布式故障诊断装置是一种利用行波测距、无线通信等技术手段实现电网故障定位的设备。这对于电网的故障处理和恢复具有重要意义,可以帮助运维人员提高故障处理的效率,缩短故障处理时间,减少停电时间,提高用户的供电可靠性…

premiere简约大气3D动画logo片头Pr模板Mogrt免费下载

Premiere简约大气3D动画logo片头pr模板mogrt下载,无需插件,高清分辨率,易于自定义,包括教程,不包括音频和图像。免费下载:https://prmuban.com/37065.html

Linux学习(1):目录结构、编辑器和用户管理

Linux学习(1):目录结构、编辑器和用户管理 1 Linux目录结构2 vi和vim编辑器2.1 快捷键练习 3 用户管理3.1 添加用户3.2 删除用户即主目录3.3 切换用户 4 用户组 1 Linux目录结构 在linux世界里,一切皆为文件。 linux目录结构&a…

test fuzz-05-模糊测试 kelinci AFL-based fuzzing for Java

拓展阅读 开源 Auto generate mock data for java test.(便于 Java 测试自动生成对象信息) 开源 Junit performance rely on junit5 and jdk8.(java 性能测试框架。性能测试。压测。测试报告生成。) test fuzz-01-模糊测试(Fuzz Testing) test fuzz-…

Gin CORS 跨域请求资源共享与中间件

Gin CORS 跨域请求资源共享与中间件 文章目录 Gin CORS 跨域请求资源共享与中间件一、同源策略1.1 什么是浏览器的同源策略?1.2 同源策略判依据1.3 跨域问题三种解决方案 二、CORS:跨域资源共享简介(后端技术)三 CORS基本流程1.CORS请求分类2.基本流程 四、CORS两种…