摘要: 部署elk日志收集: 本次全部基于deploy控制器,仅测试使用,生产建议使用sts和daemonset结合使用 容器中日志收集客户端: fluntd cncf毕业项目,适用于日志量不大 https://www.fluentd.org/ FluentBit 升级版,适合处理大量日志 https:// 阅读全文
posted @ 2022-09-02 16:05 suyanhj 阅读(199) 评论(0) 推荐(0)
摘要: Dashborad插件: 版本支持:https://github.com/kubernetes/dashboard/releases 每个dashborad对k8s的版本支持不一样,需要对应版本下载 安装: 1)下载yml文件 wget https://raw.githubusercontent.c 阅读全文
posted @ 2022-09-02 16:03 suyanhj 阅读(37) 评论(0) 推荐(0)
摘要: Pod资源限制: 限制两个维度: pod cpu、内存、gpu、网络、磁盘io namespace 对pod使用总资源限制 对pvc使用总资源限制 限制策略 requests: 需求,最低运行环境。但不是立即使用,用多少占多少 limits: 限制,最大使用上限 可限制资源: CPU资源: 例:1核 阅读全文
posted @ 2022-09-02 16:02 suyanhj 阅读(334) 评论(0) 推荐(0)
摘要: 代码版本升级和回滚: 在云原生中,k8s仅仅只是用来解决微服务的生命周期相关,在云原生环境中,应该采用更完善的gitops解决方案,能实现更高级、更便捷的版本发布,如: tekton argocd、argocd-rollout fluxcd jenkinX 升级: 支持2种更新策略 滚动更新: 起一 阅读全文
posted @ 2022-09-02 16:02 suyanhj 阅读(123) 评论(0) 推荐(0)
摘要: HPA控制器: 此控制器用于自动弹性伸缩 支持核心资源和非核心资源。核心资源的cpu可以压缩,但内存不能压缩,非核心资源中的内存可以压缩 需要依赖metric-server数据采集,根据给定的数据指标伸缩 默认15s查询一次metric采集的数据,可通过 -horizontal-pod-autosc 阅读全文
posted @ 2022-09-02 16:02 suyanhj 阅读(134) 评论(0) 推荐(0)
摘要: Scheduler调度器: k8s组件的工作关系: 创建pod: 客户端(kubectl)请求apiserver做相应的操作,api-server会进行认证(serviceaccount),授权检查(role等),都通过了则进行资源调度 调度器(scheduler)会在各个节点根据算法进行调度选择, 阅读全文
posted @ 2022-09-02 16:00 suyanhj 阅读(166) 评论(0) 推荐(0)
摘要: Pod高级调度: 调度方式: 节点选择器: nodeSelector、nodeName 节点亲和性: nodeAffinity Pod亲和性: podAffinity 污点: Taint 污点容忍度: Toleration 标签选择器: 等值关系: = == != 例: #添加两个测试pod,并添加 阅读全文
posted @ 2022-09-02 16:00 suyanhj 阅读(106) 评论(0) 推荐(0)
摘要: Pod资源限制: 限制两个维度: pod cpu、内存、gpu、网络、磁盘io namespace 对pod使用总资源限制 对pvc使用总资源限制 限制策略 requests: 需求,最低运行环境。但不是立即使用,用多少占多少 limits: 限制,最大使用上限 可限制资源: CPU资源: 例:1核 阅读全文
posted @ 2022-09-02 16:00 suyanhj 阅读(403) 评论(0) 推荐(0)
摘要: api访问控制: 客户端访问api-server时需要经过3个步骤:认证、鉴权、准入控制 三个步骤都是经由插件来实现,可多个插件同时使用,如认证插件有2个,其中一个认证通过就进入鉴权(权限检查) 文档: https://kubernetes.io/zh-cn/docs/concepts/securi 阅读全文
posted @ 2022-09-02 15:57 suyanhj 阅读(631) 评论(0) 推荐(0)
摘要: 特殊存储卷:ConfigMap+Secret 可用于生成环境变量传递给pod,或者直接以存储卷方式让pod获取配置文件 修改容器中应用配置的方式: 自定义命令行参数: args: [] 把配置文件放入容器内 环境变量: 应用本身支持环境变量 存储卷 ConfigMap: 属于另类的存储卷,用于存放p 阅读全文
posted @ 2022-09-02 15:57 suyanhj 阅读(119) 评论(0) 推荐(0)
摘要: PVC存储: 存储卷工作原理: 一个pod创建时,同时创建存储卷,根据类型访问定义好的存储类型 存储卷需提前手动创建出来 使用原理: pod中创建存储卷 容器绑定使用同一pod内的存储卷 pvc创建申请pv请求 按工作逻辑,划分空间 存储类: 根据各种存储进行分类,如nfs分类为网络存储,硬盘分类为 阅读全文
posted @ 2022-09-02 15:57 suyanhj 阅读(130) 评论(0) 推荐(0)
摘要: k8s持久卷: 所有存储都是持久卷的一种类型,可做成pv 普通存储: 数据持久化方式: 基于CSI,支持docker引擎 emptyDir 临时卷,对应docker的临时目录 hostPath 主机卷,对应docker的目录映射 网络附加存储 SAN iscsi NAS nfs、cifs 分布式存储 阅读全文
posted @ 2022-09-02 15:51 suyanhj 阅读(127) 评论(0) 推荐(0)
摘要: Ingress控制器: 工作在7层的负载均衡器,支持http、https、负载均衡、域名。作用与service一样,但是实现效果有区别 功能基于软件实现 工作原理: 客户端请求时,到达ingress-nginx的pod,再调度到ingress控制器,ingress控制器再根据ingress的定义工作 阅读全文
posted @ 2022-09-02 15:30 suyanhj 阅读(280) 评论(0) 推荐(0)
摘要: Pod控制器: RC、RS控制器的核心: 期望的副本数(replicas) 标签选择器(selector) pod模板(template) 注意: 控制器本身有一个spec配置,而template是为控制器提供的模板pod(创建多个副本时,直接获取模板的信息生成) 发布方式控制: RS默认使用的滚动 阅读全文
posted @ 2022-09-02 15:14 suyanhj 阅读(159) 评论(0) 推荐(0)
摘要: Service对象: 原理参考:k8s组件的kube-proxy部分 依赖kube-proxy来生成规则,每个node上的kube-proxy负责监听apiserver的对service的变更信息,一旦有对service变更,kube-proxy就执行规则更改 依赖coreDNS来动态添加、解析A记 阅读全文
posted @ 2022-09-02 15:14 suyanhj 阅读(96) 评论(0) 推荐(0)
摘要: Pod对象 相关的pod控制器,都是以此为基础,pod对象支持的方法,控制器一般也支持 pod对象也是pod控制器,最基础最小的控制单位。而pod控制器又有多种: Pod控制器 ReplicaSet控制器 #过时了 ReplicationController控制器 #过时了 Deployment控制 阅读全文
posted @ 2022-09-02 15:13 suyanhj 阅读(78) 评论(0) 推荐(0)
摘要: DNS组件: k8s集群内部全局域名解析格式: 用于不在同一个namespace中,但要解析ip时 svc名称.ns名称.svc.域名 ngx.defauls.svc.hj.local dns配置文件官网下载: https://github.com/kubernetes/kubernetes/tre 阅读全文
posted @ 2022-09-02 15:11 suyanhj 阅读(304) 评论(0) 推荐(0)
摘要: 常见对象 资源对象: Pod ReplicaSet ReplicationController Deployment StatefulSet DaemonSet Job CronJob HorizontalPodAutoscaling Node Namespace Service Ingress L 阅读全文
posted @ 2022-09-02 15:11 suyanhj 阅读(22) 评论(0) 推荐(0)
摘要: 网络插件: 网络插件简称CNI,是独立的内容,当kubelet控制pod时,调用网络网络插件生成CNI接口,所以有kubelet就必须要有网络插件 网络插件运行支持两种方式,做systemd管理的进程运行,或者以pod方式运行 k8s中网络通信: 容器间通信: 同一个pod内的多个容器,用lo po 阅读全文
posted @ 2022-09-02 15:10 suyanhj 阅读(366) 评论(0) 推荐(0)
摘要: k8s组件: 集群组件调用逻辑: master节点组件: kube-apiserver: 官方文档:https://kubernetes.io/zh/docs/reference/command-line-tools-reference/kube-apiserver/ 用于对pod进行操作、下发指令 阅读全文
posted @ 2022-09-02 15:08 suyanhj 阅读(143) 评论(0) 推荐(0)