美文网首页
k8s弹性伸缩

k8s弹性伸缩

作者: 大喵哥哥666 | 来源:发表于2019-07-28 19:51 被阅读0次

    k8s弹性伸缩

    安装dns附件组件并使用

    Kubernetes主要支持两种service发现机制:环境变量和DNS。没有dns服务的时候,kubernetes会采用环境变量的形式,一旦有很多个service,环境变量会变得很复杂,为了解决这个问题,我们使用DNS服务。

    pod资源的健康检查

    探针的种类

    • livenessProbe:健康状态检查,周期性检查服务是否存活,检查结果失败,将重启容器
    • readinessProbe;可用性检查,周期性检查服务是否可用,不可用将从service的endpoints中移除

    探针的检测方法

    • exec:执行一段命令
    • httpGet:检测某个http请求的返回状态码
    • tcpSocket:测试某个端口是否能够连接

    dashboard的安装部署

    namespace的作用

    实现多租户的隔离

    • 查看指定的namespace下的资源
      kubectl get all --namespace=kube-system
    • 同一个namespace下不允许出现两个一样的service
    • kubectl create namespace simon --创建一个namespace
    • kubectl get namespace --查看有哪些namespace
    • kubectl delete namespace simon --删除simon这个namespace下所有资源
    • kubectl get all --all-namespace --查看所有namespace下的资源

    反向代理访问k8s中的应用

    访问k8s中应用的方式

    部署k8s的heapster监控

    • grafana-service.yaml
    • heapster-service.yaml
    • influxdb-service.yaml
    • heapster-controller.yaml
    • influxdb-grafana-controller.yaml

    弹性伸缩

    Horizontal Pod Autoscaler的操作对象是Replication Controller、ReplicaSet或Deployment对应的Pod
    根据观察到的CPU使用量与用户的阈值进行比对,做出是否需要增减实例数量的决策。controller目前使用heapSter来检测CPU使用量,检测周期默认是30秒。

    • 创建hpa
      kubectl autoscale replicationcontroller myweb --max=8 --min=1 --cpu-percent=10
    • 压力测试
      ab -n 500000 -c 100 http://172.16.68.2 --用pod的IP

    相关文章

      网友评论

          本文标题:k8s弹性伸缩

          本文链接:https://www.haomeiwen.com/subject/lbgprctx.html