k8s中的基础概念

k8s可以从硬件和软件两方面来理解:

硬件:

        1、节点(Node):类似于手机、平板、电脑

        2、集群(Cluster):多个节点组合到一起

        3、持久卷(Persistent Volumes):类似于插入到集群中的外部硬盘

软件:

        1、容器(Container)

        2、Pod:k8s的基本计算单元。Kubernetes不直接运行容器,它将一个或多个容器封装到一个称为Pod的高级结构中。相同Pod中的任何容器都将共享相同的名称空间和本地网络

        3、部署(Deployment):管理pod的抽象层。部署的主要目的是声明一个Pod应该同时运行多少个副本。当将部署添加到集群中时,它将自动地旋转加速所需的Pod数量,然后监视它们。如果一个Pod消失,部署将自动重新创建它。

使用部署,你不必手动处理Pod。你只需声明系统的期望状态,它将自动为你管理。

        4、网关(Gateway):网关路由,外部由此来访问部署的应用程序

一、k8s的pod

1、获取所有的namespace

kubectl get namespaces
kubectl get pods --all-namespaces
kubectl get pods -A

2、部署nginx到项目(demo)中

kubectl run nginx --image=nginx --namespace=demo

3、通过label查询pods

官方标签label链接

kubectl get pods --namespace=demo -l "app=admin-service"

4、查看pod的日志

kubectl logs --namespace=demo -l "app=admin-service"

5、查看pods更多的详细信息

kubectl get pods --namespace=demo -l "app=admin-service" -o wide

6、pods相关的命令 官方pod命令链接

二、k8s的控制器

Kubernetes中内建了很多controller(控制器),这些相当于一个状态机,用来控制Pod的具体状态和行为

1、Deployment:适合无状态的服务部署,例如:admin-service

2、StatefullSet:适合有状态的服务部署,例如:MySQL

3、DaemonSet:一次部署,所有的node节点都会部署,例如一些典型的应用场景:

          运行集群存储 daemon,例如:在每个Node上运行 glusterd、ceph

          在每个Node上运行日志收集daemon,例如:fluentd、logstash

          在每个Node上运行监控daemon,例如:”Prometheus Node Exporter

4、Job:一次性的执行任务,例如:数据库初始化

5、Cronjob:周期性的执行任务,例如:定时任务

        1、deployment

                a、副本 replicas 去设置启动多个少实例

                b、spec:设置容器相关的信息:镜像,cpu设置多少,端囗映射、挂载

                c、更新策略:

                        1)、我升级版本了。如果我停掉之前的版本,然后上线新的版本,有一段时间服务不可用

                        2)、滚动更新就可以不用停止服务

        2、如何获取某个pod的deployment

kubectl get deployments --namespace=demo -l "app=admin-service" -o yaml > ./admin-service.yaml

        3、deployment官方文档

三、k8s的service 

service:负责多个 pod之间的负载均衡

1.编辑yaml

        kubectl apply 应用yaml配置

2.列出service

kubectl get services --namespace=demo -l "app=admin-service-nodeport"

四、k8s的gateway

资源模型

网关 API 有三种稳定的 API:

  • 网关类:定义一组具有通用配置并由控制器管理的网关 实现类。

  • 网关:定义流量处理基础架构(例如云负载均衡器)的实例。

  • HTTPRoute:定义特定于 HTTP 的规则,用于将流量从网关侦听器映射到 后端网络终结点的表示形式。这些节点通常表示为服务.

网关 API 被组织成不同的 API 类型,这些 API 类型具有相互依赖的关系来支持 组织以角色为导向的性质。一个 Gateway 对象只与一个 GatewayClass 相关联;GatewayClass 描述负责管理此类网关的网关控制器。 然后,将一个或多个路由类型(如 HTTPRoute)关联到网关。网关可以过滤可能附加到其监听的路由,从而形成一个带有路由的双向信任模型。

下图说明了三种稳定网关 API 类型的关系:

五、k8s的卷

        1、local

        2、hostpath

        3、cephfs

 

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

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

相关文章

SpringCloud 之HttpClient、HttpURLConnection、OkHttpClient切换源码

承接上文,之前已经分析过OpenFegin 的创建、发送请求源码了,接下来,分析下底层的HttpClient、HttpURLConnection、OkHttpClient切换从源码级别来看是如何做到的。 Spring Cloud OpenFegin(创建、发送请求)源码 Http…

在本地测试nginx中localhost不行,需要写成127.0.0.1

在Windows 10系统的命令提示符cmd中,执行命令ping localhost,并没有出现我与其的ip地址“127.0.0.1”,而是“[::1]”。 问题原因 在cmd中ping localhost解析出来的是ipv6的::1的原因是windows有个优先解析列表,当ipv6的优先级高于…

深度学习目标跟踪简述

深度学习目标跟踪是一个活跃的研究领域,它涉及使用深度学习技术来跟踪视频或实时摄像头中的对象。这个领域通常包括以下几个关键方面: 目标检测:在开始跟踪前,首先需要在视频的初始帧中检测到目标。这通常是通过卷积神经网络&…

基于ssm物流配送人员车辆调度管理系统的设计与实现+vue论文

摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统物流配送人员车辆调度信息管理难度大,容错率低…

Thingsbaord采用redis缓存(自用)

在CentOS系统上,您可以通过以下步骤使用yum安装Redis: 添加EPEL仓库: 首先,需要添加EPEL(Extra Packages for Enterprise Linux)仓库,因为Redis可能不在默认的CentOS仓库中。使用以下命令添加EP…

【python】正则表达式-快速信息匹配,过滤与检测

前言 菜某的总结,希望能够帮到大家。 正则表达式的概念 简单来说就是匹配信息,创建一个规则,匹配文本中符合这个规则的内容 作用领域 单单看他的概念可能觉得他的用途也就是查找,实际上他的用途很广泛 1.信息筛选&#xff0c…

大语言模型面试问题

自己在看面经中遇到的一些面试题,结合自己和理解进行了一下整理。 transformer中求和与归一化中“求和”是什么意思? 求和的意思就是残差层求和,原本的等式为y H(x)转化为y x H(x),这样做的目的是防止网络层数的加深而造成的梯…

如何创建自己的小程序?零编程一键创建实战指南

当今瞬息万变的数字世界中,拥有一个属于自己的小程序已成为企业与个人展示、服务和互动的重要途径。无需编码知识,通过便捷的云端可视化平台,也可以轻松创建一款符合自身需求且功能丰富的小程序。下面给大家分享如何创建自己的小程序。 1、选…

消息开始事件message start event

一:bpmn 二:java repositoryService.createDeployment().name("消息事件流程").addClasspathResource("bpmn/msg_event_process.bpmn").deploy(); identityService.setAuthenticatedUserId("huihui"); ProcessInstance p…

自适应批量生成二维码源码系统:电脑+手机端自适应 支持任何类型批量生成二维码 附带完整的搭建教程

在当今数字化的时代,二维码已经成为了我们日常生活和工作中的重要组成部分。无论是分享链接、添加好友,还是支付购物,二维码都以其便捷性受到了广泛的欢迎。下面,罗峰就来给大家分享一款自适应批量生成二维码源码系统,…

最新消息:OpenAI GPT Store 正式上线,GPTs 应用商店来了!

原文链接 https://openaigptguide.com/gpt-store-and-chatgpt-team/ OpenAI推出的两款新产品和服务:GPT Store和ChatGPT Team,提供了许多全新的解决方案和功能,旨在帮助用户更轻松地使用和构建GPT工具,同时也增加了公司的收入来源…

【JaveWeb教程】(17) MySQL数据库开发之 MySQL简介、安装、数据类型、SQL通用语法 详细代码示例讲解

目录 前言1. MySQL概述1.1 安装1.1.1 版本1.1.2 安装1.1.3 连接1.1.4 企业使用方式(了解) 1.2 数据模型1.3 SQL简介1.3.1 SQL通用语法1.3.2 分类 前言 在我们讲解SpringBootWeb基础知识(请求响应案例)的时候,我们讲到在web开发中,为了应用程序职责单一&…

Laravel 使用rdkafka_laravel详细教程(实操避坑)

一、选择rdkafka 首先要看版本兼容问题,我的是Laravel5.6,PHP是7.3.13,所以需要下载兼容此的rdkafka,去 Packagist 搜索 kafka ,我用的是 Packagist选择里面0.10.5版本, 二、安装rdkafka 在 Laravel 项目…

python爬虫实战(9)--获取澎pai热榜

1. 需要的类包 import pandas as pd import requests2. 请求地址 通过分析,数据可以直接从接口获取,无需解析页面标签,直接取出我们需要的数据即可。 def fetch_hot_news(api_url):response requests.get(api_url)if response.status_cod…

[足式机器人]Part3 机构运动学与动力学分析与建模 Ch00-3(2) 刚体的位形 Configuration of Rigid Body

本文仅供学习使用,总结很多本现有讲述运动学或动力学书籍后的总结,从矢量的角度进行分析,方法比较传统,但更易理解,并且现有的看似抽象方法,两者本质上并无不同。 2024年底本人学位论文发表后方可摘抄 若有…

Vue+Element Ui实现el-table自定义表头下拉选择表头筛选

用vueelement ui开发管理系统时,使用el-table做表格,当表格列过多的时候,想要做成可选表头的,实现表格列的筛选显示,效果如下: 代码文件结构: 废话不多说,直接上代码: 第…

2023年,AI爆发的一年

公众号:算法一只狗 今年以来,AI呈爆发式发展。在文本生成的领域,涌现出以ChatGPT为代表的生成式大模型。而在文本图像生成方面,有高度自定义的Stable Diffusion,和简单易用上手的Midjournery。多模态领域更是百花齐放&…

外汇天眼:Options与OneTick合作,共同打造全球SAAS分析平台

Options Technology,一家为全球金融领域提供云服务的托管服务提供商,今天宣布与OneMarketData及其旗舰产品OneTick平台的合作。 Options将使OneTick订户能够访问其庞大的市场数据存储库,包括股票、外汇、期货、期权和固定收益数据&#xff0…

OpenAI GPT商店来了! 创业公司打不过就加入?|对话Agent创业公司S2R

文|郝 鑫 1月10日,OpenAI推出了在线商店“GPT Store”。该商店已于昨日开始向付费用户、团队和企业用户推出,商店汇集了用户为各种任务创建的ChatGPT的自定义版本。 2023年初到年末,Agent就像一位来自异域的吉普赛女郎&#…

linux 网络基础配置

将Linux主机接入到网络,需要配置网络相关设置一般包括如下内容: 主机名 iP/netmask (ip地址,网关) 路由:默认网关 网络连接状态 DNS服务器 (主DNS服务器 次DNS服务器 第三个DNS服务器) 一、…