使用 Log Analytics 建置 Dashboard,早期發現問題!早期治療!

使用 Log Analytics 建置 Dashboard,早期發現問題!早期治療!

Dashbard memory downline

當我們導入了 Azure Container Monitor 之後,取得另外一個好處,內建的 Log Analytics 提供強大的日誌分析功能。而且 Log Analytics 經過設計之後,這些數據分析的資料能輸出為儀表板(Dashboard)。我們製作了一個 Dashboard,然後放到團隊的電視上,圖中很明顯出現直線下滑的曲線,而那條線是 Memory 的可用率!連入主機查詢,又是可惡的 99% 記憶體。

排除啟動時非固定IP Address造成Portainer Agent容器錯誤

排除啟動時非固定IP Address造成Portainer Agent容器錯誤

前情提要:「我們透過 Container Monitoring 發現了一個 Portainer Agent 的錯誤。」最簡單的修正就是每次當 Portainer 發現 Portainer Agent 連不上時,去 Portainer 裡去設定 Portainer Agent 重啟後的新 IP Address。此 Portainer Agent 本身位於 Docker Swarm 的 Overlay 網路上,Overlay 網路預設會分配一個 10.x.x.x/24,第一條通常是 10.0.0.0/24,第二條 10.0.1.0/24 以此類推。

Azure Container Monitoring之容器偵錯實例

Azure Container Monitoring之容器實例

Containers Diagram

一般當 Docker Host 與 Container 的越來越多時就能發現,在管理與處理 Docker Host 與 Container 因為太分散的關係(Docker Swarm / Kubernetes 本身就分散式架構)反而費時費力,在內網可以採用 Portainer 來管理,Portainer 好用是好用,但 Portainre 本身還是比較是單一個 Docker 與 Container 服務來查詢與管理,要想整合多個 Docker 資訊時,它就比較使不上力了。在嘗試使用 Container Monitoring solution 之後,發現這真是個好服務,用個簡單實例來看看如何使 Container Monitoring 來快速進行問題定位與處理。

Docker容器與Windows保留埠

Docker容器與Windows保留埠

事件回顧:「同事反應,Docker 某個 Container 重新部署後,一直無法正常存取。而這群 Production Docker Host 我才剛剛在前一個週未進行 Docker Engine 升級與安裝作業系統 Service Pack 的維護。」

Container for 64255 port

企業級硬碟WISSD、RISSD、NLSAS、Tiering名詞速讀!

企業級硬碟WISSD、RISSD、NLSAS、Tiering名詞速讀!

在評估一份Storage Spec發現一堆WISSD、RISSD、NLSAS、Tiering名稱已經看不懂,趕快補強儲存設備相關知識一下。

Windows Server Containers in Google Kubernetes Engine 影片觀後筆記

Windows Server Containers in Google Kubernetes Engine (Cloud Next '19) 筆記

Kubernetes 是一套基於 Google Borg 的容器調度系統(Container Orchestration System),到目前為止,這些容器一直都是 Linux 容器,運行在 Linux 伺服器上。從開源的 GKE (Google Kubernetes Engine) 1.14 版本開始,支援在 Windows Server 上運行 Windows Container。Google 一直與 Microsoft 與 Kubernetes 社區保持密切合作,並且將結果上傳至開源專案中。GKE 將會在 2019 年提供 Windows 容器,這個場次會討論 Early Access Program(EAP)。這個場次會討論一些 Windows 容器使用者情境並展示產品的初期預覽功能。你也有機會聽到一個大客戶的意見,並且瞭解他們在 GKE 來調度 Windows 和 Linux 容器分析的範例。

調整Visual Studio 2019開始啟動,解決Start window凍結當掉

調整Visual Studio 2019開始啟動,解決Start window凍結當掉

vs2019 startup

Visual Studio 2019 最有感的改變之一就是一開始的「啟動畫面(startup)」不一樣。不過好景不常,這個啟動畫面在我公司舊筆電(比例非常高)與自用的 Surface Pro 6 上都會出現:

vs2019 startup no-response

以WSL+Ubuntu+zsh打造Windows上高富帥的命令列模式

以WSL + Ubuntu + zsh打造Windows上高富帥的命令列模式

Windows Subsystem for Linux (WSL) 是讓我們在 Windows 裡使用非 VM 方式可以直接與 Linux 底層溝通。網路上關於 WSL 使用與配置有許多精彩文章。最近在重設新電腦,以下順手記錄整合 WSL + Ubuntu + zsh 的配置,並且整合至 Docker CLI、VS Code、wsltty 與 cmder,讓我們體驗一個完全不同檔次指令列模式。

使用C#播放音效的4種方式

使用C#播放音效的4種方式

使用者需求,當應用程式發現問題或錯誤時,希望主機能直接播放提示或警告音效,讓人員能快速到達主機位置進行問題排除。

  • Win32 API Beep
  • SystemSounds 類別
  • SoundPlayer 類別
  • WMPLib.dll

如何以PowerShell安全的進行自動化登入-以Microsoft Azure平台為例

如何以PowerShell安全的進行自動化登入-以Microsoft Azure平台為例

twMVC#34Jamis 聊天時他提出一個 PowerShell 問題,像我們在使用 PowerShell 操作 Microsoft Azure 時都必須進行 Login 的動作,例如,每次下 Connect-AzureRmAccount 都必須先輸入帳號密碼,這有點煩。第二個問題,在 Powershell Script 要進行多訂閱切換很不方便,例如,下 Connect-AzureRmAccount 就是會跳出輸入視窗,這根本無法自動化。

安裝PowerShell - Active Directory Module解決AD大小事

安裝 PowerShell - Active Directory Module 解決 AD 大小事

在企業內,經常需要查詢 Active Directory(AD) 資訊,有幾種方式(方向)可以來執行。

  1. 使用 AD 工具
  2. 撰寫 C# 程式
  3. PowerShell - Active Directory Module

重建Docker Swarm - overlay網路

重建 Docker Swarm - overlay 網路

我們使用 docker stack deploy 大量部署 Swarm services,在不斷部署新版本之後,偶爾發現新版本 services 部署成功但運作並不正常。也就是無法連線服務的狀態。目前查詢後的結論是 overlay 網路沒有正常運作了。

WS 2016對WS 2016的PSRemoting的Access is denied錯誤

WS 2016對WS 2016的PSRemoting的Access is denied錯誤

在導入 Docker for Windows 之後,使用 PowerShell 的比重越來越高,而且在 CD(持續發布)的過程,也相當依賴 PowerShell 來進行作業。平常,可以透過 Docker CLI 來直接對 Docker Host 來下達指令(docker -H host command)。但今天如果是要直接對 Windows Server 下達 PowerShell 指令,也就是,我在 A 電腦直接透過指令視窗對 B 電腦下 PowerShell 指令,而非使用遠端桌面,那麼可以使用 PSRemoting。

Coding技巧:快速產生C#含測試資料的類別

Coding技巧:快速產生C#含測試資料的類別

在補測試程式的過程,有時需要提供假資料給測試程式以驗證正確性。因為是的過程,在資料庫中已經有測試資料,所有我想借由這些測試資料快速產出一個假的含資料的類別。但有些類別中的欄位非常多,而且很多又有階層關係,一字一字輸入轉回 C# 的資料類別又慢又沒效率

如何停用Docker on Windows開機自動啟動?

如何停用Docker on Windows開機自動啟動?

因為 Docker on Windows 的載入會影響到開機後的速度,所以習慣性會把開機啟動選項給關閉,需要時在啟動即可。

如果是在 Linux containers 模式之下,設定:

Linux-Containers-Settings-General

如果是在 Windows containers 模式之下,設定:

Windows-Containers-Settings-General

您的 docker login 密碼加密沒?

您的 docker login 密碼加密沒?

docker login alert

在使用外部倉庫(例如,Azure Container Registry)都需要先行在 Docker Host 進行 docker login 登入。登入後,使用 *.azurecr.io 進行 docker pulldocker push 就跟平常使用 Docker Hub 一樣自然。不過,在 Docker Engine 18.09 之後,提高了整個安全性檢查機制,如上圖,當我們執行登入 Azure ACR 的動作之後,它會給你一個明顯的大提示,你的密碼沒加密哦!

docker login <yourname>.azurecr.io
Username: <username>
Password: <password>
WARNING! Your password will be stored unencrypted in C:\Users\<user>\.docker\config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

跟著說明文件,很快就能找到解決方式,不過還是筆記小小注意事項。

如何快速刪除狀態 dangling 的特定 Docker Images

如何快速刪除狀態 dangling 的特定 Docker Images

docker images tag none

通常在 Build Agnet 或 Docker Host 不斷部署之後,以 docker images 進行查詢,可以很明顯看到一堆 TAG 為 <none> 的 Images。一般而言,我們會定時清除為狀態為 dangling 的 Image,也就是上述 TAG 為 <none> 的 Images,以清除不必要(Unused) Image 來簡省伺服器硬碟空間。