我刚刚听说了在未来的Docker版本中本地Kubernetes的支持。我以前从未使用过库伯内特斯,所以我开始阅读它。但我有点困惑: Kubernetes被描述为编排工具,也是Dockers S群模式的替代品。
那么,如果库伯内特斯做编曲,它也是码头编曲的替代品吗?或者写作和库伯奈特可以一起使用?
一些具体问题:假设我希望(或不得不)使用Kubernetes:
发布于 2017-10-20 11:05:12
那么,如果库伯内特斯做编曲,它也是码头编曲的替代品吗?
简短答覆:否
它不仅仅是业务流程,从本质上说,Kubernetes是一个生产级容器编排和调度引擎。它比docker-compose本身要先进得多。我认为docker swarm、kubernetes和amazon ecs属于同一类别。
或者写作和库伯奈特可以一起使用?
在下一个版本的停靠引擎中,您将能够使用docker创建kubernetes对象。但现在你不能。
我有一个包含多个微服务的坞-撰写文件,但是它们作为一个独立的应用程序运行在一台机器上。它能(或者应该)被库伯内特斯取代吗?
好的,在生产中运行它的上下文中,我会说绝对是,您肯定应该在kubernetes集群上托管应用程序,因为它提供了
还有更多的功能。当您声明一个状态时,kubernetes总是试图实现和维护该状态。
我有一个带有多个服务(在多台机器上运行)的集群模式配置的坞-撰写文件。哪一部分必须由库伯奈特来代替?整个作曲文件?或者是否可以定义基本配置(env_var、卷、命令、.)在编写文件中,只使用Kubernetes来编排集群?
我将替换整个集群,并使用kubernetes集群和对象定义yaml来构建文件。尽管如此,根据我的经验,如果您对掌舵感兴趣,这些yamls可能会变得有些冗长。它是kubernetes的包管理器,您没有可以使用的,但我认为它是目前kubernetes生态系统中最好的工具之一,并且有大量的开放源代码图表可供使用。
我强烈建议您在本地系统上使用kubernetes使用minikube来熟悉一般概念。然后你们就可以自己回答上述问题了。
发布于 2017-10-20 10:09:20
首先,Kubernetes和Docker的群“模式”都是容器编排工具。Docker compose,该工具和YAML文件格式,过去一直是描述多容器应用程序的方式,然后部署到Docker的群模式编排器中。
Kubernetes有自己的YAML服务定义(和其他定义文件格式),它们不使用复合文件格式。
然而,随着Docker的Kubernetes支持的宣布,他们将为Docker compose工具提供功能,使其也能将编写YAML文件并将该组合文件的“内容”部署到Kubernetes集群中(网络、服务+env/机密),并将这些组件放置在K8s吊舱上。
基于上述陈述,您的问题实际上是关于您是希望切换到在Kubernetes YAML中定义您的服务、环境、网络等,还是依赖Docker的支持来使用组合格式和目标( Swarm或K8s )。这更多地是Docker对Kubernetes或开放源码或其他商业Kubernetes选项的支持之间的商业决定,因此您的问题不一定有直接(和/或完全正确)的答案。
发布于 2017-10-20 13:42:48
现在,您可以使用kompose:https://github.com/kubernetes/kompose与Kubernetes一起使用现有的坞-撰写文件。库默将把你的对接者-合成服务转变为库伯奈特对象的飞行。
转换可能不是完美的,因为坞-组合的“模式”和Kubernetes对象的模式之间没有1到1的匹配,但是它应该会让您上路。
如果您的目标是在一台机器上运行,就不需要Kubernetes了。但是,如果您在停靠-撰写文件中使用了群集模式,那么您应该尝试使用kompose。
https://stackoverflow.com/questions/46846729
复制相似问题