[转帖]容器云之K8s自动化安装方式的选择
容器云之K8s自动化安装方式的选择
https://www.tuicool.com/articles/ZzQJJzA 普源软件的说明 三年前就开始用了 国内还是有很多公司在一直努力发展的 只是自己不知道.
目前kubernetes 已经发展到1.5的时代,但在这之前学习和使用kubernetes还是走了不少弯路,第一个问题就是安装,也许你会说安装很简单。照着官网或网上抄一篇就可以装上了……
而我们使用kubernetes是1.1和1.2版本的时候,那时候最权威的文档应该就是kubernetes.io官网文档……,然而我们在官网进行问题检索的时候会出现(这张图来源网络)

这张图已经很明说明问题了……由于安装过程中的存在的问题,造成之后在使用过程中的一系列问题……
随着kubernetes的发展(目前已经到达1.5 beta版),和之前相比官方文档也已经更加完善。同时也出现了多种安装kuberntets的方法,在这么多种的安装法我们该如何选择呢?
今天为大家介绍5种安装方法

minikube

minikube 由 CoreOS 提供在单机上构件 kubernetes 集群。minikube命令可以运行在windows/linux/macos等平台,使用minikube搭建本地集群是非常方便的,同时minikube提供了完整的kubernetes集群的功能。对于初识者minikube是一种很好的安装方式,而且上手也非常快。但问题在于minikube安装的时候需要连接互联网,而且网络需要足够好……道理很简单。

这是官网使用minikube来启动kubernetes集群。有兴趣的可以查看github关于minikube的信息。
kubeadm

kubeadm 可以运行在物理机、虚拟机以及云主机,并且可以与chef或puppet配合可以完成自动化部署安装。kubeadm与minikube一样,你的网络要好,原因也很简单……
kubeadm 是 kubernetes 在1.4版推出安装 kubernetes 集群。目前还处于alpha,不建议在生产环境使用。本人在centos系统上安装测试时会出现无法连接到kubeadm所需要的yum源。即使按照官网配置了源也行出现无法下载源,最后是找到三方源才能顺利安装完成。在安装过程中可选的配置参数太少,所以基本都需要在使用过程中自行修改。


如图就是官方说明添加yum源,ubuntu没测试过。
hyperkube image

hyperkube images 由 Google 推出将 kubernetes 各组件以容器方式运行。容器可以有(docker/rkt等)。使用 hyperkube images 需要提前配置 kubelet 组件。最终通过kubelet将kubenetes部署各组件。这种安装方法的好处是:只要系统可运行容器,就可以通过hyperkube images 来运行kubernetes组件。
通过 hyperkube images 部署kubernetes组件,首先你的网络要好,原因很简单……或者你提前在本地准备好 hyperkube images 。
前面说过使用 hyperkube images 需要使用 kubelet 组件。运行kubelet组件可以有两种方法:docker和systemd。


通过设置kubelet 的–config目录。kubelet 会自动运行此目录中所添加的组件。在这里需要注意是,在kubernetes V1.3的版本,需要手动创建kube-system的namespace 而V1.4版本不需要配置。
docker

docker images 由 kubernetes 在发行版本中提供 docker images,并通过 docker images 运行 kubernetes 组件。所需要的镜像包在kubernetes-server-linux-amd64.tar.gz里。
SystemD
第五种方法通过SystemD来实现,这也是我们在生产和测试环境使用的方法。

Like it or not, systemd is here to stay.
看完上图也许我会明白systemd在系统中的重要做用。
在这之前,我们在Linux下使用容器你会发现,不能挑内核,不能加载内核模块,不能挂载文件系统,不能调整内核参数,不能改网络配置。如果你在运行容器时使用了 docker run –privileged 那我只能说祝你好运。
如果容器就是通过cgroups堆出来,那么容器本身的/sys /dev 和 /proc 存在隔离性的问题。
因此通systemd+selinux 来进行管理,而kubernetes只需要调用systemd就完成对于容器的管理。

因此我在基于systemdd在自的环境编写了安装kubernetes各组件的脚本。

安装脚本主要完成上图的安装和配置。
总结
个人推荐使用systemd的方式来远行kubenetes各组件。如果可以,可以使用rkt+systemd。
文中可能存在错误的地方欢迎大家指正。希望大家在安装kubernetes时少走弯路。谢谢!
普元云计算专区: http://primeton.csdn.net/m/zone/primeton/index#
普元公众号:

[转帖]容器云之K8s自动化安装方式的选择的更多相关文章
- Eclipse插件安装方式及使用说明
拷贝安装方式 1.通过ECLIPSE_HOME\plugins安装 在eclipse的主目录ECLIPSE_HOME, 比如在我的机器上安装的目录是:ECLIPSE_HOME有一个plugins的目录 ...
- 轻量化安装 TKEStack:让已有 K8s 集群拥有企业级容器云平台的能力
关于我们 更多关于云原生的案例和知识,可关注同名[腾讯云原生]公众号~ 福利: ①公众号后台回复[手册],可获得<腾讯云原生路线图手册>&<腾讯云原生最佳实践>~ ②公 ...
- [k8s]kubespray(ansible)自动化安装k8s集群
kubespray(ansible)自动化安装k8s集群 https://github.com/kubernetes-incubator/kubespray https://kubernetes.io ...
- 微服务与K8S容器云平台架构
微服务与K8S容器云平台架构 微服务与12要素 网络 日志收集 服务网关 服务注册 服务治理- java agent 监控 今天先到这儿,希望对技术领导力, 企业管理,系统架构设计与评估,团队管理, ...
- 容器版Jenkins连接Kubernetes---------非容器版jenkins是无法安装kubenetes插件的,所以无法连接k8s
容器版Jenkins连接Kubernetes 特别注意:必须用谷歌浏览器,而且非容器版jenkins是无法安装kubernetes插件的,所以无法连接k8s 一.环境说明 OS系统版本:Ubuntu ...
- [转帖]浙江移动容器云在ARM服务器的实践
浙江移动容器云在ARM服务器的实践 2019-07-11 22:27 中文社区 分类:Kubernetes实践分享/开发实战 阅读(427) 评论(0) 国产ARM服务器上面跑K8S集群.. 貌似浪 ...
- Kubernetes容器云平台建设实践
[51CTO.com原创稿件]Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署.大规模可伸缩.应用容器化管理.伴随着云原生技术的迅速崛起,如今Kubernetes 事实上已经 ...
- 容器云平台No.1~基于Docker及Kubernetes构建的容器云平台
开篇 最近整理笔记,不知不觉发现关于kubernetes相关的笔记已经达99篇了,索性一起总结了.算是对这两年做容器云平台的一个总结,本文是开篇,先介绍下所有用到的组件.首先来看下架构图(实在画的太丑 ...
- 【容器云】传统金融企业的 Docker 实践
基于 Docker 的容器云-Padis 目前市面上基于容器云的产品有很多,对于平安而言,则是基于 Docker 的 Padis 平台.所谓 Padis,全称是 PingAn Distribution ...
随机推荐
- Luogu P1951 收费站_NOI导刊2009提高(2) 二分 最短路
思路:二分+最短路 提交:1次 题解: 二分最后的答案. $ck()$: 对于每次的答案$md$跑$s,t$的最短路,但是不让$c[u]>md$的点去松弛别的边,即保证最短路不经过这个点.最后$ ...
- springboot的@Configuration文件读取static静态文件
错误 正确
- Selenium定位class包含空格的元素-复合class节点
在HTML中, 节点有三种常见属性, 分别是id, name和class, 其中class是一个特殊的属性, 支持多个类名, 以空格隔开, 如下图所示: 你是否注意到, 为什么selenium中的fi ...
- 浙江省赛C.Array in the Pocket(贪心+线段树)
题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4102 题意: 给出一个长度为n的数组,重排它们,让相同位置的数 ...
- mysql 1045 - Access denied for user 'root'@'*.*.*.*' (using password YES)
远程无法连接mysql 解决方法: 1.在服务器登录数据 mysql -uroot -hlocalhost -P3306 -p Enter password: Welcome to the MySQL ...
- [CTS2019]珍珠——二项式反演
[CTS2019]珍珠 考虑实际上,统计多少种染色方案,使得出现次数为奇数的颜色数<=n-2*m 其实看起来很像生成函数了 n很大?感觉生成函数会比较整齐,考虑生成函数能否把n放到数值的位置,而 ...
- Leetcode题目236.二叉树的最近公共祖先(中等)
题目描述: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x,满足 x 是 p.q 的祖先 ...
- pdnovel 看书 读书 听书
pdnovel剖度小说是discuz的阅读插件,这里分享一下阅读的一些技巧. 看书 点击或手机输入 http://txt.xlongwei.com 即可进入阅读首页,内容分书book.卷volume. ...
- LSTM参数和结构的本质理解——num_units参数/batch_size/cell计算
参考 ———— 图例讲解 https://blog.csdn.net/u014518506/article/details/80445283 理解:cell其实只有一个 : sequence leng ...
- Ubuntu16.04.3安装并配置samba方法
目的:单个Linux用户可以在windows电脑上通过映射网络驱动器的方式来访问自己的工作目录. 方法如下: 1.安装smb服务器:apt-get install samba2.安装smb支持的文件系 ...