
深入剖析Kubernetes学习笔记
文章平均质量分 80
学习笔记
正负日子
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深入剖析Kubernetes--第七章:NetworkPolicy&&ServiceDNS与服务发现&&NodePort&&Ingress
NetworkPolicy&&ServiceDNS与服务发现&&NodePort&&Ingress来源于bilibili 黑马程序员 和 纸质书 深入剖析KubernetesNetworkPolicy示例:apiVersion: networking.k8s.io/v1kind: NetworkPolicymetadata: name: test-network-policy namespace: defaultspec: podSel原创 2022-03-25 17:14:59 · 431 阅读 · 0 评论 -
深入剖析Kubernetes--第七章:单机容器网络的实现原理
单机容器网络的实现原理Docker 项目会默认在宿主机上创建一个名叫 docker0 的 网桥,凡是连接在 docker0 网桥上的容器,就可以通过它来进行通信。Veth Pair:将容器连到网桥以两张虚拟网卡(Veth Peer)的形式成对出现,从其中一个“网卡”发出的数据包,可以直接出现在与它对应的另一张“网卡”上,无论是否在同一个Network Namespace容器**“跨主机通信”**:通过软件的方式,创建一个整个集群“公用”的网桥,然后把集群里的所有容器都连接到这个网桥上里的所有原创 2022-03-23 21:38:22 · 1096 阅读 · 0 评论 -
深入剖析Kubernetes--第六章:持久化存储:PV和PVC的设计与实现原理
持久化存储:PV和PVC的设计与实现原理PVPV 描述的,是持久化存储数据卷这个 API 对象主要定义的是一个持久化存储在宿主机上的目录,比如一个 NFS 的挂载目录。apiVersion: v1 kind: PersistentVolumemetadata: name: pv2spec: nfs: # 存储类型,与底层真正存储对应 capacity: # 存储能力,目前只支持存储空间的设置 storage: 2Gi accessModes: # 访问模式 s原创 2022-03-15 09:57:57 · 563 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:声明式API与Kubernetes编程范式
声明式API与Kubernetes编程范式Istio项目Dynamic Admission Control在 Kubernetes 项目中,当一个 Pod 或者任何一个 API 对象被提交给 APIServer 之后,在K8S项目正式处理之前会通过 项目里一组被称为 Admission Controller 的代码实现 Admission 的功能 来 进行一些初始化工作(如自动为所有 Pod 加上某些标签(Labels)。)如果想要添加一些自己的规则到 Admission Controller(原创 2022-03-12 23:01:41 · 438 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:声明式API与Kubernetes编程范式
声明式API与Kubernetes编程范式Istio项目Dynamic Admission Control在 Kubernetes 项目中,当一个 Pod 或者任何一个 API 对象被提交给 APIServer 之后,在K8S项目正式处理之前会通过 项目里一组被称为 Admission Controller 的代码实现 Admission 的功能 来 进行一些初始化工作(如自动为所有 Pod 加上某些标签(Labels)。)如果想要添加一些自己的规则到 Admission Controller(原创 2022-03-11 22:18:37 · 699 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:Kubernetes编排原理_控制器_Job与CronJob
Job与CronJob创建一个Job API对象apiVersion: batch/v1kind: Jobmetadata: name: pispec: template: spec: containers: - name: pi image: resouer/ubuntu-bc command: ["sh", "-c", "echo 'scale=10000; 4*a(1)' | bc -l "] restar原创 2022-03-07 23:22:25 · 465 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:Kubernetes编排原理_控制器_DaemonSet
DaemonSet基础概念特点:这个Pod在K8s集群中的每一个节点上运行每个节点只有一个这样的Pod实例当有新节点加入集群后,该Pod会自动地在新节点上被创建出来,当旧节点被删除后,Pod也会被相应的回收定义:apiVersion: apps/v1 # 版本号kind: DaemonSet # 类型 metadata: # 元数据 name: # rs名称 namespace: # 所属命名空间 labels: #标签 controller: da原创 2022-03-07 21:53:49 · 250 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:Kubernetes编排原理_控制器_StatefulSet(2)
StatefulSet(二)Kubernetes 项目引入了一组叫作 Persistent Volume Claim(PVC)和 Persistent Volume(PV)的 API 对象定义一个 PVC,声明想要的 Volume 的属性kind: PersistentVolumeClaimapiVersion: v1metadata: name: pv-claimspec: accessModes: - ReadWriteOnce resources: requests原创 2022-03-05 22:08:08 · 2665 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:Kubernetes编排原理_控制器_StatefulSet(1)
StatefulSet(一) Deployment 假设了一个应用的所有Pod都是一样的,他们之间没有顺序。但在实际场景中,多个实例之间通常会存在依赖关系,例如分布式应用中存在主从、主备关系;数据存储类应用,它的多个实例,往往都会在本地磁盘上保存一份数据。而这些实例一旦被杀掉,即便重建出来,实例与数据之间的对应关系也已经丢失,从而导致应用失败。 当实例之间有不对等关系时,以及实例对外部数据有依赖关系时,被称为“有状态应用”(Stateful Application)StatefulSet将应用原创 2022-03-05 20:36:46 · 2854 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:Kubernetes编排原理_控制器_Deployment
控制器控制器都遵循k8s项目中的一个通用编排模式:控制循环遵循以下伪代码:for { 实际状态 := 获取集群中对象 X 的实际状态(Actual State) 期望状态 := 获取集群中对象 X 的期望状态(Desired State) if 实际状态 == 期望状态{ 什么都不做 } else { 执行编排动作,将实际状态调整为期望状态 }}实际状态:可以通过:心跳汇报、监控系统以及控制器主动收集等期望状态:一半来自于用户提交的YAML文件 [原创 2022-03-04 22:01:40 · 2613 阅读 · 0 评论 -
深入剖析Kubernetes--第五章:Kubernetes编排原理_Pod
kubernetes编排原理:Pod1 为什么需要Pod复习: Namespace做隔离,Cgroups做限制,rootfs做文件系统 容器的本质是进程今日学习: 在操作系统中,进程通常以进程组的方式“有原则”地组织在一起。 一些容器之间需要紧密协作(超亲密关系):互相之间发生直接的文件交换、使用localhost 或者Socket文件进行本地通信、会发生非常频繁的远程调用、需要共享某些Linux Namespace(例如一个容器需要加入另一个容器的 Network Namespace原创 2022-03-03 22:44:39 · 700 阅读 · 0 评论 -
深入剖析Kubernetes--第四章:k8s部署
深入剖析Kubernetes---k8s部署原创 2022-03-02 17:26:20 · 798 阅读 · 0 评论 -
深入剖析Kubernetes--第二章:容器技术基础
深入剖析Kubernetes---docker原理原创 2022-03-02 17:22:38 · 427 阅读 · 0 评论