• 对于注定会优秀的人来说,他所需要的,只是时间----博主
  • 手懒得,必受贫穷,手勤的,必得富足----《圣经》
  • 帮助别人,成就自己。愿君在本站能真正有所收获!
  • 如果你在本站中发现任何问题,欢迎留言指正!
  • 宝剑锋从磨砺出,梅花香自苦寒来!
  • 本站开启了防爆破关小黑屋机制,如果您是正常登录但被关进小黑屋,请联系站长解除!

<十七>Kubernetes学习笔记–手动搭建k8s-1.10.4高可用集群(前言以及准备)

kubernetes eryajf 6个月前 (12-09) 1245°C 已收录 0个评论
本文预计阅读时间 5 分钟

1,感谢原作者。

某日下午,打算再一次手动搭建k8s的1.10版本,在网上搜索的时候,发现了如下开源地址:https://github.com/opsnull/follow-me-install-kubernetes-cluster ,当即就被其吸引,然后就给身边小伙伴进行分享,我当时还打趣对他说,我有一个预感了,他说什么预感,我说我预感今天晚上将是一个不眠夜了。

说这话一方面是因为我看到教程的PDF版本全文达到了一百七十多页,十分夸张,另一方面,我已暗下决心,打算追看下去,事实上,那天晚上的确是追到了两点多才下班回家,虽然没有把教程全部追完,但是也已经大有收获,大有学习了,在此,再一次,认真,隆重的感谢原作者,感谢他的这种开源以及认真努力(据教程中所见,貌似作者是凌晨四点完成的文档)的精神。

我所分享的,并未完全按照原来的文档内容,而是经过自己的部署,自己的理解,进行整理,编辑而成的,使之更加容易阅读,也更加容易理解一些,毕竟对于自己这种刚入门的情况来说,写的越详细,就会越容易领略其中精髓吧。

接下来进入正式内容的分享。

2,组件版本

  • Kubernetes 1.10.4
  • Docker 18.03.1-ce
  • Etcd 3.3.7
  • Flanneld 0.10.0
  • 插件:
    • Coredns
    • Dashboard
    • Heapster (influxdb、grafana)
    • Metrics-Server
    • EFK (elasticsearch、fluentd、kibana)
  • 镜像仓库:
    • docker registry
    • harbor

3,主要配置策略

kube-apiserver:

  • 使用 keepalived 和 haproxy 实现 3 节点高可用;
  • 关闭非安全端口 8080 和匿名访问;
  • 在安全端口 6443 接收 https 请求;
  • 严格的认证和授权策略 (x509、token、RBAC);
  • 开启 bootstrap token 认证,支持 kubelet TLS bootstrapping;
  • 使用 https 访问 kubelet、etcd,加密通信;

kube-controller-manager:

  • 3 节点高可用;
  • 关闭非安全端口,在安全端口 10252 接收 https 请求;
  • 使用 kubeconfig 访问 apiserver 的安全端口;
  • 自动 approve kubelet 证书签名请求 (CSR),证书过期后自动轮转;
  • 各 controller 使用自己的 ServiceAccount 访问 apiserver;

kube-scheduler:

  • 3 节点高可用;
  • 使用 kubeconfig 访问 apiserver 的安全端口;

kubelet:

  • 使用 kubeadm 动态创建 bootstrap token,而不是在 apiserver 中静态配置;
  • 使用 TLS bootstrap 机制自动生成 client 和 server 证书,过期后自动轮转;
  • 在 KubeletConfiguration 类型的 JSON 文件配置主要参数;
  • 关闭只读端口,在安全端口 10250 接收 https 请求,对请求进行认证和授权,拒绝匿名访问和非授权访问;
  • 使用 kubeconfig 访问 apiserver 的安全端口;

kube-proxy:

  • 使用 kubeconfig 访问 apiserver 的安全端口;
  • 在 KubeProxyConfiguration 类型的 JSON 文件配置主要参数;
  • 使用 ipvs 代理模式;

集群插件:

  • DNS:使用功能、性能更好的 coredns;
  • Dashboard:支持登录认证;
  • Metric:heapster、metrics-server,使用 https 访问 kubelet 安全端口;
  • Log:Elasticsearch、Fluend、Kibana;
  • Registry 镜像库:docker-registry、harbor;

weinxin
扫码订阅,第一时间获得更新
微信扫码二维码,订阅我们网站的动态,另外不定时发送WordPress小技巧,你可以随时退订,欢迎订阅哦~

二丫讲梵 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明<十七>Kubernetes学习笔记–手动搭建k8s-1.10.4高可用集群(前言以及准备)
喜欢 (1)
[如果想支持本站,可支付宝赞助]
分享 (0)
eryajf
关于作者:
学无止境,我愿意无止境学。书山有路,我愿意举身投火,淬炼成金!

您必须 登录 才能发表评论!