Knative 实战:如何在 Knative 中配置自定义域名及路由规则
作者 |?元毅?阿里云智能事業(yè)群高級開發(fā)工程師
當(dāng)前 Knative 中默認(rèn)支持是基于域名的轉(zhuǎn)發(fā),可以通過域名模板配置后綴,但目前對于用戶來說并不能指定全域名設(shè)置。另外一個(gè)問題就是基于 Path 和 Header 轉(zhuǎn)發(fā)的能力,很多情況下我們使用相同的域名,不同服務(wù)通過訪問路徑進(jìn)行區(qū)分。
針對上述這兩個(gè)問題,我們在阿里云 Knative 中提供了這樣的能力,用戶可以通過控制臺(tái)配置自定義域名,并基于 Path 和 Header 進(jìn)行路由轉(zhuǎn)發(fā)設(shè)置。如圖所示:
自定義域名
登錄阿里云容器服務(wù)控制臺(tái),進(jìn)入【Knative】-【組件管理】,點(diǎn)擊 Serving 組件【詳情】。
進(jìn)入詳情之后,選擇域名配置,添加自定義域名:【test.serverless.kuberun.com】。點(diǎn)擊 【確定】進(jìn)行保存。
配置路由轉(zhuǎn)發(fā)
進(jìn)入【Knative】-【服務(wù)管理】控制臺(tái),選擇對應(yīng)的服務(wù)。這里我們對 Login-Service 服務(wù) 以及 Search-Service 服務(wù)分別設(shè)置不同的 Path 進(jìn)行訪問。
Login-Service 服務(wù)路由轉(zhuǎn)發(fā)配置
選擇 Login-Service 服務(wù), 選擇【路由轉(zhuǎn)發(fā)】頁簽,點(diǎn)擊【配置】, 選擇【test.serverless.kuberun.com】域名,配置路徑:/login。點(diǎn)擊【確定】進(jìn)行保存。
接下來繼續(xù)配置 Search-Service 服務(wù)路由規(guī)則。
Search-Service 服務(wù)路由轉(zhuǎn)發(fā)配置
選擇 ?Search-Service 服務(wù), 選擇【路由轉(zhuǎn)發(fā)】頁簽,點(diǎn)擊【配置】, 選擇【test.serverless.kuberun.com】域名,配置路徑:/search。點(diǎn)擊【確定】進(jìn)行保存。
服務(wù)訪問
以上路由轉(zhuǎn)發(fā)配置完成之后,我們開始測試一下服務(wù)訪問:
在瀏覽器中輸入:http://test.serverless.kuberun.com/login,可以看到輸出:Hello Login Service!
在瀏覽器中輸入:http://test.serverless.kuberun.com/search,可以看到輸出:Hello Search Service!
基于 Path Header 進(jìn)行路由轉(zhuǎn)發(fā)
選擇 ?Login-Service 服務(wù), 選擇【路由轉(zhuǎn)發(fā)】頁簽,點(diǎn)擊 配置,這里我們加上 Header 配置:foo=bar。點(diǎn)擊【確定】進(jìn)行保存。
訪問 http://test.serverless.kuberun.com/login,發(fā)現(xiàn)服務(wù) 404 不可訪問。
說明基于 Header 是生效的,下面我們在訪問請求中通過 ModHeader 插件配置上Header:foo=bar.
配置完成之后,我們再一次訪問服務(wù):http://test.serverless.kuberun.com/login。
服務(wù)訪問 OK。這樣我們就完成了基于 Path Header 路由轉(zhuǎn)發(fā)配置。
小結(jié)
通過阿里云 Knative 控制臺(tái)讓你更輕松、快捷的實(shí)現(xiàn)自定義域名及路由規(guī)則,以打造生產(chǎn)可用的服務(wù)訪問。歡迎對 Knative 感興趣的一起交流。
歡迎加入 Knative 交流群
“ 阿里巴巴云原生微信公眾號(ID:Alicloudnative)關(guān)注微服務(wù)、Serverless、容器、Service Mesh等技術(shù)領(lǐng)域、聚焦云原生流行技術(shù)趨勢、云原生大規(guī)模的落地實(shí)踐,做最懂云原生開發(fā)者的技術(shù)公眾號。”
總結(jié)
以上是生活随笔為你收集整理的Knative 实战:如何在 Knative 中配置自定义域名及路由规则的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Canonical 开源 MicroK8
- 下一篇: 阿里巴巴 Kubernetes 应用管理