使用阿里云云原生平臺對系統(tǒng)進(jìn)行重構(gòu)和升級(6)——使用阿里云的EDAS部署微服務(wù)應(yīng)用(下)

????????上一篇文章介紹了如何使用阿里云的EDAS來創(chuàng)建ECS集群,并添加微服務(wù)到EDAS中,接著要介紹了如何創(chuàng)建和導(dǎo)入配置文件,這一篇文章將繼續(xù)講述EDAS的其他功能,開發(fā)同學(xué)們怎么使用EDAS調(diào)試,如何使用開發(fā)工具IntelliJ的插件直接將微服務(wù)上傳到EDAS中,如何使用EDAS查看服務(wù)中出現(xiàn)的問題等。

? ? ? ? 上一篇其實(shí)是給運(yùn)維工程師看的,主要是配置和部署,這里是寫給開發(fā)人員的,按照之前,我們一般都是本地自己搭建nacos,或者搭一個(gè)nacos的服務(wù)器,開發(fā)組一起使用,但是會碰到一些問題,比如兩個(gè)開發(fā)人員同時(shí)再調(diào)試,因?yàn)榇a是一樣的,nacos是一致的,會導(dǎo)致多個(gè)微服務(wù)調(diào)試的時(shí)候,鏈路去了其他開發(fā)人員的電腦這邊,還沒有回到自己微服務(wù)中,舉個(gè)例子,比如開發(fā)1開始調(diào)試 A服務(wù)和B服務(wù),開發(fā)2在調(diào)試B服務(wù)和C服務(wù),很有可能就發(fā)生開發(fā)1的B服務(wù)沒有執(zhí)行,而是執(zhí)行了開發(fā)2電腦上的B服務(wù),這種情況,一般可以在nacos里面添加命名空間來解決。當(dāng)然最好的辦法就是使用EDAS,同一個(gè)平臺,不同的命名空間,既能幫你監(jiān)控服務(wù)跟蹤鏈路,又能實(shí)時(shí)的找到問題所在,何樂而不為呢。

? ? ? ? 下面我們就用IntelliJ開發(fā)工具向大家介紹如何在EDAS中進(jìn)行服務(wù)上傳和調(diào)試。

? ? ? ? 一、Alibaba Cloud Toolkit —— 項(xiàng)目一鍵部署工具

????????Alibaba Cloud Toolkit(Eclipse插件,后文簡稱Cloud Toolkit)是阿里云針對IDE平臺為開發(fā)者提供的一款插件,用于幫助開發(fā)者高效開發(fā)并部署適合在云端運(yùn)行的應(yīng)用。您在本地完成應(yīng)用程序的開發(fā)、調(diào)試和測試后,可以使用在IDE(如Eclipse或IntelliJ)中安裝的Cloud Toolkit插件,通過圖形配置的方式連接到云端部署環(huán)境并將應(yīng)用程序快速部署到云端。

? ??????在傳統(tǒng)部署方式中,需要多個(gè)步驟才能完成應(yīng)用的部署,并且需要在本地IDE、云產(chǎn)品控制臺、Git/SVN、Maven/Gradle、鏡像倉庫、ECS、容器等多個(gè)界面間來回切換操作。

傳統(tǒng)部署模式

? ? Alibaba?Cloud Toolkit部署方式是將項(xiàng)目構(gòu)建、SCP上傳部署包、制作Docker Image、登錄機(jī)器、推送至鏡像倉庫等多個(gè)步驟進(jìn)行了集成和簡化。

Cloud Toolkit部署方式

? ? ? ? 1、安裝Cloud Toolkit

????????我們可以在JetBrains插件市場搜索Alibaba Cloud Toolkit并下載安裝。有的時(shí)候插件市場會出現(xiàn)訪問緩慢、無法下載的情況,可使用離線包安裝。

? ? ? ? Windows系統(tǒng)在插件市場中下載安裝步驟:

? ? ? ? 1)在IntelliJ IDEA頂部菜單欄中選擇File?>?Settings。

? ? ? ? 2)在Settings對話框的左側(cè)導(dǎo)航欄中單擊Plugins。

? ? ? ? 3)在Plugins區(qū)域單擊Marketplace。

? ? ? ? 4)在搜索欄中輸入Alibaba Cloud Toolkit。

? ? ? ? 5)Search Results區(qū)域會出現(xiàn)Alibaba Cloud Toolkit,單擊Install。

????Mac電腦是?IntelliJ IDEA菜單里面的Preferences里面 找到 Plugins,然后搜索Alibaba Cloud Toolkit即可。

Mac電腦安裝Alibaba Cloud Toolkit

? ? ? ? 2、配置賬戶信息

????????使用Cloud Toolkit部署應(yīng)用到云端時(shí),需要調(diào)用阿里云的API,調(diào)用API時(shí)需要使用訪問密鑰(AccessKey,包括AccessKey ID和 AccessKey Secret)進(jìn)行云端身份驗(yàn)證。因此在部署應(yīng)用之前,需要先在Cloud Toolkit中配置賬戶信息。步驟如下。

? ? ? ? 1)獲取AccessKey

? ? ? ? 這里就不介紹了,大家可以去阿里云官方看教程?

獲取AccessKey

? ? ? ? 2)在IntelliJ IDEA菜單欄中選擇File?>?Settings,在Settings對話框左側(cè)的導(dǎo)航欄中選擇Alibaba Cloud Toolkit?>?Accounts。

? ? ? ? 3)在Accounts界面中填入獲取的AccessKey ID和AccessKey Secret,并單擊OK。

Mac電腦就是在?IntelliJ IDEA菜單里面的Preferences 找到 Alibaba Cloud Toolkit選項(xiàng),然后找到 Account,將信息填入進(jìn)去即可。

填入ID和Secret

? ? ? ? 3、部署到EDAS上

? ? ? ? 選中要部署的微服務(wù),然后Tools?>?Alibaba Cloud?>?Deploy to EDAS...?>?EDAS for ECS Application。

Deploy to EDAS

? ? ? ? 打開部署到ECS集群的對話框窗口,如下圖所示,如果之前是K8S集群,就選擇部署到K8S集群對話框,因?yàn)樯掀恼挛覀兘榻B了創(chuàng)建的是ECS集群,所以這里選擇部署到ECS Cluster,

? ? ? ? 這里注意幾點(diǎn):第一,命名空間需要在EDAS中先添加好,第二,應(yīng)用程序,圖中顯示的gateway是我上一篇文章中已經(jīng)部署好的應(yīng)用名稱,只有這樣我們才能上傳部署應(yīng)用,否則第一次部署先要去EDAS控制臺完成,第二次的部署就可以通過該工具上傳上去。

部署應(yīng)用

? ? ? ? 部署方式可以選擇Maven Build,也可以選擇Upload File,我們這里選擇上傳文件方式,設(shè)置完成后,選擇Run即可。

執(zhí)行部署過程

? ? ? ? 從上圖可以看出,點(diǎn)擊Run按鈕后,實(shí)際上是在執(zhí)行 mvn的clean,package命令。

部署成功

? ? ? ? 耐心等待一會時(shí)間,就會在EDAS for ECS Application對話框中顯示部署成功的提示,然后我們再打開EDAS控制臺,去看看gateway這個(gè)服務(wù)。

服務(wù)基本信息

? ? ? ? 大家可以看到這里的最后變更時(shí)間同步成了我們在Alibaba Cloud Toolkit中部署的時(shí)間了。

控制臺首頁變更列表

????????同樣可以在控制臺首頁變更列表中查詢到執(zhí)行的時(shí)間,描述就是通過 Alibaba Cloud Toolkit完成的部署。這樣的話我們的微服務(wù)就再一次部署成功了,其他微服務(wù)也是同樣的步驟,部署后就可以調(diào)試了,是不是很方便。

????????二、EDAS中對某個(gè)微服務(wù)應(yīng)用的治理

? ? ? ? 上面介紹了如果用開發(fā)工具上傳部署應(yīng)用,但是應(yīng)用有問題,如果我們在自己本地可以通過開發(fā)工具看到錯誤信息,那上傳到EDAS中,應(yīng)用出現(xiàn)問題怎么辦,怎么樣看日志,發(fā)現(xiàn)并定位問題呢?

? ? ? ? 在EDAS中對每個(gè)微服務(wù)應(yīng)用都有控制臺可以進(jìn)行操作查看,如下圖,有日志管理、應(yīng)用監(jiān)控、告警管理、事件中心等面板,通過這些面板中的功能來管理和查看應(yīng)用的運(yùn)行狀態(tài)和錯誤信息。

應(yīng)用控制面板

? ? ? ? 1、日志管理

? ? ? ? 日志管理里面最重要的就是可以在線查看日志,查看應(yīng)用啟動是否成功,執(zhí)行一些功能的時(shí)候是否出現(xiàn)異常,

日志目錄

? ? ? ? 在這里能看到日志的文件夾路徑,可以點(diǎn)擊在線查看,是不是正常,還是有異常或錯誤發(fā)生。

在線查看日志

? ? ? ? 日志里面能體現(xiàn)出信息,這個(gè)和我們在tomcat里面看的日志是一樣的,就是我們可以在線看,非常方便的可以定位到錯誤信息,如上圖。

接口調(diào)用

? ? ? ? 這里也是我感覺最全面的監(jiān)控面板,這里會顯示 接口調(diào)用的響應(yīng)時(shí)間、請求數(shù)、錯誤數(shù)、異常數(shù),還有SQL調(diào)用分析,鏈路查詢,我這里主要沒有調(diào)用記錄,所以沒有數(shù)據(jù)。如果你想要更全面的數(shù)據(jù)和監(jiān)控,可以在下面的高級監(jiān)控,就是阿里云的另外一個(gè)產(chǎn)品ARMS里面查看,也是非常功能強(qiáng)大的監(jiān)控工具。

高級監(jiān)控

? ? ? ? 好了,對于如何在開發(fā)工具中部署到EDAS上,以及如何對應(yīng)用進(jìn)行監(jiān)控上面都做了簡要的介紹。如果對本文感興趣,可以在評論中留言,謝謝!

????????下一篇文章將介紹阿里云的PTS性能測試平臺。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容