您好,欢迎来到站长目录(28sn.com)!


kubeadm安装Kubernetes1.15安装部署详解-Part 1

来源:本站原创 浏览:1055次 时间:2019-07-11
-bak main-content">

kubeadm安装Kubernetes1.15安装部署详解-Part 1

简介:

Kubernetes最初源于谷歌内部的Borg,提供了面向应用的容器集群部署和管理系统。Kubernetes的目标旨在消除编排物理/虚拟计算,网络和存储基础设施的负担,并使应用程序运营商和开发人员完全将重点放在以容器为中心的原语上进行自助运营。Kubernetes 也提供稳定、兼容的基础(平台),用于构建定制化的workflows 和更高级的自动化任务。 Kubernetes 具备完善的集群管理能力,包括多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和服务发现机制、内建负载均衡器、故障发现和自我修复能力、服务滚动升级和在线扩容、可扩展的资源自动调度机制、多粒度的资源配额管理能力。 Kubernetes 还提供完善的管理工具,涵盖开发、部署测试、运维监控等各个环节。

选择部署方式

公司业务环境在去年已经完成了全线容器化改造,并结合开源容器管理平台Rancher(v1.6)流畅运行,后面发现kubernetes 有要一统的江湖节奏。后面个人有时间逐步开始调研k8s集群,先从源码部署开始的,源码部署的时候个人使用了ansible,整个过程可谓一通折腾啊,踩了很多坑。网上倒是有不少批量自动化工具,鉴于我们现在准备用在生产环境,未来是要替换公司容器化生产环境,个人按照公司的业务常规服务器配置,重新组织了基于源码部署的ansible-playbook。可以完成一件部署一套多主高可用kubernetes集群,模块如下:

p1-nginx.yamlp2-keepalived.yml1-download-sofrware.yaml2-creat-key.yaml3-kernelup.yaml4-basic.yml5-copy-command.yml6-etcd.yml7-kubmaster.yaml8-kubnode.yaml9-flannel.yaml10-coredns.ymlp1-nginx.yamlp2-keepalived.yml

整个过程花费很多精力和时间,过程痛苦而漫长(O(∩_∩)O哈!),当然收获也很多。

关于使用源码部署:

如果个人想学习或者想了解一些配置细节可以用这种方法,但是最好不要自己写自动化这块,谈不上特别复杂,主要是使用批量部署工具部署分布集群,肯定要使用很对变量对路径、配置、权限进行规范,这块调试挺花时间的,另外如果再对集群部署不熟悉就更坑了。学习、了解直接手动敲一遍就行,先别把自动化的事情在初期就一起推进。另外老鸟就另说了,有时间可以折腾,毕竟自动化部署复杂集群效率还是挺高的。

使用kubeadm工具

在使用kubadm之前个人是倾向于源码部署的,后面再看关于k8s相关周边资料发现,官方对kubeadm安装部署推广力度挺大,新功能迭代也很快。另外还有一个重要因素就是k8s的新功能更新也挺快,新的功能、特性都可能面临配置的变更和参数的变化。还有k8s周边的组件dns、网络插件与k8s兼容和匹配都有约束,好多支持版本的特性只会写在官方发布的文档里面,以上种种都带来问题和坑。。。。。。

部署方式推荐:

总体考虑我推荐使用官方推荐工具部署,首先官方发布新版本前会进行自测和功能验证,兼容性问题基本可以避免,官网工具用户量也有保障,有问题解决的速度也快。未来跟随主版本升级也比较方便。省出来的时间可以多去思考公司业务如何在k8s上跑的更加流畅。

本次部署架构

kubeadm deploy master

节点角色介绍
[kub-master]        节点名称                部署服务172.20.101.157 name=kubm-01  docker、keepalived、nginx、etcd、kube-apiserver、kube-controller-manager、kube-scheduler172.20.101.164 name=kubm-02  docker、keepalived、nginx、etcd、kube-apiserver、kube-controller-manager、kube-scheduler172.20.101.165 name=kubm-03  docker、keepalived、nginx、etcd、kube-apiserver、kube-controller-manager、kube-scheduler[kub-node]172.20.101.160 name=kubnode-01 kubelet、docker、kube_proxy172.20.101.166 name=kubnode-02 kubelet、docker、kube_proxy172.20.101.167 name=kubnode-03 kubelet、docker、kube_proxy
部署环境介绍
docker -vDocker version 18.06.1-ce, build e68fc7a
kubeadm versionkubeadm version: &version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.0", GitCommit:"e8462b5b5dc2584fdcd18e6bcfe9f1e4d970a529", GitTreeState:"clean", BuildDate:"2019-06-19T16:37:41Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}
Kubernetes VERSION   v1.15.0  
more /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 
uname  -aLinux kubm-01 4.20.10-1.el7.elrepo.x86_64 #1 SMP Fri Feb 15 08:52:17 EST 2019 x86_64 x86_64 x86_64 GNU/Linux
nginx -vnginx version: nginx/1.16.0
keepalived -vKeepalived v1.3.5 (03/19,2017), git commit v1.3.5-6-g6fa32f2

 ### 配置部署为了减小篇幅放到一个单独的文档。

https://blog.51cto.com/michaelkang/2413965

推荐站点

  • 我爱发烧音乐我爱发烧音乐

    我爱发烧音乐囊括了从流行音乐到古典音乐多个类型的音乐作品,专栏推荐最新的音乐,提供音乐排名榜单!可供免费线上收听音乐,歌曲流畅,音效极佳! 网站提供的钢琴以及二胡专栏,可供收听者,陶冶情操,改善心情,是难得的轻音乐典藏!

    www.520fs.com
  • 世纪音乐网世纪音乐网

    世纪音乐网是专业的在线音乐试听MP3下载网站。歌曲总计30余万首,收录了网上最新歌曲和流行音乐,DJ舞曲,非主流音乐,经典老歌,劲舞团歌曲,搞笑歌曲,儿童歌曲,英文歌曲等。是您上网听歌的最佳网站。

    www.ssjj.com
  • 怒江大峡谷网怒江大峡谷网

    怒江大峡谷网内容包括:新闻、要闻、怒江报、视频、文化、民俗、人文、音乐、政务、公告、政策等地方信息。

    www.nujiang.cn
  • 杭州网杭州网

      杭州网是杭州地区唯一的新闻门户网站,由中共杭州市委宣传部、杭州日报报业集团和杭州广播电视集团共同组建的杭州网络传媒有限公司运营。

    www.hangzhou.com.cn
  • 深圳在线深圳在线

      深圳在线 www.szol.net是深圳本地最大、最早的地方生活资讯网站之一,网站名“深圳在线www.szol.net”由南方报业传媒集团编辑委员会总编辑、南方日报社总编辑、南方都市报总编辑、南方书画院名誉院长王春芙亲笔题名,深圳在线www.szol.net团队与深圳热线www.szonline.net、奥一网www.oeeee.com都源于全国最早成立于1996年的知名网络公司——深圳万用网。

    www.szol.net

鄂公网安备 42062502000001号