cdn.com/ef27762085577f5a3916e783cdc59fbed9379219.png">
10年積累的成都網(wǎng)站建設(shè)、網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有烏翠免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
作者 | 元毅 阿里云智能事業(yè)群高級開發(fā)工程師
在 Istio 中提供了一個 Bookinfo 的示例,用于演示微服務(wù)之間的調(diào)用,那么如何在 Knative 中部署這個示例呢?本文將會給大家介紹一下在 Knative 中部署 Bookinfo 微服務(wù)以及查看調(diào)用鏈追蹤信息。
Bookinfo 這個示例應(yīng)用由 4 個微服務(wù)組成。 Bookinfo 應(yīng)用架構(gòu)圖如下:

另外 reviews 微服務(wù)目前有 3 個版本:
首先開啟 Istio Sidecar 注入,我們在 default 命名空間打上 istio-injection=enabled 的 Label:
kubectl label namespace default istio-injection=enabled部署 Bookinfo Knative Service 服務(wù), 簡單直接通過 yaml 文件一鍵拉起來,bookinfo.yaml:
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: details-v1
namespace: default
spec:
template:
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-details-v1:1.15.0
ports:
- containerPort: 9080
---
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: ratings-v1
namespace: default
spec:
template:
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-ratings-v1:1.15.0
ports:
- containerPort: 9080
---
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: reviews-v1
namespace: default
spec:
template:
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-reviews-v1:v1-aliyun
ports:
- containerPort: 9080
---
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: reviews-v2
namespace: default
spec:
template:
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-reviews-v2:v1-aliyun
ports:
- containerPort: 9080
env:
- name: SERVICES_DOMAIN
value: default.svc.cluster.local
- name: RATINGS_HOSTNAME
value: ratings-v1
---
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: reviews-v3
namespace: default
spec:
template:
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-reviews-v3:v1-aliyun
ports:
- containerPort: 9080
env:
- name: SERVICES_DOMAIN
value: default.svc.cluster.local
- name: RATINGS_HOSTNAME
value: ratings-v1
---
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: productpage-v1
namespace: default
spec:
template:
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/productpage:v1-aliyun
ports:
- containerPort: 9080
env:
- name: SERVICES_DOMAIN
value: default.svc.cluster.local
- name: DETAILS_HOSTNAME
value: details-v1
- name: RATINGS_HOSTNAME
value: ratings-v1
- name: REVIEWS_HOSTNAME
value: reviews-v2這里需要說明幾點(diǎn):
productpage 環(huán)境變量設(shè)置:
reviews v2, v3 環(huán)境變量設(shè)置。由于 v2 和 v3 需要訪問 rate 進(jìn)行評分, 因此需要設(shè)置對應(yīng)的環(huán)境變量:
執(zhí)行命令:
# kubectl apply -f bookinfo.yaml查看執(zhí)行結(jié)果:
# kubectl get kservice
productpage-v1 http://productpage-v1.default.knative.kuberun.com productpage-v1-s4drn productpage-v1-s4drn True
ratings-v1 http://ratings-v1.default.knative.kuberun.com ratings-v1-bsvb2 ratings-v1-bsvb2 True
details-v1 http://details-v1.default.knative.kuberun.com details-v1-dj47j details-v1-dj47j True
reviews-v1 http://reviews-v1.default.knative.kuberun.com reviews-v1-q5wz4 reviews-v1-q5wz4 True
reviews-v2 http://reviews-v2.default.knative.kuberun.com reviews-v2-5r7mm reviews-v2-5r7mm True
reviews-v3 http://reviews-v3.default.knative.kuberun.com reviews-v3-s2v6j reviews-v3-s2v6j True通過頁面進(jìn)行訪問,說明服務(wù)訪問正常:

一般情況下,用戶比×××調(diào)用鏈信息,通過 Tracing Analysis 服務(wù),我們可以方便的查看服務(wù)調(diào)用鏈。
首先我們進(jìn)行一次服務(wù)訪問,在 productpage 頁面,點(diǎn)擊?Normal user。

可以看到 Book Details ?和 Book Reviews 信息。productpage 服務(wù)依次會調(diào)用:details、reviews 和 ratings 服務(wù)。

接下來登錄 Tracing Analysis 服務(wù)控制臺,選擇【應(yīng)用列表】,點(diǎn)擊 productpage.default。

選擇 調(diào)用鏈分析 頁簽,可以查看服務(wù)調(diào)用鏈信息。

通過上面的介紹,我們可以在 Knative 中輕松實(shí)現(xiàn)微服務(wù)部署,并且結(jié)合 Tracing Analysis 服務(wù)可以滿足部署生產(chǎn)級別服務(wù)訴求。

作者簡介:元毅,阿里云容器平臺高級開發(fā)工程師,負(fù)責(zé)阿里云容器平臺 Knative 相關(guān)工作。
了解 ACK 容器服務(wù),請查看:https?:?//www.aliyun.com/product/kubernetes
“ 阿里巴巴云×××icloudnative×××erverless、容器、Service Mesh等技術(shù)領(lǐng)域、聚焦云原生流行技術(shù)趨勢、云原生大規(guī)模的落地實(shí)踐,做最懂云原生開發(fā)×××
當(dāng)前名稱:Knative實(shí)戰(zhàn):一個微服務(wù)應(yīng)用的部署
鏈接分享:http://chinadenli.net/article12/jpcpdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、響應(yīng)式網(wǎng)站、定制網(wǎng)站、面包屑導(dǎo)航、App設(shè)計、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)