k8s 标签

Prometheus监控redis实例

  |   0 评论   |   0 浏览

1.下载 redis_exporter 2.脚本 nohup ./redis_exporter -redis.addr 0.0.0.0:6379 -redis.password "password" & link 3.promethus endpoint apiVersion: v1 kind: Endpoints metadata: name: redis-exporter subsets: - addresses: - ip: 222.30.195.42 ports: - port: 9121 name: redisex --- apiVersion: v1 kind: Service metadata: name: redis-exporter labels: app: Redis spec: ports: - port: 9121 targetPort: 9121 name: redisex --- apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: labels: app:....

K8S服务健康检测

  |   0 评论   |   0 浏览

K8S 服务健康检测机制 1.业务探针 readinessProbe 1.1 为什么自动扩容导致请求失败? 一个新 Pod 创建后,Service 就能立即选择到它,并会把请求转发给 Pod,那问题就来了,通常一个 Pod 启动是需要时间的,如果 Pod 还没准备好(可能需要时间来加载配置或数据,或者可能需要执行 一个预热程序之类),这时把请求转给 Pod 的话,Pod 也无法处理,造成请求失败。 1.2 如何解决? 加入业务探针,可以理解为类似 ws 的心跳检测机制. Kubernetes 中解决这个问题的方法就是给 Pod 加一个业务就绪探针 Readiness Probe,当检测到 Pod 就绪后才允许 Service 请求转给 Pod。 Readiness Probe 周期性检测 Pod,然后根据响应来判断 Pod 是否就绪,Service 根据就绪状态分发流量。 1.3 配置详解 1.3.1 EXEC(shell)检测 apiVersion: apps/v1 kind: Deployment metadata: name: nginx spec: replicas: 3 selector: matchLabels: app: ng....

kubernetes文档知识点个人总结

  |   0 评论   |   0 浏览

只是整理知识点,所有内容来自 http://docs.kubernetes.org.cn/251.html,如有侵权请发送邮件通知删除 架构 K8s 主要组件 etcd: 保存集群状态 apiserver: 所有资源操作入口,认证授权,访问控制,API 注册,服务发现 controller-manager: 维护集群状态,故障检测,自动扩展,滚动更新 scheduler: 资源调度 kubelet: 维护容器的生命周期,CVI 和 CNI 管理 cri: 镜像管理和 pod 运行 kube-proxy: 为 Service 提供 cluster 服务发现和负载均衡 K8s addons kube-dns: 集群 dns 服务,多用 cni IngressController: 外网入口 Heapster: 资源监控 Dashboard: GUI Federation: 跨区用集群 Fluentd-elasticsearch: 日志采集存储查询 分层架构 核心层:Kubernetes 最核心的功能,对外提供 API 构建高层的应用,对内提供插件式应用执行环境 应用层:部署(无状态应用、有状态应用、批处....

K8S-Scheduler 启动脚本

  |   0 评论   |   0 浏览

#!/bin/bash # 是否输出错误信息 /opt/kubernetes/server/bin/kube-scheduler --logtostderr false \ # 日志级别 --v 2 \ # 日志目录 --log-dir /opt/kubernetes/logs \ # 自动找主节点 --leader-elect true \ # apiserver 地址 --master 127.0.0.1:8080 \ # 服务监听地址 --address 127.0.0.1

K8S-Controller-Manager启动脚本

  |   0 评论   |   0 浏览

#!/bin/bash // 错误是否输出 /opt/kubernetes/server/bin/kube-controller-manager --logtostderr false // 日志级别 --v 2 // log 目录 --log-dir /opt/kubernetes/logs // 多个 APIServer 自动选择一个调度 --leader-elect true // 指定 APIServer 的 API 地址 --master 127.0.0.1:8080 // 服务监听地址 --address 127.0.0.1 // 是否支持网络插件 --allocate-node-cidrs true // 基于插件分配网段地址 --cluster-cidr 10.244.0.0/16 // 客户端分配地址的范围 --service-cluster-ip-range 10.0.0.0/24 --cluster-signing-cert-file /opt/ssl/k8sca/ca.pem --cluster-signing-key-file /opt/ssl/k8sca/ca-key.p....

K8S-API-SEVER 启动脚本

  |   0 评论   |   0 浏览

#!/bin/bash /opt/kubernetes/server/bin/kube-apiserver # 是否打印错误信息 --logtostderr false # 日志级别 --v 2 # 日志目录 --log-dir /opt/kubernetes/logs # etcd 的地址 --etcd-servers https://192.168.111.119//192.168.111.99:2379,https://192.168.111.109:2379 # 本服务,APIServer 的地址 --bind-address 192.168.111.119 # 本服务端口 --secure-port 6443 # 广播地址 --advertise-address 192.168.111.119 # 是否 使用超级管理员权限创建容器 --allow-privileged true # 启动 Service 时生成的虚拟网段 --service-cluster-ip-range 10.0.0.0/24 # 开启插件 --enable-admission-plugi....

K8S-ETCD 启动脚本

  |   0 评论   |   0 浏览

那就请使用这个 Command 吧 由于 GitHub Release 下载下来只有 etcd 和 etcdctl 并没有 配置文件 和 systemctl.service 所以迫不得已写了个命令行,贴出来已备后用 #!/bin/bash // name 请改成当前节点 etcd 的 name // etcd 命令请指定到自己的目录 // ip 地址请改成自己的地址 // pem 证书目录请改成自己的目录 /opt/etcd/etcd --name etcd-1 \ --data-dir var/lib/etcd/default.etcd \ --listen-peer-urls https://192.168.1.109 \ --listen-client-urls https://192.168.1.109//127.0.0.1:2379 \ --advertise-client-urls https://192.168.1.109 \ --initial-advertise-peer-urls https://192.168.1.109 \ ....