k8s-第五节-StatefulSet

StatefulSet

StatefulSet 是用来管理有状态的应用,例如数据库。

前面我们部署的应用,都是不需要存储数据,不需要记住状态的,可以随意扩充副本,每个副本都是一样的,可替代的。
而像**数据库、Redis **这类有状态的,则不能随意扩充副本。

StatefulSet 会固定每个 Pod 的名字

apiVersion: apps/v1
kind: StatefulSet
metadata:name: mongodb
spec:serviceName: mongodbreplicas: 3selector:matchLabels:app: mongodbtemplate:metadata:labels:app: mongodbspec:containers:- name: mongoimage: mongo:4.4# IfNotPresent 仅本地没有镜像时才远程拉,Always 永远都是从远程拉,Never 永远只用本地镜像,本地没有则报错imagePullPolicy: IfNotPresent
---
# 定义 HeadLess service
apiVersion: v1
kind: Service
metadata:name: mongodb
spec:selector:app: mongodbtype: ClusterIP# HeadLess 就不再给Service分配IP了,通过pod名字访问clusterIP: Noneports:- port: 27017targetPort: 27017

StatefulSet 特性

  • Service 的 CLUSTER-IP 是空的,Pod 名字也是固定的。
  • Pod 创建和销毁是有序的,创建是顺序的,销毁是逆序的,可以从创建的序号看出来0,1,2,3…。
  • Pod 重建不会改变名字,除了IP,所以不要用IP直连.

创建 statefulset 会在endpoints 多一个 hostname,用于service和pod之间做dns指向

  • 访问时,如果直接使用 Service 名字连接,会随机转发请求连接指定 Pod,可以这样pod-name.service-name

测试连接

运行一个临时 Pod 连接数据测试下
kubectl run mongodb-client --rm --tty -i --restart='Never' --image docker.io/bitnami/mongodb:4.4.10-debian-10-r20 --command -- bash

进去bash 后 使用

mongo --host mongodb 为随机转发连接mongodb service下的pod
mongo --host mongodb-0.mongodb 为直接连接mongodb-0 pod

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

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

相关文章

CPU是什么?

CPU,全称Central Processing Unit,中文名为中央处理器,是计算机系统的核心部件,负责执行程序指令、处理数据以及控制计算机内部的其他组件。简单来说,CPU就像是计算机的大脑,负责进行所有的思考和计算工作。…

在Linux/Debian/Ubuntu中出现“Could not get lock /var/lib/dpkg/lock-frontend”问题的解决办法

在Linux/Debian/Ubuntu中出现“Could not get lock /var/lib/dpkg/lock-frontend”问题的解决办法 在使用 apt 或 apt-get 进行软件包管理时,有时会遇到以下错误提示: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporari…

CCM的作用及原理

CCM调试的理论依据_ccm矩阵sat调试-CSDN博客 CCM是在WB之后,就是当AWB将白色校正之后其他颜色也会跟着有明显变化,CCM的作用就是要保持白色不变,把其他色彩校正到非常精准的地步。 校正后的颜色(target值是一个固定的值)CCM矩阵*原始的颜色…

代码随想录Day73(Part09)

badijkstar(堆优化版) 题目:47. 参加科学大会(第六期模拟笔试) (kamacoder.com) 思路:直接看答案 答案 import java.util.*;class Edge {int to; // 邻接顶点int val; // 边的权重Edge(int to, int val) {this.to to;this.val …

昇腾910B部署Qwen2-7B-Instruct进行流式输出【pytorch框架】NPU推理

目录 前情提要torch_npu框架mindsport框架mindnlp框架 下载模型国外国内 环境设置代码适配(非流式)MainBranch结果展示 代码适配(流式) 前情提要 torch_npu框架 官方未适配 mindsport框架 官方未适配 mindnlp框架 官方适配…

力扣139 单词拆分 Java版本

文章目录 题目描述代码 题目描述 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 示例 1&#xff1a…

HTTP与HTTPS的主要区别

HTTP(超文本传输协议)与HTTPS(超文本传输安全协议)的主要区别在于安全性、数据传输方式、默认使用的端口以及对网站的影响。 一、安全性: HTTP是一种无加密的协议,数据在传输过程中以明文形式发送&#x…

堆和栈的区别及应用场景

堆和栈的区别及应用场景 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 在计算机科学和编程领域,堆(Heap)和栈&#xff08…

InfluxDB时序数据库基本使用介绍

1、概要介绍 1.1、时序数据库使用场景 所谓时序数据库就是按照一定规则的时间序列进行数据读写操作的数据库。它们常被用于以下业务场景: 物联网IOT场景:可用于IOT设备的指标、状态监控数据存取。IT建设场景:可用于服务器、虚拟机、容器的…

等保测评需要什么SSL证书

在进行信息安全等级保护(简称“等保”)测评时,选择合适的HTTPS证书对于确保网站的安全性和合规性至关重要。以下是在等保测评中选择HTTPS证书时应考虑的因素: 国产证书: 等保测评倾向于使用国产品牌的SSL证书&#x…

代码随想录Day76(图论Part11)

97.小明逛公园(Floyd) 题目:97. 小明逛公园 (kamacoder.com) 思路: 答案 import java.util.*;public class Main {public static void main(String[] args) {Scanner scanner new Scanner(System.in);int n scanner.nextInt();…

传统sql查询痛点及衍生的项目设计思路(设计一款可视化查询工具)

背景 最近三年,工作中很大一部分时间是写sql报表。业务很复杂,几十个表。常用的就有十几个。经常表连接达七八个。写得多了,我也很熟练了,但就是足够熟练了,我就越感觉有以下问题困扰我: 无法串联excel表…

上网行为管理系统是什么?有哪些好用的上网行为管理系统?

IT经理(ITM): 大家好,今天我们聚在这里,是为了讨论一个对我们公司来说越来越重要的议题:上网行为管理系统(WBS)。我们知道,员工的网络使用已经不仅仅是个人行为,它直接影…

序列化Serializable

一、传输对象的方式 将对象从内存传输到磁盘进行保存,或者进行网络传输,有两种方式: 实现Serializable接口,直接传输对象转成json字符串后,进行字符串传输 二、直接传输对象 implements Serializable Data Equal…

Java中的设计模式在实际项目中的应用

Java中的设计模式在实际项目中的应用 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 设计模式是解决软件设计中常见问题的经验总结,它们提供了一种…

resp 无法连接 redis 服务器

问题原因可能是:防火墙 防火墙对这个端口没有开放,所以主机访问不到 解决方法: 步骤1:开发指定端口号 #放通6379/tcp端口 firewall-cmd --zonepublic --permanent --add-port6379/tcp 步骤2:重启防火墙 firewall-c…

.netcore微服务——项目搭建

在.NET Core中,微服务是一种架构风格,它将应用程序构造为一组小型服务的集合,这些服务都通过HTTP-based API进行通信。每个服务都是独立部署的,可以用不同的编程语言编写,并且可以使用不同的数据存储技术。 微服务的主…

什么是网络抓取|常见用例和问题

你可能听说过数据被称为现代信息社会的新石油。由于线上信息量庞大,能够有效地收集和分析网页数据已经成为企业、研究人员和开发人员的关键技能。这就是网页抓取技术的用武之地。网页抓取,也称为网页数据提取,是一种强大的技术,能…

el-dropdown的command方法添加自定义参数

代码 <div v-for"(item, index) in queryParams.changeParams" :key"index"><el-form-item prop"dataConditionSearch"><el-dropdown command"handleCommand" style"margin-right: 3px;"><span class…

【python基础】—pip与conda的区别

文章目录 一、 pip 与 conda1、支持语言2、Repo源3、包的内容4、环境隔离5、依赖关系6、总结 二、pip install 与 conda install1、库的存储位置2、总结 三、pip uninstall 与 conda uninstall 一、 pip 与 conda 1、支持语言 pip 是 官方推荐的 python 包管理器&#xff0c;…