javascript
SpringBoot应用和PostgreSQL数据库部署到Kubernetes上的一个例子
創(chuàng)建一個名為ads-app-service的服務(wù):
上述Service的yaml文件里每個字段,在Kubernetes的API文檔里有詳細說明。
https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.12/#servicespec-v1-core
如何找到這個url呢?
Reference->API Reference->v1.12:
比如Service yaml文件里Spec區(qū)域需要出現(xiàn)的字段,每個字段在幫助文檔里有詳細說明:
Spec部分的子區(qū)域ports可以定義多個port,通過符號"-"代表一個類似數(shù)組的結(jié)構(gòu):
ports數(shù)組里每個元素包含的字段:
-
name
-
nodePort
-
port
-
protocol
-
targetPort
用kubectl create -f創(chuàng)建service,因為類型設(shè)置為ClusterIP,但沒有指定具體的IP地址,因此創(chuàng)建時自動生成了一個。
再創(chuàng)建一個deployment:
這個deployment使用的image地址如下:
我們還得創(chuàng)建一個Kubernetes Ingress,yaml文件如下:
需要Ingress的原因是,通常情況下,service和pod的IP只能在Kubernetes集群內(nèi)部訪問。集群外部的請求需要通過負(fù)載均衡轉(zhuǎn)發(fā)到service在Node上暴露的NodePort上,然后再由kube-proxy將其轉(zhuǎn)發(fā)給相關(guān)的
Pod。
Ingress作為Kubernetes里的標(biāo)準(zhǔn)對象之一,負(fù)責(zé)給service提供集群外部訪問的URL、負(fù)載均衡、SSL終止、HTTP路由等。
下面配置的rule的含義是:每次請求/ads時,請求轉(zhuǎn)發(fā)到服務(wù)ads-app-service上去。
使用host里包含的url拼接上/ads,訪問這個應(yīng)用:
點擊tile進入明細頁面:
這個應(yīng)用的UI顯示用的是SAP UI5框架,后臺通過一個SpringBoot應(yīng)用響應(yīng)HTTP請求,數(shù)據(jù)存儲在PostgreSQL里。
進入deployment對應(yīng)的pod,可以查看到j(luò)ava應(yīng)用對應(yīng)的jar文件和JDK環(huán)境。
要獲取更多Jerry的原創(chuàng)文章,請關(guān)注公眾號"汪子熙":
總結(jié)
以上是生活随笔為你收集整理的SpringBoot应用和PostgreSQL数据库部署到Kubernetes上的一个例子的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 轻薄度被折叠屏手机超越后 直板机的天下要
- 下一篇: webpack里JavaScript文件