K8s
文章平均质量分 91
K8s
果子哥丶
发奋要往上
展开
-
CNCF x Alibaba云原生技术公开课 第十三四章 Kubernetes网络与Service
服务发现的意义pod 生命周期是短暂的。在 pod 的生命周期过程中,比如它创建或销毁,它的 IP 地址都会发生变化pod 组需要提供一个统一的访问入口原创 2023-03-12 22:55:23 · 521 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第十二章 可观测性:监控与日志
Fluentd在每个节点上起一个agent,agent会将数据汇聚到fluentd的server,server可以把数据离线到es,通过kibana展示原创 2023-03-12 22:28:15 · 460 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第十一章 应用健康Liveness和Readness
存活性探测(Liveness probes) :主要是探测应用是否还活着。如果检测到应用没有存活就杀掉当前pod并重启。就绪性探测(Readiness probes):只要是探测应用是否准备好接受请求访问,如果检测应用准备好了,就把请求流量放进来;反之,则把应用节点从注册中心拿掉。原创 2023-03-12 21:53:46 · 659 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 【重要】第九章 应用存储和持久化数据卷:核心知识
如何匹配PV:用户在提交 PVC 的时候,最重要的两个字段 —— Capacity 和 AccessModes。在提交 PVC 后,k8s 集群中的相关组件是如何去找到合适的 PV 呢?首先它是通过为 PV 建立的 AccessModes 索引找到所有能够满足用户的 PVC 里面的 AccessModes 要求的 PV list,然后根据PVC的 Capacity,StorageClassName, Label Selector 进一步筛选 PV,如果满足条件的 PV 有多个,选择 PV 的 size 最小原创 2023-03-11 20:19:29 · 538 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第八章 应用配置管理
- 可变配置就用 ConfigMap;- 敏感信息是用 Secret;- 身份认证是用 ServiceAccount;- 资源配置是用 Resources;- 安全管控是用 SecurityContext;- 前置校验是用 InitContainers。原创 2023-03-11 18:44:38 · 476 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第七章 应用编排与管理:Job和DaemonSet
- 首先 kubernetes 的 Job 是一个管理任务的控制器,它可以创建一个或多个 Pod 来指定 Pod 的数量,并可以监控它是否成功地运行或终止;- 可以根据 Pod 的状态来给 Job 设置重置的方式及重试的次数;- 可以根据依赖关系,保证上一个任务运行完成之后再运行下一个任务;- 同时还可以控制任务的并行度,根据并行度来确保 Pod 运行过程中的并行次数和总体完成大小。原创 2023-03-11 13:21:16 · 937 阅读 · 4 评论 -
CNCF x Alibaba云原生技术公开课 第六章 应用编排与管理:Deployment
Deployment:管理部署发布的控制器主要作用定义一种pod的期望数量配置pod发布方式更新中发生问题,可以一键回滚原创 2023-03-08 23:27:59 · 224 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第五章 应用编排与管理
控制模式中的传感器构成:Reflector、Informer、Indexer 三个组件原创 2023-03-08 22:27:36 · 345 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第四章 理解 Pod 和容器设计模式
Sidecar概念:在 Pod 里面,可以定义一些专门的容器,来执行主业务容器所需要的一些辅助工作原创 2023-03-08 22:06:39 · 297 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第三章 kubernetes核心概念
- 服务的发现与负载的均衡- 容器的自动装箱,我们也会把它叫做 scheduling,就是“调度”,把一个容器放到一个集群的某一个机器上- Kubernetes 会帮助我们去做存储的编排,让存储的声明周期与容器的生命周期能有一个连接- Kubernetes 会帮助我们去做自动化的容器的恢复。在一个集群中,经常会出现宿主机的问题或者说是 OS 的问题,导致容器本身的不可用,Kubernetes 会自动地对这些不可用的容器进行恢复- Kubernetes 会帮助我们去做应用的自动发布与应用的回滚原创 2023-03-08 20:11:02 · 535 阅读 · 0 评论 -
CNCF x Alibaba云原生技术公开课 第二章 容器基本概念
容器基于进程,如何解决进程的这三个问题- namespace技术:资源视图的隔离- chroot:linux和unix可以通过chroot将子目录变成根目录- cgroup:限制资源使用率(docker要将systemd改成cgroup)原创 2023-03-08 19:50:53 · 494 阅读 · 0 评论 -
Kubernetes 资源监控
kubectl top 为什么会报错?kubectl top node 怎么计算,和节点上直接 top 有什么区别?kubectl top pod 怎么计算,包含 pause 吗?kubectl top pod 和exec 进入 pod 后看到的 top 不一样?kubectl top pod 和 docker stats得到的值为什么不同?原创 2023-01-19 22:39:36 · 854 阅读 · 0 评论 -
Zookeeper和Kafka on k8s 部署
Apache ZooKeeper 是一个集中式服务,用于维护配置信息、命名、提供分布式同步和提供组服务,ZooKeeper 致力于开发和维护一个开源服务器,以实现高度可靠的分布式协调,其实也可以认为就是一个分布式数据库,只是结构比较特殊,是树状结构。Kafka是最初由 Linkedin 公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于 zookeeper 协调的分布。原创 2022-09-25 12:19:23 · 2033 阅读 · 1 评论 -
Kubernetes 进阶训练营 网络
我们前面的课程中学习了一些常用控制器的基本用法,我们也了解到 Pod 的生命是有限的,死亡过后不会复活了。然后我们知道可以用 ReplicaSet 和 Deployment 来动态的创建和销毁 Pod,每个 Pod 都有自己的 IP 地址,但是如果 Pod 重建了的话那么他的 IP 很有可能也就变化了。这就会带来一个问题:比如我们有一些后端的 Pod 集合为集群中的其他应用提供 API 服务,如果我们在前端应用中把所有的这些后端的 Pod 的地址都写死,然后以某种方式去访问其中一个 Pod 的服务,这样看上原创 2022-08-02 01:00:02 · 920 阅读 · 0 评论 -
Kubernetes 进阶训练营 控制器
前面我们一起学习了 Pod 的原理和一些基本使用,但是在实际使用的时候并不会直接使用 Pod,而是会使用各种控制器来满足我们的需求,Kubernetes 中运行了一系列控制器来确保集群的当前状态与期望状态保持一致,它们就是 Kubernetes 的大脑。例如,ReplicaSet 控制器负责维护集群中运行的 Pod 数量;Node 控制器负责监控节点的状态,并在节点出现故障时及时做出响应。总而言之,在 Kubernetes 中,每个控制器只负责某种类型的特定资源。...原创 2022-07-31 22:52:10 · 1266 阅读 · 1 评论 -
Kubernetes 进阶训练营 调度器
调度主要分为以下几个部分:- 首先是预选过程,过滤掉不满足条件的节点,这个过程称为 Predicates(过滤)- 然后是优选过程,对通过的节点按照优先级排序,称之为 Priorities(打分)- 最后从中选择优先级最高的节点,如果中间任何一步骤有错误,就直接返回错误...原创 2022-07-24 17:10:50 · 479 阅读 · 0 评论 -
Kubernetes 进阶训练营 存储
Pod 消耗的是节点,PVC 消耗的是 PV 资源,Pod 可以请求 CPU 和内存,而 PVC 可以请求特定的存储空间和访问模式。对于真正使用存储的用户不需要关心底层的存储实现细节,只需要直接使用 PVC 即可原创 2022-07-16 23:27:21 · 642 阅读 · 0 评论 -
Kubernetes 进阶训练营 Pod基础
Kubernetes 由 Master 和 Node,其中 Master 节点由三个独立的组件组成,它们分别是负责整个集群通信的 API 服务的 kube-apiserver、负责容器调度的 kube-scheduler 以及负责维护集群状态的 kube-controller-manager 组件。整个集群的数据都是通过 kube-apiserver 保存到 etcd 数据库中的,而其他所有组件的通信也都是通过 kube-apiserver 和 etcd 数据库进行通信的,都不会直接和 etcd 进行通信.原创 2022-07-03 14:08:51 · 575 阅读 · 0 评论 -
Kubernetes带你从头到尾捋一遍
k8s技术实践为什么要学习 Kubernetes?虽然 Docker 已经很强大了,但是在实际使用上还是有诸多不便,比如集群管理、资源调度、文件管理等等。kubernetes 介绍Kubernetes 解决的核心问题服务发现和负载均衡Kubernetes 可以使用 DNS 名称或自己的 IP 地址公开容器,如果到容器的流量很大,Kubernetes 可以负载均衡并分配网络流量,从而使部署稳定。存储编排Kubernetes 允许您自动挂载您选择的存储系统,例如本地存储、公共云提供原创 2022-06-19 22:01:55 · 544 阅读 · 0 评论 -
【云原生训练营】模块八 Kubernetes 生命周期管理和服务发现
首先kubectl向kubeapi接口发送指令后,kubeapi会调度到Kubelet(这过程通过etcd存储),Kubelet去操作CRI,CRI完成容器的初始化,在初始化的过程中会先启动一个Pause的基础容器(负责网络以及存储卷共享),然后进行多个init C初始化,进入Main C 主容器运行,Main C退出时可执行STOP,执行完整个Pod生命周期结束。原创 2022-05-29 13:43:39 · 734 阅读 · 0 评论 -
Kubernetes - YAML文件解读
YAML 语言(发音 /ˈjæməl/ )的设计目标,就是方便人类读写。它实质上是一种通用的数据串行化格式。YAML又被称为是 json 的超集,使用起来比 json 更方便原创 2022-05-27 22:51:22 · 1108 阅读 · 0 评论 -
【云原生训练营】模块七 Kubernetes 控制平面组件:调度器与控制器
kube-scheduler负责分配调度Pod到集群内的节点上,它监听kube-apiserver,查询还未分配Node的Pod,然后根据调度策略为这些Pod分配节点(更新Pod的NodeName字段)。原创 2022-05-25 00:43:48 · 606 阅读 · 1 评论 -
【云原生训练营】模块五 Kubernetes 控制平面组件:etcd
Etcd是CoreOS基于Raft开发的分布式key-value存储,可用于服务发现、共享配置以及一致性保障(如数据库选主、分布式锁等),etcd像是专门为集群环境的服务发现和注册而设计,它提供了数据TTL失效、数据改变监视、多值、目录监听、分布式锁原子操作等功能,可以方便的跟踪并管理集群节点的状态。原创 2022-05-17 21:14:15 · 682 阅读 · 0 评论 -
Docker与K8s概念简述
常规题1、Docker和虚拟机有啥不同?答:Docker是轻量级的沙盒,在其中运行的只是应用,虚拟机里面还有额外的系统。Docker利用了Linux内核中很多安全特性来保证不同容器之间的隔离,并且通过签名机制来对镜像进行验证。大量生产环境的部署证明,Docker虽然隔离型无法与虚拟机相比,但仍具有极高的安全性。2、如何清理后台停止的容器?答:可以使用 sudo docker rm $sudo(docker ps -a -q)查看本地镜像:docker images查看本地容器:docker p原创 2022-04-18 14:36:56 · 5015 阅读 · 0 评论 -
16个核心概念带你入门 Kubernetes
Kubernetes是Google开源的容器集群管理系统,是Google多年⼤规模容器管理技术Borg的开源版本,主要功能包括:基于容器的应用部署、维护和滚动升级负载均衡和服务发现跨机器和跨地区的集群调度自动伸缩无状态服务和有状态服务广泛的Volume支持插件机制保证扩展性Kubernetes发展非常迅速,已经成为容器编排领域的领导者,接下来我们将讲解Kubernetes中涉及到的一些主要概念。1、PodPod是一组紧密关联的容器集合,支持多个容器在一个Pod中共享网络和文件系统,.原创 2022-01-18 18:13:21 · 320 阅读 · 0 评论 -
有赞服务注册与发现架构演进
有赞服务注册与发现架构演进一、概述二、接口级服务注册与发现2.1 架构2.2 问题三、接口级服务注册与应用级服务发现3.1 架构3.2 应用级服务发现解析3.3 优化3.3.1 服务发现延迟聚合推送3.3.2 服务发现预加载3.3.3 客户端接口与应用映射关系构建3.3.4 接口元数据聚合分组3.4 问题四、应用级服务注册与发现4.1 架构4.2 服务元数据管理4.3转载 2021-12-12 19:31:25 · 294 阅读 · 0 评论 -
Kubernetes 核心组件原理梳理,运维必备~
通俗易懂K8s0. k8s 的架构1. 核心组件原理 —— pod 核心原理1.1 pod 是什么1.2 pod 用来干什么1.3 实现 web 服务集群1.4 pod 底层网络和数据存储是如何进行的2. ReplicaSet 副本控制器2.1 副本控制器基本理解2.2 ReplicaSet 和 ReplicationController 的区别3. Deployment 部署对象3.1 滚动更新3.2 部署模型4. StatefulSet 部署有状态服务4.1 引入定义4.2 如何理解状态服务4.3 部署原创 2021-10-24 17:58:02 · 452 阅读 · 0 评论 -
60道常见的 Kubernetes 面试题总结
简述 ETCD 及其特点?etcd 是 CoreOS 团队发起的开源项目,是一个管理配置信息和服务发现(service discovery)的项目,它的目标是构建一个高可用的分布式键值(key-value)数据库,基于 Go 语言实现。特点:简单:支持 REST 风格的 HTTP+JSON API安全:支持 HTTPS 方式的访问快速:支持并发 1k/s 的写操作可靠:支持分布式结构,基于 Raft 的一致性算法,Raft 是一套通过选举主节点来实现分布式系统一致性的算法。简述 ETCD原创 2021-06-15 20:01:12 · 875 阅读 · 0 评论 -
Service Mesh服务网格架构
服务网格是一个独立的基础设施层,用来处理服务之间的通信,现代的云原生应用是由各种复杂技术构建的服务体系,服务网络负责在这些组成部分之间进行可靠的请求传递。目前典型的服务网格通常提供了一组轻量级的网络代理,这些代理会在应用无感知的情况下,同应用并行部署、运行。原创 2021-06-15 15:07:49 · 3490 阅读 · 1 评论 -
Istio是啥?一文带你彻底了解!
Istio是什么官方对 Istio 的介绍浓缩成了一句话:An open platform to connect, secure, control and observe services.翻译过来,就是”连接、安全加固、控制和观察服务的开放平台“。开放平台就是指它本身是开源的,服务对应的是微服务,也可以粗略地理解为单个应用。连接(Connect):智能控制服务之间的调用流量,能够实现灰度升级、AB 测试和红黑部署等功能安全加固(Secure):自动为服务之间的调用提供认证、授权和加密。控制原创 2021-06-01 15:54:32 · 14962 阅读 · 3 评论 -
通过Kubeadm部署一套K8s集群
目录一、前置知识点1.1 生产环境可部署Kubernetes集群的两种方式1.2 准备环境1.3 操作系统初始化配置二、部署Nginx+Keepalived高可用负载均衡器2.1 安装软件包(主/备)2.2 Nginx配置文件(主/备一样)2.3 keepalived配置文件(Nginx Master)2.4 keepalived配置文件(Nginx Backup)2.5 启动并设置开机启动2.6 查看keepalived工作状态2.7 Nginx+Keepalived高可用测试三、部署Etcd集群3.1原创 2021-05-22 23:38:03 · 469 阅读 · 0 评论 -
K8s之YAML语法
YAML 是一种非常简洁/强大/专门用来写配置文件的语言YAML 全称是 ”YAML Ain’t a Markup Language” 的递归缩写,该语言的设计参考了 JSON / XML 和 SDL 等语言,强调以数据为中心,简洁易读,编写简单。YAML 语法特性语法特点大小写敏感通过缩进表示层级关系禁止使用tab缩进,只能使用空格键缩进的空格数目不重要,只要相同层级左对齐使用#表示注释# yamllanguages: - Ruby - Perl - Py原创 2021-05-01 17:22:55 · 1388 阅读 · 0 评论 -
K8s之Kubectl 命令总结
kubectl介绍工具使用参数使用相关配置创建资源对象查看资源对象查看资源描述更新修补资源删除资源对象编辑资源文件直接执行命令查看容器日志介绍kubectl 是 Kubernetes 自带的客户端,可以用它来直接操作 Kubernetes 集群。Kubernetes API 是一个 HTTP REST API 服务,该 API 服务才是 Kubernetes 的真正用到的用户接口,所以 Kubernetes 通过该 API 进行实际的控制。这也就意味着每个 Kubernetes 的操作都会通过 API原创 2021-04-23 01:38:26 · 1148 阅读 · 0 评论 -
超详细!Kubernetes 学习笔记总结
1、K8S 是什么,即作用和目的。涉及 K8S 架构的整理,Master 和 Node 之间的关系,以及 K8S 几个重要的组件:API Server、Scheduler、Controller、etcd 等。2、K8S 的重要概念,即 K8S 的 API 对象,也就是常常听到的 Pod、Deployment、Service 等。3、如何配置 kubectl,介绍kubectl工具和配置办法。4、如何用kubectl 部署服务。5、如何用kubectl 查看、更新/编辑、删除服务。6、如何用kubectl原创 2021-04-13 11:11:34 · 1385 阅读 · 0 评论 -
Kubernetes 总结
K8s 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。往期文章:1、Kubernetes(K8S)集群部署搭建图文教程2、Kubernetes Pod概念与网络通讯模式3、Kubernetes 资源清单与Pod生命周期4、Kubernetes Pod控制器实例演示5、Kubernetes Service与Ingress详解6、Kubernetes 存储(Configmap、Secret、Volume、PV-PVC)7、Kubernetes 集群调度原创 2020-10-30 11:15:29 · 528 阅读 · 1 评论 -
Kubernetes 证书可用年限修改
证书可用年限修改[root@k8s-master01 pki]# openssl x509 -in apiserver.crt -text -noout先下载kubeadm的源码,针对apiserver一年年限证书分发的函数进行修改,由1年改为10年。(需要go语言的环境)go中文社区1.go语言环境[root@k8s-master01 data]# tar -zxvf go1.15.2.linux-amd64.tar.gz -C /usr/local[root@k8s-master01 da原创 2020-10-10 12:44:11 · 426 阅读 · 0 评论 -
Kubernetes Helm及其功能性组件
在没使用helm之前,向kubernetes部署应用,我们要依次部署deployment、svc等,步骤较繁琐。况且随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm通过打包的方式,支持发布的版本管理和控制,很大程度上简化了Kubernetes应用的部署和管理原创 2020-10-09 19:11:03 · 984 阅读 · 5 评论 -
Kubernetes 集群安全
Kubernetes作为一个分布式集群的管理工具,保证集群的安全性是其一个重要的任务。API Server 是集群内部各个组件通信的中介,也是外部控制的入口。所以Kubernetes的安全机制基本就是围绕保护API Server来设计的。Kubernetes使用了认证(Authentication)、鉴权(Authorization)、准入控制(Admission Control)三步来保证API Server的安全原创 2020-10-07 01:06:00 · 612 阅读 · 0 评论 -
Kubernetes 集群调度(节点亲和性、Pod亲和性、Taint与Toleration)
一、简介, 二、调度过程, 三、自定义调度器, 四、节点亲和性(pod与node的亲和性), 五、Pod亲和性(pod与pod之间的亲和性), 六、Taint 和 Toleration: 污点 (Taint)、 容忍(Tolerations)、 八、指定调度节点原创 2020-10-06 13:07:56 · 4363 阅读 · 4 评论 -
Kubernetes 存储(Configmap、Secret、Volume、PV-PVC)
一、ConfigMap、1、ConfigMap描述信息、2、ConfigMap的创建、3、Pod中使用ConfigMap、4、ConfigMap的热更新,二、Secret1、Secret存在意义、2、Secret的三种类型、3、Service Account、4、Opaque Secret,三、volume、1、背景、2、卷的类型、3、卷类型:emptyDir、4、卷类型:hostPath,四、PV-PVC、1、持久化演示说明 - NFS、2、关于StatefulSet、原创 2020-10-06 01:43:22 · 1320 阅读 · 1 评论