做为Rancher 2.0的重要组件,Rancher Kubernetes Engine(RKE)现已正式全面发布!这是Rancher Labs推出的新的开源项目,一个极致简单易用、闪电般快速、支持一切基础架构(公有云、私有云、VM、物理机等)的Kubernetes安装程序。node
在过去两年中,Rancher已经成为最为流行和受欢迎的建立和管理Kubernetes集群的平台之一。由于易于上手的特性和极致简单的用户体验,Rancher做为建立与管理Kubernetes的平台深受全球大量用户青睐 。Rancher将etcd、Kubernetes master和worker节点操做彻底自动化。然而Rancher 1.x中只提供了Kubernetes的部署优化,2.0会继续增强对Kubernetes使用和运行过程当中的进一步的优化与支持。nginx
现阶段市场中有很多可供用户选择的用于建立Kubernetes集群的安装程序。据咱们所见,其中两个最受欢迎的安装程序是kops和Kubespray:数据库
Kubeadm是另外一个跟随Kubernetes主版本分发的安装工具。然而,Kubeadm还不支持像HA集群这样的功能。尽管在 kops和Kubespray等项目中使用了 kubeadm 某些代码,但若做为生产级的Kubernetes安装程序,kubeadm还不适合。ubuntu
Rancher 2.0能够支持并纳管任何Kubernetes集群。咱们鼓励用户使用GKE和AKS等公有云云托管服务。对于想要自行创建本身的集群的用户,咱们正在考虑将kops或Kubespray集成到咱们的产品阵容中。Kops不符合咱们的需求,由于它并不适用于全部云提供商。其实,Kubespray已经很接近咱们的须要了,尤为是 Kubespray能够在任何地方安装Kubernetes的这一特性。但最终,咱们决定不采用Kubespray,而是构建本身的轻量级安装程序,缘由有两个:后端
RKE是一个独立的可执行文件,它能够从集群配置文件中读取并启动、关闭或升级Kubernetes群集。 以下是一个示例配置文件:api
--- auth: strategy: x509 network: plugin: flannel ssh_key_path: /home/user/.ssh/id_rsa nodes: - address: server1 user: ubuntu role: [controlplane, etcd] - address: server2 user: ubuntu role: [worker] services: etcd: image: quay.io/coreos/etcd:latest kube-api: image: rancher/k8s:v1.8.3-rancher2 service_cluster_ip_range: 10.233.0.0/18 extra_args: v: 4 kube-controller: image: rancher/k8s:v1.8.3-rancher2 cluster_cidr: 10.233.64.0/18 service_cluster_ip_range: 10.233.0.0/18 scheduler: image: rancher/k8s:v1.8.3-rancher2 kubelet: image: rancher/k8s:v1.8.3-rancher2 cluster_domain: cluster.local cluster_dns_server: 10.233.0.3 infra_container_image: gcr.io/google_containers/pause-amd64:3.0 kubeproxy: image: rancher/k8s:v1.8.3-rancher2 addons: |- --- apiVersion: v1 kind: Pod metadata: name: my-nginx namespace: default spec: containers: - name: my-nginx image: nginx ports: - containerPort: 80
如上所示,咱们经过指定认证策略、网络模型和本地SSH密钥路径来启动文件。集群配置文件的主体由如下三部分组成:服务器
RKE不是一个能够长时间运行的、能够监控和操做Kubernetes集群的服务。RKE须要与像Rancher 2.0这样的完整的容器管理系统或像AWS CloudWatch、Datadog或Sysdig等同样的独立监控系统配合使用。配合使用时,您就能够构建本身的脚原本监控RKE集群的健康情况了。网络
当用户须要构件一个分布式应用系统时,经常不得不处理后端数据库、数据访问层、集群和扩展等方面的问题。如今,愈来愈多的开发人员再也不使用传统的应用程序服务器,而是开始使用Kubernetes做为分布式应用程序平台:架构
以这种方式构建的应用程序将做为Kubernetes YAML文件发送给用户。若是用户已经运行Kubernetes集群,或能够访问公有云托管的Kubernetes服务(如GKE或AKS),就能够轻松运行这些应用程序。可是,那些但愿在虚拟化或裸机服务器上安装应用程序的用户该怎么办呢?dom
经过将RKE做为嵌入式Kubernetes安装程序捆绑到应用程序中,应用程序开发人员就能够解决上述需求。经过调用RKE,应用程序安装即可以启动,且会为用户建立一个Kubernetes集群。而咱们已注意到,将诸如RKE之类的轻量级安装程序嵌入到分布式应用程序中,知足了不少来自用户的兴趣与需求。
Rancher Kubernetes Engine(RKE)秉承了Rancher产品一向易于上手、操做简单、体验友好的特性,使用户建立Kubernetes集群的过程变得更加简单,且咱们相信经过云管理平台进行Kubernetes安装是大多数Kubernetes用户的最佳选择。
在Rancher Labs,咱们但愿Kubernetes有朝一日成为全部云服务商支持的标准化的基础架构,且一直在为了实现这个愿景而努力。已推出技术预览版、将于2018年初正式发布的Rancher 2.0,将能够同时纳管和导入任何类型、来自任何云提供商的Kubernetes集群,包括RKE、AWS EKS、Google Container Engine (GKE)、Azure Container Service (AKS)等等。
秉承Rancher一向100%开源的风格,你能够直接从GitHub上下载RKE