做爲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