The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

在 Docker 或 Kubernetes 執行 SQL Server Linux 容器應注意記憶體限制問題

前幾天一樣在客戶端進行 Kubernetes 教育訓練的時候,發現有少部分學員無法正確部署應用程式,我們的例子是一個 ASP.NET Core 網站,搭配一個 SQL Server Linux 容器,然而在練習實作 livenessProbe 的時候,卻發現有些人怎樣都無法將 SQL Server Linux 容器啟動,但是若將 livenessProbe 設定移除,服務可以啟動。若將 Pod 中容器記憶體限制移除,服務也可以順利啟動。是不是有點詭異?這篇文章我就來說說這個來龍去脈!

... 繼續閱讀 ...

當 Kubernetes 或 MicroK8s 遇到 Docker Hub 下載限制時的解決之道

我這幾個星期在一間企業進行為期五天的 Kubernetes 教育訓練,我們的 Lab 環境都是用輕量級的 MicroK8s 為主,但是課程一開始就不太順利,因為上課人數有 20 位左右,他們都使用公司的網路,大家都共用一個 IP 連外,以致於碰上討人厭的 Rate limit on Docker Hub 問題,所以有些人無法成功架設起叢集,原因就是 image 下載不到造成的。這篇文章我就來說明在 MicroK8s 如何正確的解決 Docker Hub 無法下載 image 的問題。

... 繼續閱讀 ...

使用 Multipass 與 cloud-init 快速建立 MicroK8s 叢集所需的虛擬機器 (VMs)

週日玩了一下 cloud-init 工具,我發現文件看官方文件不是那麼好上手,但是官網首頁的影片卻一看就知道怎麼設定。簡單來說,cloud-init 專門用來幫你初始化 Linux 的出廠設定,不但支援大多數 Linux 散佈版本 (distributions),也支援大多數雲端平台業者,也可以讓你在地端的 Bare-Metal 主機進行初始化,可謂是業界標準的初始化 VM 方法。我發現 Multipass 也有支援 cloud-init 設定,所以這篇文章我來大致說明一下設定的過程與套用的方式。

... 繼續閱讀 ...

利用 Multipass 在區域網路架設一套 MicroK8s 叢集環境

我之前有篇 使用 MicroK8s 架設 Kubernetes 叢集的完整過程解析 文章,講解了完整的 MicroK8s 體驗的過程。雖然你可以在 Windows 上輕鬆的架設出一套 Kubernetes 叢集,但是由於 MicroK8s 的底層使用到了 Multipass 工具來建立虛擬機器(VM),事實上透過 Multipass 建立的 VM 在每次重開機的時候都會變更 IP 地址,因此只要 VM 重開機,基本上叢集就會壞掉,因為所有 Worker Nodes 將無法找到 Control Plane 的 IP 地址。這篇文章我來說說這個問題的解決方法!

... 繼續閱讀 ...

使用 MicroK8s 架設 Kubernetes 叢集的完整過程解析

我將在今年的 Kubernetes Summit 2021 主持一場 使用 Dapr 與 Kubernetes 打造微服務架構 實戰工作坊,在開始這場實戰工作坊之前,必須要讓學員事先建立好 Kubernetes 環境才能進行實作,這篇文章我將鉅細靡遺的教大家怎樣透過 MicroK8s 快速的建立完整的 Kubernets 叢集環境。

... 繼續閱讀 ...