91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Kubernetes部署您的第一個應用程序

發布時間:2020-08-11 13:19:09 來源:網絡 閱讀:303 作者:唐光輝 欄目:云計算

上一篇我們講到使用Docker來創建容器并發布了一個公告板應用程序,這一篇將使用Kubernetes編排工具來管理容器。Kubernetes在可擴展、網絡互聯、安全和維護容器化應用程序提供了很多工具接口,而這些已遠超出了docker容器本身的能力。

為了驗證我們應用程序在Kubernetes上是否運行正常,我們將在開發機器上使用Docker Desktop內置的Kubernetes環境來部署我們的應用程序,然后將其交付到生產中的完整Kubernetes集群上運行。Docker Desktop中的Kubernetes功能特性與生產Kubernetes集群是一致的,所以,即便是在開發環境上,您的應用程序也享有了生產Kubernetes集群所有功能。

使用YAML來創建應用

1、創建一個名為bb.yaml的文件,如圖1.1所示。

apiVersion: apps/v1

kind: Deployment

metadata:

name: bb-demo

namespace: default

spec:

replicas: 1

selector:

matchLabels:

bb: web

template:

metadata:

labels:

bb: web

spec:

containers:

- name: bb-site

image: bulletinboard:1.0

---

apiVersion: v1

kind: Service

metadata:

name: bb-entrypoint

namespace: default

spec:

type: NodePort

selector:

bb: web

ports:

- port: 8080

targetPort: 8080

nodePort: 30001

Kubernetes部署您的第一個應用程序

圖1.1

上述Kubernetes的YAML文件具有2個對象結構,使用“---”作為分隔符,若YAML文件中僅有一個對象,則分隔符可以省略。

Deployment對象描述創建一個pod組,該pod組中的容器副本數為1個,然后基于鏡像bulletinboard:1.0來創建。

Service對象描述了創建一個NodePort類型的服務,該服務用于將流量從宿主機上的30001端口路由到pods內容器的8080端口,允許您從宿主機的IP:30001訪問公告板應用程序。

Kubernetes YAML一開始看起來很長很復雜,但它幾乎總是遵循相同的模式

(1)、apiVersion用于指定Kubernetes API的版本

(2)、kind用于指定資源類型,可以是Deployment、Service、Namespace、ConfigMap、ServiceAccount等。

(3)、metadata,指定Pod的元數據信息,包括name、namespace、labels等。

(4)、spec,指定容器container、存儲storage、卷volume以及其他kubernetes對象所需的配置。

發布并測試您的應用

1、在bb.yaml所在目錄,執行如下命令。

#?kubectl?apply?-f?bb.yaml

當您看到如下輸出,則表示應用發布成功。

deployment.apps/bb-demo created

service/bb-entrypoint created

2、執行如下命令,確保部署正常。

#?kubectl?get?deployments

如果輸出信息如下,則表示運行正常。

NAME READY UP-TO-DATE AVAILABLE AGE

bb-demo 1/1 1 1 80m

3、執行如下命令查看service服務信息

# kubectl get services

輸出信息如下

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE

bb-entrypoint NodePort 10.99.53.144 <none> 8080:30001/TCP 20s

kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 24h

可以看到我們發布的service服務bb-entrypoint,對外提供訪問端口是30001,NodePort默認端口范圍是:30000-32767,可以通過kube-apiserver命令(該命令在apiserver容器中)輸出得知

--service-node-port-range portRange

A port range to reserve for services with NodePort visibility. Example: '30000-32767'. Inclusive at both ends of the range. (default 30000-32767)

4、通過http://localhost:30001來訪問您的應用,您將看到如下界面,如圖1.2所示,則表示應用部署成功,接下來就是進行測試、構建、發布、分享等過程。

Kubernetes部署您的第一個應用程序

圖1.2

5、刪除應用,可以使有如下命令

#?kubectl?delete?-f??bb.yaml

或者

#?kubectl?delete?deploy?bb-demo
#?kubectl?delete?service?bb-entrypoint

如下圖1.3所示。

Kubernetes部署您的第一個應用程序

圖1.3

到此,我們已經成功地使用Docker Desktop將我們的應用程序部署到開發機器的Kubernetes環境中。我們還沒有對Kubernetes做太多的工作,但現在大門已經打開,您可以開始在您的應用程序中添加其他組件,并使用Kubernetes的所有功能。除此之外,我們還應加強對YAML文件學習理解。

注意:YAML文件是可以根據現有正在運行的deploy、pod、service來生成模板的,然后在此模版基礎上進行修改。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桐梓县| 黄大仙区| 安图县| 镇雄县| 大石桥市| 静宁县| 连南| 黄平县| 迁安市| 巧家县| 东平县| 泾川县| 磴口县| 唐海县| 莎车县| 盘锦市| 阜宁县| 会宁县| 宜春市| 出国| 旬邑县| 安庆市| 龙川县| 崇义县| 离岛区| 西城区| 马边| 三门峡市| 宜宾市| 全州县| 宁陵县| 依兰县| 镇康县| 丹东市| 府谷县| 昌江| 西畴县| 修水县| 蓝田县| 筠连县| 长武县|