新聞中心
在這個(gè)快速入門教程中,我們使用 Azure CLI 創(chuàng)建一個(gè) Kubernetes 集群,然后在集群上部署運(yùn)行由 Web 前端和 Redis 實(shí)例組成的多容器應(yīng)用程序。一旦部署完成,應(yīng)用程序可以通過互聯(lián)網(wǎng)訪問。

在網(wǎng)站設(shè)計(jì)制作、網(wǎng)站設(shè)計(jì)中從網(wǎng)站色彩、結(jié)構(gòu)布局、欄目設(shè)置、關(guān)鍵詞群組等細(xì)微處著手,突出企業(yè)的產(chǎn)品/服務(wù)/品牌,幫助企業(yè)鎖定精準(zhǔn)用戶,提高在線咨詢和轉(zhuǎn)化,使成都網(wǎng)站營銷成為有效果、有回報(bào)的無錫營銷推廣。創(chuàng)新互聯(lián)建站專業(yè)成都網(wǎng)站建設(shè)十多年了,客戶滿意度97.8%,歡迎成都創(chuàng)新互聯(lián)客戶聯(lián)系。
這個(gè)快速入門教程假設(shè)你已經(jīng)基本了解了 Kubernetes 的概念,有關(guān) Kubernetes 的詳細(xì)信息,請(qǐng)參閱 Kubernetes 文檔。
如果您沒有 Azure 賬號(hào),請(qǐng)?jiān)陂_始之前創(chuàng)建一個(gè)免費(fèi)帳戶。
登錄 Azure 云控制臺(tái)
Azure 云控制臺(tái)是一個(gè)免費(fèi)的 Bash shell,你可以直接在 Azure 網(wǎng)站上運(yùn)行。它已經(jīng)在你的賬戶中預(yù)先配置好了, 單擊 Azure 門戶右上角菜單上的 “Cloud Shell” 按鈕;
該按鈕會(huì)啟動(dòng)一個(gè)交互式 shell,您可以使用它來運(yùn)行本教程中的所有操作步驟。
此快速入門教程所用的 Azure CLI 的版本最低要求為 2.0.4。如果您選擇在本地安裝和使用 CLI 工具,請(qǐng)運(yùn)行 az --version 來檢查已安裝的版本。 如果您需要安裝或升級(jí)請(qǐng)參閱安裝 Azure CLI 2.0 。
創(chuàng)建一個(gè)資源組
使用 az group create 命令創(chuàng)建一個(gè)資源組,一個(gè) Azure 資源組是指 Azure 資源部署和管理的邏輯組。
以下示例在 eastus 區(qū)域中創(chuàng)建名為 myResourceGroup 的資源組。
az group create --name myResourceGroup --location eastus
輸出:
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup",
"location": "eastus",
"managedBy": null,
"name": "myResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
創(chuàng)建一個(gè) Kubernetes 集群
使用 az acs create 命令在 Azure 容器服務(wù)中創(chuàng)建 Kubernetes 集群。 以下示例使用一個(gè) Linux 主節(jié)點(diǎn)和三個(gè) Linux 代理節(jié)點(diǎn)創(chuàng)建一個(gè)名為 myK8sCluster 的集群。
az acs create --orchestrator-type=kubernetes --resource-group myResourceGroup --name=myK8sCluster --generate-ssh-keys
幾分鐘后,命令將完成并返回有關(guān)該集群的 json 格式的信息。
連接到 Kubernetes 集群
要管理 Kubernetes 群集,可以使用 Kubernetes 命令行工具 kubectl。
如果您使用 Azure CloudShell ,則已經(jīng)安裝了 kubectl 。如果要在本地安裝,可以使用 az acs kubernetes install-cli 命令。
要配置 kubectl 連接到您的 Kubernetes 群集,請(qǐng)運(yùn)行 az acs kubernetes get-credentials 命令下載憑據(jù)并配置 Kubernetes CLI 以使用它們。
az acs kubernetes get-credentials --resource-group=myResourceGroup --name=myK8sCluster
要驗(yàn)證與集群的連接,請(qǐng)使用 kubectl get 命令查看集群節(jié)點(diǎn)的列表。
kubectl get nodes
輸出:
NAME STATUS AGE VERSION
k8s-agent-14ad53a1-0 Ready 10m v1.6.6
k8s-agent-14ad53a1-1 Ready 10m v1.6.6
k8s-agent-14ad53a1-2 Ready 10m v1.6.6
k8s-master-14ad53a1-0 Ready,SchedulingDisabled 10m v1.6.6
運(yùn)行應(yīng)用程序
Kubernetes 清單文件為集群定義了一個(gè)所需的狀態(tài),包括了集群中應(yīng)該運(yùn)行什么樣的容器鏡像。 對(duì)于此示例,清單用于創(chuàng)建運(yùn)行 Azure Vote 應(yīng)用程序所需的所有對(duì)象。
創(chuàng)建一個(gè)名為 azure-vote.yaml ,將下面的內(nèi)容拷貝到 YAML 中。
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: azure-vote-back
spec:
replicas: 1
template:
metadata:
labels:
app: azure-vote-back
spec:
containers:
- name: azure-vote-back
image: redis
ports:
- containerPort: 6379
name: redis
---
apiVersion: v1
kind: Service
metadata:
name: azure-vote-back
spec:
ports:
- port: 6379
selector:
app: azure-vote-back
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: azure-vote-front
spec:
replicas: 1
template:
metadata:
labels:
app: azure-vote-front
spec:
containers:
- name: azure-vote-front
image: microsoft/azure-vote-front:redis-v1
ports:
- containerPort: 80
env:
- name: REDIS
value: "azure-vote-back"
---
apiVersion: v1
kind: Service
metadata:
name: azure-vote-front
spec:
type: LoadBalancer
ports:
- port: 80
selector:
app: azure-vote-front
使用 kubectl create 命令來運(yùn)行該應(yīng)用程序。
kubectl create -f azure-vote.yaml
輸出:
deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created
測(cè)試應(yīng)用程序
當(dāng)應(yīng)用程序的跑起來之后,需要?jiǎng)?chuàng)建一個(gè) Kubernetes 服務(wù),將應(yīng)用程序前端暴露在互聯(lián)網(wǎng)上。 此過程可能需要幾分鐘才能完成。
要監(jiān)控這個(gè)進(jìn)程,使用 kubectl get service 命令時(shí)加上 --watch 參數(shù)。
kubectl get service azure-vote-front --watch
最初,azure-vote-front 服務(wù)的 EXTERNAL-IP 顯示為 pending 。 一旦 EXTERNAL-IP 地址從 pending 變成一個(gè)具體的 IP 地址,請(qǐng)使用 “CTRL-C” 來停止 kubectl 監(jiān)視進(jìn)程。
azure-vote-front 10.0.34.242 80:30676/TCP 7s
azure-vote-front 10.0.34.242 52.179.23.131 80:30676/TCP 2m
現(xiàn)在你可以通過這個(gè)外網(wǎng) IP 地址訪問到 Azure Vote 這個(gè)應(yīng)用了。
刪除集群
當(dāng)不再需要集群時(shí),可以使用 az group delete 命令刪除資源組,容器服務(wù)和所有相關(guān)資源。
az group delete --name myResourceGroup --yes --no-wait
獲取示例代碼
在這個(gè)快速入門教程中,預(yù)先創(chuàng)建的容器鏡像已被用于部署 Kubernetes 。相關(guān)應(yīng)用程序代碼 Dockerfile 和 Kubernetes 清單文件可在 GitHub 中獲得。Github 倉庫地址是 https://github.com/Azure-Samples/azure-voting-app-redis
下一步
在這個(gè)快速入門教程中,您部署了一個(gè) Kubernetes 集群,并部署了一個(gè)多容器應(yīng)用程序。
要了解有關(guān) Azure 容器服務(wù)的更多信息,走完一個(gè)完整的從代碼到部署的全流程,請(qǐng)繼續(xù)閱讀 Kubernetes 集群教程。
網(wǎng)頁標(biāo)題:在Azure中部署Kubernetes容器集群
文章網(wǎng)址:http://www.5511xx.com/article/ccohhde.html


咨詢
建站咨詢
