使用 Azure DevOps 部署到 App Service WebJob

前言

在 Azure 上面執行排程程式除了 Azure Function、Logic App 等服務以外,最方便的方式還是使用 App Service 裡面的 WebJob,它可以執行很多種類型的程式,所以我們可以簡單的開發一個 Console 程式去執行我們的排程程式,而當然也要讓它可以自動化部署,在設定上會有一些細節需要注意,所以特別針對一些設定和參數來記錄一下部署的流程。

...繼續閱讀 »

使用 Azure DevOps 部署到 Azure Kubernetes Services

前言

本系列的第三篇文章,這次要部署的服務就是 Azure Kubernetes Services,現在很多服務架構上都會使用上 K8S,而在 Azure 上面也提供一個受控的 K8S 服務,就是 Azure Kubernetes Services,它可以減少我們管理 K8S 的一些成本,需要更新 K8S 版本的時候也可以一鍵點選就可以升級節點的 K8S 版本,需要增加節點的時候也可以很方便的透過手動或是設定自動調整,如此一來我們就可以專注在程式的部署上就好,不用太擔心整個 K8S 叢集的維護和管理。

...繼續閱讀 »

使用 Azure DevOps 部署到 App Service 預備環境 (Slot) 並進行切換

前言

App Service 有一個很實用的功能就是預備環境 (Slot),他可以方便我們在部署程式的時候可以先佈到預備環境,測試完成之後可以直接和正式環境進行切換 (Swap),也可以在發現有沒測試到的嚴重問題的時候可以再切換一次,就可以快速的退到前一版的環境,那要結合 Azure Devops 的話就可以達到自動化的部署和切換,而且可以加上審核的關卡,測試完成之後審核完成就自動的進行切換,本文就來針對這樣得情境進行介紹如何完成這樣的自動化流程。

...繼續閱讀 »

實做壓縮儲存體並下載功能

  • 58
  • 0

前言

工作上剛好遇到需要將儲存體打包並下載的功能,所以整理了一下程式碼並寫成簡單範例。包含了列出儲存體容器內的檔案和打包下載的功能,壓縮的部分則是使用 SharpZipLib 套件來完成。

...繼續閱讀 »

使用 Azure Load Testing 和 Apache JMeter 腳本來進行負載測試

  • 178
  • 0

前言

在微軟公告停止 Azure DevOps 上的負載測試服務之後,在 Azure 上要進行負載測試就得透過第三方服務或是自行架設 VM 來進行測試,終於微軟推出專用的服務 Azure Load Testing,可以讓我們透過定義好的 JMeter 腳本來進行負載測試,本文就來介紹要如何進行設定和測試,以及服務的費用說明。

...繼續閱讀 »

透過 Azure DevOps 自動部署程式到 Private Link 後的 App Service

  • 216
  • 0

微軟在 Azure 上面提供了 Private Link 這一個服務,可以將 Azure 上的 Pass 變成私有的服務,僅能透過 Private Link 才可以連線到,從外部網路是無法直接連線到,如此對於資安有較大要求的情境,就可以設計出僅在特定網路下才可以連線的架構,但是在這樣的架構下也會產生額外的需求,比如說 App Service 的部署,在這個情境下就不能像之前文章「使用 Visual Studio 部署網站到 App Service」的方式直接部署上去,因為這時候是無法從外部網路直接連線到 App Service 的,而解決的辦法最簡單的方式就是建立一台跳板機 VM,設定和 Private Link 同一個虛擬網路,再透過這一台機器進行部署,但是這樣的方式就得在每次要部署時候在連到跳板機器再去部署,還是不夠方便,因此我們可以透過 Azure DevOps 自動化部署,後面文章就來說明實做設定的流程了。

...繼續閱讀 »

Azure DevOps 自動打包和發佈 NuGet 套件到 Artifacts

  • 215
  • 0

身為使用微軟解決方案的開發者,一定都會使用到 NuGet 套件,不管是官方或是非官方的,一定多少都會使用到。然後在實務上一定會有需求會要建立私人的 NuGet 提供庫,比如說公司內部共用的類別庫,這些很多都牽扯到商業邏輯,不可能直接發佈到官方公開的 NuGet 上,這時候就可以使用 Azure DevOps 內的 Artifacts 來管理和提供套件,既然都已經使用到 Azure DevOps 了,那當然也希望可以自動打包並部署到 Artifacts,不然得在每次 commit 之後還得自己執行指令來打包和推送套件上去,這樣太花時間了,本文就針對 .NET Core 來說明如何設定自動化和使用 Artifacts 取得套件。

...繼續閱讀 »

[筆記] 解決 Azure DevOps 專案成員無法新增 Tag 問題

  • 63
  • 0

在使用 Azure DevOps 的 Boards 的時候,我們新增工作項目時候會很常使用到 Tag 功能來針對項目作標記,方便後續呈現和篩選時候使用,按照預設值應該專案成員都會有新增(定義) Tag 的功能,但是針對新進成員設定權限時候,卻發現成員無法新增 Tag,但是可以選擇已有新增的 Tag,本文記錄解決這個問題的筆記,怕之後遇到會再忘記了XD

...繼續閱讀 »

還原誤刪除的 App Service

  • 93
  • 0

實務上偶爾會發生管理資源的時候一不小心就刪除錯資源的慘劇,部分 Azure 服務是可以自助還原的,不需要再開 Ticket 請微軟 Support 協助,比如說儲存體帳戶,針對 Blob 有虛刪除功能,針對儲存體帳戶層級也有還原刪除的儲存體帳戶的功能,而針對今天要討論的主角 App Service,雖然在 Azure Portal 上面並沒有 UI 可以方便視覺化的操作,但是還是可以透過 PowerShell 指令來還原。 

...繼續閱讀 »

Power BI Embedded 實做記錄

  • 571
  • 0

Power BI 是微軟推出的視覺化互動報表服務,可以方便建構出企業做為決策參考用的互動式報表,在使用上要看到報表比較常見的兩種模式,一為直接 Host 在 Power BI 網站的報表,觀看者會取得一個特定的報表網址來察看,另一種模式為網頁內嵌的方式。根據察看對象的不同,可以選擇不一樣的模式來呈現,假設是企業內部要察看報表,可以選擇 Power BI Host 的報表,我們只需要將報表製作完成之後發佈上去即可,而觀看者會需要 Power BI Pro 授權 (發佈為 Public 的話可以不需要授權),如果要做成服務提供給企業內部或是客戶察看報表就會用到今天要介紹的 Power BI Embedded,可以將報表內嵌在網頁內,而 Host 的服務則是使用 Azure。

...繼續閱讀 »

如何取得 Azure 服務 IP 範圍

  • 204
  • 0

在實務上偶而會有需要知道 Azure 上面的服務 IP ,比如說針對地端機器設定防火牆,或是服務和服務間串接,僅開放特定服務可以存取,這時候就會需要取得服務的 IP 範圍,這些 IP 範圍是公開的,微軟有提供不少方式可以取得,本文就整理了一些方式來取得服務的 IP 範圍。

...繼續閱讀 »

Azure 表單辨識器 (Form Recognizer) 輕鬆玩 (一)

表單辨識器 (form recognizer) 為微軟 Azure AI 中認知服務的其中一個項目,故名思義它就是可以針對表格作辨識的一個服務,透過這個服務我們可以很方便的辨識各種表單,例如說發票、收據、身份證…等。接下來會針對這一個服務出一系列的文章,第一篇就先使用官方提供的線上工具先來體驗服務的威力吧!

...繼續閱讀 »

線上更新微軟認證心得

  • 391
  • 0

微軟有推出很多的認證考試,大部分都會有期限,期限一到就需要重新考試來重新取的認證的資格,我身上有一個認證有 2 年的期限,但是因為疫情和微軟更改規則,延了兩次半年,而微軟改變的規則就是可以透過線上的免費認證考試,可以延長一年的認證資格,而我的認證剛好符合資格,也收到微軟的信件說可以進行延期的認證考試了,因此就把這次難得的經驗整理一下,希望對有需要重新認證的人有所幫助。

...繼續閱讀 »

Azure Web PubSub 實做及時聊天服務

  • 175
  • 0

Azure Web PubSub 是微軟推出的一個新服務,目前還在預覽中,它是即時推撥訊息的服務,透過伺服器和用戶端建立 WebSoket 連線,做到及時的訊息傳遞的服務,它底層還是微軟之前推出的 SignalR ,他簡化了 SignalR 的使用,僅保留 WebSoket 的連線方式,然後支援 CloudEvents 格式,在使用上也不需要限定使用 SignalR 的 JS SDK,可以使用任何 WebSoket 的套件來使用,本文針對官方聊天室範例實做過程做個記錄,並且把一些會卡住的點說明一下。

...繼續閱讀 »