神话还是现实?Docker 和 Kubernetes 架构
固然 Kubernetes 只要求在物理呆板/云假造机上的少量组件(docker、kubelet、kube proxy、etcd 集群),但你如故必要可以或许自动化完成添加新呆板和对集群举办打点。以下是几个简朴的要领:
就我小我私人而言,我更喜好第 3 个选项(加上一个 Kubernetes 集成模块 ),由于它应承我同时行使处事器和 k8s 工具,并实现任何范例的自动化。然而,没有什么能阻止你行使 Teraform 及其 Kubernetes 模块 。KOPS 不能很好地行使“裸机”,可是它如故是一个很好的行使 AWS/GCE 的器材! Git 代码库和使命跟踪器 不消说,要为开拓职员和其他相干脚色提供全面的事变情形,你必要有一个团队协作和代码存储的处所。我很难确定哪种处事是最吻合的,但我小我私人最喜好的使命跟踪器材是 redmine (免费)或 Jira (付费)。对代码库而言,有较量老牌的 gerrit (免费)或 bitbucket (付费)。 值得留意的是,企业情形中协作事变的两个最同等的器材(尽量是贸易版本的)是: Atlassian 和 Jetbrains 。你可以行使它们中的任何一个作为独立的办理方案,可能将两者的各类组件团结起来。 要充实操作使命跟踪器和代码库的组合,请思量它们的集成计策。譬喻,以下是一些确保代码和相干使命关联性的提醒(虽然,你也可以选择本身的要领):
Docker 注册表 应出格留意 Docker 镜像打点体系,由于它对付存储和交付处事至关重要。另外,该体系应该支持用户和用户组的会见,可以或许删除旧的和不须要的镜像,提供图形用户界面和 RESTful 应用编程接口。 你可以行使云办理方案(譬喻, hub.docker.com )或私有托管处事,乃至可以安装在你的 Kubernetes 集群中。作为 Docker 注册表的企业办理方案, Vmware Harbor 就是一个很好的例子。最坏的环境是,假如你只想存储镜像,而不必要伟大的体系,你就直接行使 Docker Registry 好了。 CI/CD 和处事交付体系 我们之前接头过的组件(git 存储库、使命跟踪器、带有 Ansible 脚本的元项目、外部依靠项)都不能像悬浮在真空中一样互相分隔运行。将它们毗连起来的是一连集成和交付处事。 CI — 一连集成 (Continuous Integration) CD — 一连交付(Continuous Delivery) 处事应该足够简朴,而且没有任何与体系交付或设置相干的逻辑。CI/CD 处事应该做的就是对外部天下的变乱(git 存储库中的变革,使命跟踪器中使命的移动)做出回响,并启动元项目中描写的操纵。另外,CI/CD 处事是打点全部代码存储库的节制点和打点它们的器材(代码分支归并、来自上游/主分支的更新)。 我行使过一个来自 Jetbrains 的 器材 TeamCity ,这是一个相等强盛但很是简朴的器材。可是你也可以抉择实行其他对象,好比免费的 Jenkins 。 在我们上面描写的方案中,集成处事首要认真启动四个首要流程和一个帮助流程,如下所示:
(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |