Kubernetes - Job/CronJob
|Word Count:6|Reading Time:1mins
生成模板
Job
CronJob
Author: zhongmingmao
Copyright Notice: All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
Related Articles

2023-01-29
Kubernetes - Scaling
Aggregated APIServer 123456789101112131415161718192021222324$ k get apiservices.apiregistration.k8s.ioNAME SERVICE AVAILABLE AGEv1. Local True 36dv1.admissionregistration.k8s.io Local True 36dv1.apiextensions.k8s.io Local True 36dv1.apps Local True ...

2023-02-08
FaaS - Advanced Attributes
公共能力 将函数依赖的公共库提炼到层,以减少部署、更新时的代码包体积 对于支持层功能的运行时,函数计算会将特定的目录添加到运行时语言的依赖包搜索路径中 对于自定义层,需要将所有内容打包到一个压缩包,并上传到函数计算平台 函数计算运行时会将层的内容解压并部署到特定的目录 层功能的好处 函数程序包更小 避免在制作函数 zip 包和依赖项过程中出现未知的错误 可以在多个函数中引入使用,减少不必要的存储资源浪费 上传层之后,函数计算会将层的 zip 包上传到对象存储 当调用函数执行时,会从对象存储中下载层的 zip 包并解压到特定目录 应用程序只需要访问特定目录,就能读取层的依赖和公共代码 注意:后序的层会覆盖相同目录下的文件 快速迭代 标准运行时 / 自定义镜像 函数计算系统初始化执行环境之前,会扮演该函数的服务角色,获得临时用户名和密码并拉取镜像 镜像拉取成功后,会根据指定的启动命令、参数和端口,启动自定义的 HTTP Server 该 HTTP Server 会接管函数计算系统所有请求的调用 调用方式不同:事件函数 / HTTP 函数 在创建函...

2022-11-04
Kubernetes - ResourceQuota
Namespace Namespace 是一个 API 对象,但并不是一个实体对象,只是一个逻辑上的概念 123456$ k create ns test-nsnamespace/test-ns created$ k get ns test-ns -owideNAME STATUS AGEtest-ns Active 8s nginx-pod-ns.yaml12345678910apiVersion: v1kind: Podmetadata: name: nginx namespace: test-nsspec: containers: - name: nginx image: nginx:alpine 123456789101112$ k apply -f nginx-pod-ns.yamlpod/nginx created$ k get po -ntest-ns -owideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READ...

2022-12-06
Kubernetes - Kubelet
架构 每个 Node 上运行一个 Kubelet 服务进程,默认监听 10250 端口 接收并执行 Master 的指令 管理 Pod 以及 Pod 中的容器 在 API Server 注册 Node 信息,定期向 Master 汇报 Node 的资源使用情况 通过 cAdvisor 监控 Node 和容器的资源 cAdvisor 通过 Cgroups 收集并上报容器的资源用量 Node 管理 Node 自注册 + Node 状态更新 自注册模式:Kubelet 通过启动参数 --register-node 来确定是否向 API Server 注册 Kubelet 没有选择自注册模式 用户需要自己配置 Node 资源信息 告知 Kubelet 集群上的 API Server 的位置 Kubelet 选择自注册模式 Kubelet 定时向 API Server 发送 Node 信息 API Server 在接收到 Node 信息后,转存到 etcd Pod 管理 syncLoop - Kubelet 本身也是控制器模式 computePodActions - 比对 Pod...

2022-11-05
Kubernetes - Monitor
Metrics Server 用来收集 Kubernetes 核心资源的指标,定时从所有 Node 的 kubelet 采集信息对集群的整体性能影响极小,性价比很高,每个 Node 大约只会占用 1m vCPU 和 2MB 内存 Metrics Server 调用 kubelet 的 API,获取到 Node 和 Pod 的指标,再将这些信息交给 API Serverkubectl 和 HPA 可以通过 API Server 来读取指标 Metrics Server 早期的数据来源是 cAdvisor,原先是一个独立的应用程序,后来被集成进 kubelet https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml --kubelet-insecure-tls 1234567891011121314151617apiVersion: apps/v1kind: Deploymentmetadata: labels: k8s-app: metrics-se...

2022-12-12
Kubernetes - Service Discovery
基本概念发展历程 数据包 负载均衡的核心原理 - 修改包头数据 通过浏览器访问某网站的过程(组包在应用层,传包在内核层) 在浏览器输入网站的网址 浏览器本质上是一个 HTTP 客户端,组装成 HTTP 包 做 DNS 解析(递归) 封装 TCP 包(源端口 + 目标端口) 封装 IP 包(源 IP + 目标 IP - 来自于 DNS) 负载均衡 面向连接的负载均衡不一定能保证平均,如 grpc 是基于 http/2,会复用 TCP 连接,L4 的负载均衡就无法实现平均 方案集中式 F5(HLB) / Nginx(SLB) - 接入集群外部流量 在服务消费者和服务提供者之间有一个独立的 LB LB 上有所有服务的地址映射表,通常由运维配置注册 当服务消费者调用某个目标服务时,向 LB 发起请求,由 LB 以某种策略做负载均衡后将请求转发到目标服务 LB 一般具备健康检查的能力,能自动摘除不健康的服务实例 服务消费者通过 DNS 发现 LB,运维人员配置一个指向该 LB 的 DNS 域名 优缺点 优点 方案简单,在 LB 上容易实现集中式的访问控制,为业界主流...
Announcement
Things are always unexpected!







