在你的電腦上執行Kubernetes
近期對 550 名 Cloud Native Computing Foundation (雲原生計算基金會) 成員的調查證實:Kubernetes 是編配平臺的首選。此外,調查再次證實,Amazon Web Services 仍然是在雲中部署 Kubernetes 叢集的首選。kubernetes-aws.io 列出了您可以在 AWS 上輕鬆建立 Kubernetes 叢集的各種方法。
在開發過程中,您不妨在本地機器上執行 Kubernetes,以便在本地啟動和除錯應用程式。您對本地版本感到滿意後,便可在 AWS 上執行的叢集上部署完全相同的應用程式。
本文提供了兩種在 Mac OS X 機器本地執行 Kubernetes 的方法:常用的
我們開始吧!
安裝 kubectl
Kubectl 是對 Kubernetes 叢集執行命令的 CLI 命令列介面 (CLI)。首先安裝:
在 Mac OS X 上安裝 kubectl:
brew install kubernetes-cli
如果已經安裝 kubectl,您可能需要對其進行升級:
brew upgrade kubernetes-cli
列印版本資訊:
$ kubectl version --client --short=true Client Version: v1.8.5
預設情況下,kubectl version 命令會列印客戶端和伺服器版本。 --client
確保只打印客戶端版本,因為此時沒有正在執行的叢集。 --short
選項允許您僅列印版本號。
現在已經安裝了 kubectl,我們來看一下這兩種可以在本地機器上執行 Kubernetes 叢集的方法。
使用 Minikube 設定 Kubernetes 叢集
在膝上型電腦上,Minikube 在虛擬機器 (VM) 內部執行單節點 Kubernetes 叢集,為有興趣使用 Kubernetes 的使用者提供本地開發和測試環境。
Minikube VM 使用 VirtualBox 進行預置。如果您的機器上尚未安裝 VirtualBox,則需要先執行以下操作:
brew cask install virtualbox
現在安裝 Minikube:
brew cask install minikube
如果已經安裝了 Minikube,可以使用以下命令進行升級:
brew cask reinstall minikube
檢視 Minikube 的版本:
~ $ minikube version minikube version: v0.24.1
啟動 Minikube:
~ $ minikube start Starting local Kubernetes v1.8.0 cluster... Starting VM... Downloading Minikube ISO 140.01 MB / 140.01 MB [============================================] 100.00% 0s Getting VM IP address... Moving files into cluster... Downloading localkube binary 148.25 MB / 148.25 MB [============================================] 100.00% 0s 0 B / 65 B [----------------------------------------------------------] 0.00% 65 B / 65 B [======================================================] 100.00% 0sSetting up certs... Connecting to cluster... Setting up kubeconfig... Starting cluster components... Kubectl is now configured to use the cluster. Loading cached images from config file.
該命令會下載 ISO 檔案,建立 VM 並預置 Kubernetes 元件,以啟動單節點叢集。預設情況下,叢集配置和憑證儲存在 ~/.kube/config
檔案中。可以使用以下命令檢視不同叢集的環境:
~ $ kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE * minikube minikube minikube
如您所見,到目前為止我們只建立了一個 Kubernetes 叢集。如果已經建立了多個叢集,會在該命令下全部列出。
第一列中的 *
也表示這是當前環境;所有的 kubectl 命令將指向該叢集。例如,您可以檢視叢集中的節點:
~ $ kubectl get nodes NAME STATUS ROLES AGE VERSION minikube Ready <none> 1m v1.8.0
kubectl version
命令現在可以用於列印客戶端和伺服器版本:
~ $ kubectl version --short=true Client Version: v1.8.5 Server Version: v1.8.0
所有常用的 kubectl 命令現在都可以在該叢集中應用。
使用 Docker for Mac 設定 Kubernetes 叢集
Docker for Mac/Docker for Windows 可幫助有興趣使用 Docker 的開發人員邁出第一步。可以下載 Docker for Mac 的 Stable (穩定) 或 Edge (優勢) 版。Stable (穩定) 版已經過全面檢驗和測試,並附帶最新的 Docker GA 版本。正如其名,Edge (優勢) 版提供最新的、最先進的功能。此類功能中的一項已作為 Docker CE Edge (優勢) 版 17.12.0-Ce-rc2-mac41 內部測試 的一部分引入,
它支援開發和測試所用的單節點 Kubernetes 叢集。
也就是說,無需 Minikube 等其他工具,您即可使用相同的 Docker for Mac 來建立 Docker 映像、啟用 Kubernetes 叢集並部署 pod。截至本文發表時, 僅 Q1 中的 Docker for Mac 和 Docker for Windows 支援此功能。(Docker 企業版也支援 Kubernetes。)
我們來了解一下如何使用 Docker for Mac 設定本地 Kubernetes 叢集。
要從 Docker for Mac 訪問 Kubernetes,您需要註冊 Docker Beta 專案。在您的 Docker ID 被批准用於 Kubernetes 訪問之後,您會收到一個連結,供您下載並安裝 Docker for Mac Edge (優勢) 版。確保 “關於 Docker”
顯示為 12.12.0-ce-rc2-mac31
或更高版本。現在,在 “首選項”
對話方塊中會出現一個新的選項卡,用於配置 Kubernetes 叢集。
選擇 “Enable Kubernetes”(啟用 Kubernetes)
,然後點選 “Apply & Restart”(應用並重啟),
啟動一個單節點 Kubernetes 叢集。
稍後,除了 Docker 之外,狀態列也會更新,說明 Kubernetes 正在執行。
還將在 ~/.kube/config
的預設檔案中為叢集建立一個配置。kubectl CLI 會顯示配置,如下所示:
~ $ kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE * minikube minikube minikube docker-for-desktop docker-for-desktop-cluster docker-for-desktop
更改 kubectl 使用的環境,驗證當前環境,並獲取節點列表:
~ $ kubectl config use-context docker-for-desktop Switched to context "docker-for-desktop". ~ $ kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE * docker-for-desktop docker-for-desktop-cluster docker-for-desktop minikube minikube minikube ~ $ kubectl get nodes NAME STATUS ROLES AGE VERSION docker-for-desktop Ready master 23h v1.8.2
現在, docker version
命令將 Kubernetes 顯示為編配器:
~ $ docker version Client: Version: 17.12.0-rc1-kube_beta API version: 1.35 Go version: go1.9.2 Git commit: a36c9215a7f8d5da5231d2cca353375bcb27efe3 Built: Thu Dec 7 17:33:49 2017 OS/Arch: darwin/amd64 Orchestrator: kubernetes Server: Engine: Version: 17.12.0-ce-rc2 API version: 1.35 (minimum version 1.12) Go version: go1.9.2 Git commit: f9cde63 Built: Tue Dec 12 06:45:30 2017 OS/Arch: linux/amd64 Experimental: true
注意: Kubernetes
顯示為編配器,與預設的 swarm
相反。
您現在只需一個工具即可擁有最新的 Kubernetes 計劃程式和最新的 Docker 執行時!
我們使用 kubectl version
命令檢視客戶端和伺服器版本:
~ $ kubectl version --short=true Client Version: v1.8.2 Server Version: v1.8.0
再重複一次,所有常用的 kubectl 命令都可以在此叢集上執行。
除了使用所有熟悉的 kubectl 命令外,您還可以將 Docker Compose 堆疊部署為最佳 Kubernetes 應用程式。我們稍後會對此進行更詳細的介紹,不過現在您可以觀看以下視訊:
在本地 Kubernetes 叢集上完成應用程式初始開發和測試後,我們的 Kubernetes 研討會將指導您在 AWS 上建立 Kubernetes 叢集並在該叢集上部署應用程式。
—Arun
檢視評論相關推薦
在你的電腦上執行Kubernetes
近期對 550 名 Cloud Native Computing Foundation (雲原生計算基金會) 成員的調查證實:Kubernetes 是編配平臺的首選。此外,調查再次證實,Amazon Web Services 仍然是在雲中部署 Kubernetes 叢集的首選。kuberne
讓MFC程式打包後可以在沒有裝VC++的電腦上執行的方法
在MFC程式打包前,需對MFC專案屬性進行如下設定: 1. 配置屬性->常規->專案預設值->MFC的使用->在靜態庫中使用MFC 2. 配置屬性->C/C++->程式碼生成->執行庫->多執行緒(/MT) 這樣則為MinDependenc
java工具(二):MessageFormat在沒有jdk環境的電腦上執行java專案,製作exe檔案
把jar檔案打包成可執行的.exe檔案,在沒有jdk的環境的電腦執行 1.準備2個檔案,1個是你要打包的jar檔案,另1個是jdk檔案下面的jre 如果嫌jre檔案太大,你們可以去網上找下精簡版的jre 2.安裝exe4j打包工具,執行打包操作
如何在一臺電腦上執行兩個或多個Tomcat
1)在系統環境變數中增加JAVA_HOME2=C:\Program Files\Java\jdk1.7.0_17 (同時,由於解決了其手動不能啟動的問題,故也順便將其解決方法中設定的路徑改為: 編輯startup.bat檔案,新增set JAVA_HOME2=C:\Program Files\Java\j
在一臺電腦上執行兩個或多個tomcat
修改其中一個tomcat中的某些引數,為了避免啟動tomcat時出現衝突,編輯bin/startup.bat, 在檔案第一行新增如下兩行 SET JAVA_HOME=C:\websoft\jdk1.6.0_33 (JDK所在路徑) SET CATALINA_HOME=C:\test\tomcat222222
在沒有安裝Opencv的電腦上執行基於Opencv庫的程式
以HMMDemo為例1、將OpenCv安裝目錄下的cv、cvaux、otherlibs/highgui三個目錄複製到你的工程目錄下,再在工程目錄下新建一個camera目錄,將安裝目錄下的apps/Common目錄中的兩個檔案複製至camera目錄中。2、在整合開發環境的專案管理視窗中(FileView)新建六
windows環境下VS2008編譯程式在有些電腦上執行不了的問題
最近遇到一種情況,在windows下,用vs2008編譯程式,在本機(XP系統)可以執行,但放在別的系統上執行不了。這種情況是由於執行庫在別的系統上沒有,也許可以安裝執行庫能解決這個問題,但是,這樣似
unity打包exe檔案在別的電腦上執行報錯問題
最近通過unity匯出到PC平臺,遇到了一個問題,匯出的軟體在自己電腦上執行正常,到別人電腦上就會報錯如下圖:剛開始以為是自己匯出方式錯誤,百度了一下,因為我用的是unity最新版本,不太穩定。下面是解決方法,到網上下載或在自己電腦的unity安裝目錄中找到unityPlay
如何在AWS上執行Kubernetes
眾所周知,亞馬遜有EC2容器服務,它是亞馬遜用於執行Docker容器的解決方案。不過我覺得EC2容器服務不怎麼好用,所以現在我要在AWS上測試Rancher和Kubernetes。 Kubernetes是一個用以自動化部署、彈性伸縮以及管理容器化應用程式的
qt5+vs2017程式打包釋出,在其他電腦上執行
最近剛剛接觸qt5編寫介面程式,新手上路可謂是困難重重啊,你永遠不知道下一個困難會在什麼時候出現,這裡分享一個qt5+vs2017的打包釋出方法,希望能對新手有所幫助,廢話不多說,請繼續看下去。 一、dll(動態庫連結) 釋出qt程式,就要找到dll檔案,使
使OpenCV程式脫離本地OpenCV環境到其它電腦上執行
前言 一般在編寫影象處理軟體的時候會用到OpenCV,而且在OpenCV程式程式碼除錯完成之後就需要拿到別的電腦上去演示。由於演示用的電腦沒有與編寫程式碼機器一樣的OpenCV環境就會造成出現這樣的錯
Kubernetes(k8s)中文文件 在Kubernetes上執行你的第一個容器_Kubernetes中文社群
譯者:鍾健鑫 好了,如果你已經開始了任何一個入門指南,並且啟動了一個Kubernetes叢集。那麼接下來呢? 這個指南會幫助你正對Kubernetes,在其叢集上執行第一個容器。 執行一個容器 (簡單版) 從這時開始,我假設你已經根據其它入門指南安裝了kubectl。 下面這行kubectl命令會
你的.net 2.0 真的能與1.1 安全正確地執行在同一臺電腦上嗎? 小心Server Application Unavailable 錯誤
答案 當然是 肯定的。但不作任何處理的預設情況下,會出問題! 各位在同一電腦上同時安裝並執行.net 1.1 和 .net 2.0 兩個版本的朋友要小心啊! 您的專案是不是時不時會出現 Server Application Unavailable 錯誤呢?或者一直連續都出這個錯誤! 今天我朋友將其
教你用Fiddler在電腦上抓手機上的包
手機抓包 fiddler抓手機包 fiddler抓包 代理抓包 電腦上抓包很方便,並且很多種抓包工具。但是我們如果想要抓手機上的包並且分析它, 好像就比較麻煩了。但是我們用Fiddler可以解決這個問題。 首先我們在電腦上打開Fiddler並且設置,進入Tools---Fiddler Opti
你的Android手機能投屏到電腦上嗎?方法我都給你列出來了
and bsp linu 中文 電腦 接收 放音 系統 bin 共享屏幕正在一步一步的進入到我們的生活中,從最原始的手機-電視屏幕共享到現在的手機-電腦屏幕共享,這一規模正在逐步的擴散至全球的各個角落中,隨之的手機型號的不同,從symbian-Windows phone-F
教你怎麼在windows10電腦上錄製螢幕視訊
windows10是現在比較流行的一款電腦作業系統,我們經常需要在電腦上錄製螢幕視訊,那麼windows10電腦怎麼錄製螢幕視訊呢?下面小編便來分享具體的錄製方法,具體如下。 準備工作:windows10電腦一臺、迅捷螢幕錄影工具 桌面錄屏軟體http://www.xunjieshipin.com
教你怎麼在windows10電腦上錄製螢幕視
windows10是現在比較流行的一款電腦作業系統,我們經常需要在電腦上錄製螢幕視訊,那麼windows10電腦怎麼錄製螢幕視訊呢?下面小編便來分享具體的錄製方法,具體如下。 準備工作:windows10電腦一臺、迅捷螢幕錄影工具 桌面錄屏軟體http://www.xunjiesh
教你如何在電腦上換IP
現在做什麼東西都需要變動IP:比如多註冊賬號,變動自己IP顯示地址保護自己,很多工作都需要的,這類工具也很多不過好用的上心的卻不多現在小編給您介紹一個。 工具/原料電腦 任意瀏覽器 芝麻IP 方法/步驟1,運用百度看一下本機IP。 2,用百度搜索這個工具。 3,進入工具官網,下載一個到桌面上。
在Kubernetes上執行SAP UI5應用(上)
2018年只剩最後30天了。Jerry在2017年的最後一天,曾經立下一個目標:這個微信公眾號在2018年保證至少每週釋出一篇SAP原創技術文章。 從Jerry在後臺統計的2018全年文章數量來看,這個目標已經提前實現了。為了感謝大家的支援,在2018年的最後一天,Jerry會發佈一個合集:《SAP成都研究
如何在VMware vSphere上安裝Kubernetes來執行Docker
安裝Google Kubernetes不需要VMware vSphere或任何其他虛擬機器管理程式。但是,在VM上執行此操作非常方便,因此強烈建議特別針對開發和測試環境。 無論是VM還是物理機,都必須使用Linux作業系統。和往常一樣,我選擇了CentOS 7,它是RHEL