随笔分类 - kubernets
kubernets
摘要:##k8s 集群高可用 如图,k8s集群里,我们只需要保证这4个组件的高可用,就能保证集群的高可用 ###1.1 etcd高可用 如上图,etcd我们使用raft,raft是一种共识算法。我们最少需要3,5,7,9这样奇数的节点才能实现etcd的高可用,ledger,flolower,candida
阅读全文
摘要:##k8s 资源限制 Kubernetes 对资源的限制实际上是通过 CGROUP 来控制的,CGROUP 是容器的一组用来控制内核如果运行进程的相关属性集合。针对内存、CPU、和各种设备都有对应的 CGROUP 默认情况下,Pod 运行没有 CPU 和内存的限额。这意味着系统中任何 Pod 将能够
阅读全文
摘要:##k8s rollout //查看历史版本 kubectl rollout history //暂停资源 kubectl rollout pause //恢复暂停资源 kubectl rollout resume //查看资源状态 kubectl rollout status //回滚版本 kub
阅读全文
摘要:##k8s helm 搭建prometheus prometheus与zabbix区别: 相比较zabbix,prometheus可以自动发现服务,zabbix自己也可以通过脚本自动服务发现端口并监控,但是假如端口挂了,zabbix会变黑,提示历史的端口不在了。也就是在每个pod中都有这个脚本,比较
阅读全文
摘要:##k8 helm 搭建EFK ELK已经被阿里巴巴收购了,目前是国际上的开源软件 例如收集全国各地的日志,以上海为例 上海地区的每台机器都部署一个logstash,然后日志转发给一个总的logstash,logstash日志转发给es的两个客户端es-C,交由es的Master端es-M,再存储在
阅读全文
摘要:##k8s helm 搭建dashboard ###1.1 下载包 我们可以通过官网: https://artifacthub.io/ 可以搜索到dashboard的chart和镜像 但是helm默认的是google,我们国内无法访问,我这下载好放到网盘上了: 链接:https://pan.baid
阅读全文
摘要:k8s helm 官网地址 :https://github.com/easzlab/kubeasz/blob/master/docs/guide/helm.md 镜像源问题 国外的镜像源在helm add的时候可能无法add,可以修改国外的镜像源改为国内镜像源 helm repo add ranch
阅读全文
摘要:目录k8s 集群安全-认证sa和用户的区别rbac概念RBAC三要素RBAC四对象1.1 机制说明2.1 认证2.1.1 HTTPS 证书认证:2.1.2 需要认证的节点2.1.2.1 安全性说明2.1.2.2 证书颁发2.1.2.3 证书有两套:k8s就是两套cs架构2.1.3 kubeconfi
阅读全文
摘要:##k8s 指定调度节点 ###1.1 Pod.spec.nodeName 将 Pod 直接调度到指定的 Node 节点上,会跳过 Scheduler 的调度策略,该匹配规则是强制匹配 apiVersion: extensions/v1beta1 kind: Deployment metadata:
阅读全文
摘要:##k8s 亲和性 分为节点亲和性,pod亲和性和pod反亲和性 ###1.1 节点亲和性 pod.spec.nodeAffinity preferredDuringSchedulingIgnoredDuringExecution:软策略,如果条件允许就在一台节点上,条件不允许就去别的节点 requ
阅读全文
摘要:##k8s 调度器 Scheduler 是 kubernetes 的调度器,主要的任务是把定义的 pod 分配到集群的节点上。听起来非常简单,但有很多要考虑的问题: 公平:如何保证每个节点都能被分配资源 资源高效利用:集群所有资源最大化被使用 效率:调度的性能要好,能够尽快地对大批量的 pod 完成
阅读全文
摘要:##k8s pv-pvc ###1.1 简介 自己搭建 云供应商的则会提供文档,直接提供PV ####1.1.1 PersistentVolume(PV) 是由管理员设置的存储,它是群集的一部分。就像节点是集群中的资源一样,PV 也是集群中的资源。 PV 是 Volume 之类的卷插件,但具有独立于
阅读全文
摘要:k8s volume 容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动。其次,在 Pod 中同时运行多个容器时,这些容器之间通常需要共享文件。Kuber
阅读全文
摘要:##k8s configMap ConfigMap 功能在 Kubernetes1.2 版本中引入,许多应用程序会从配置文件、命令行参数或环境变量中读取配置信息。ConfigMap API 给我们提供了向容器中注入配置信息的机制,ConfigMap 可以被用来保存单个属性,也可以用来保存整个配置文件
阅读全文
摘要:目录k8s ingressingress是什么ingress-nginx下载部署ingressIngress 资源Ingress 规则默认后端资源后端路径类型多重匹配主机名通配符Ingress 类IngressClass 的作用域集群作用域命名空间作用域默认 Ingress 类Ingress 类型简
阅读全文
摘要:目录k8s service服务发现k8s service 概念Service 的类型ClusterIp类型NodePort 类型LoadBalancer 类型ExternalName 类型工作组件vip 和 proxy模式演变ipvs k8s service服务发现 k8s service 概念 K
阅读全文
摘要:##服务转发 ###1.1 服务转发 kind: Service apiVersion: v1 metadata: name: msyql namespace: middleware spec: ports: - port: 80 protocol: TCP name: http type: Clu
阅读全文
摘要:##k8s 节点状态 ###1.1 k8s集群节点状态变成NotReady,SchedulingDisabled # kubectl get node NAME STATUS ROLES AGE VERSION master-1 NotReady <none> 2d1h v1.18.6 node-3
阅读全文
摘要:k8s hook钩子 简介 在介绍优雅停机之前,我们先来了解下k8s的容器都有哪些生命周期钩子?作用是什么?要怎么使用?Kubernetes的容器有两种生命周期钩子(Lifecycle Hooks): PostStart这个钩子会在容器被创建后立即执行,但无法保证会在容器的起始点 ENTRYPOIN
阅读全文