作為一個沒有太多預算可用於我的家庭實驗室的人,HP t730 瘦客戶機實際上非常適合家庭實驗室使用。 幸運的是,我在最近的 StorageReview 贈品中贏得了一個 他們的子 Reddit. t730 有足夠的 RAM 和 CPU,足以靈活應對許多用例,同時又不過分。 無論是託管 Pi-Hole,將其用作 PfSense 路由器/防火牆,還是將其連接到 Docker Swarm。
作為一個沒有太多預算可用於我的家庭實驗室的人,HP t730 瘦客戶機實際上非常適合家庭實驗室使用。 幸運的是,我在最近的 StorageReview 贈品中贏得了一個 他們的子 Reddit. t730 有足夠的 RAM 和 CPU,足以靈活應對許多用例,同時又不過分。 無論是託管 Pi-Hole,將其用作 PfSense 路由器/防火牆,還是在本例中,將其連接到 Docker Swarm。
如果您不熟悉 Docker 或整個容器,您可能會認為它們是幾乎可以在任何東西上運行的輕量級虛擬機。 雖然這是一個重大的過度簡化,但它為您提供了足夠的信息而不會讓人不知所措。 Swarm 是 Docker 的擴展。 它提供了一種簡單的內置方式來“編排”容器、跨多個節點部署它們、管理資源和其他類似的事情。
在我現有的基礎設施中,我已經有 5 個節點在 Swarm 中運行。 四個 Raspberry Pi B4 和一個 Dell Optiplex 7040。這為入門提供了良好的基礎。 但是您只需要一個節點來跟隨這個 Docker Swarm 教程。 應該注意的是,雖然我幾乎沒有得到這個,但可以找到它們 在 eBay 上 200 美元或更少 如果您搜索並討價還價。
Docker Swarm 安裝操作系統
首先,我在 HP t730 上安裝了我選擇的 Linux 發行版,即 Debian Buster。 接下來,我需要閃現 Debian 安裝程序 到 USB 閃存驅動器上。 閃爍圖像的一個不錯的選擇是 Balena Etcher,它免費且易於使用。 完成後,我們將開始安裝過程。
圖 1:安裝新的 SSD
首先,我將 t32 中的 2GB SATA M.730 驅動器更換為 256GB 駕駛。 但是,當時我並不知道,這最終會導致問題。 您會看到,某些固件接口存在問題,有時無法與非供應商驅動器一起使用。 我碰巧安裝的驅動器是無法工作的驅動器之一。 為了解決這個問題,在安裝 Debian 時我必須將 Grub 設置為可移動安裝,您可能會或可能不會遇到這種情況,具體取決於您安裝的驅動器。
請記住,對於我們今天所做的事情,256GB 不是必需的,我手邊就有。 我建議至少 64GB,但這可能會限制您能夠在驅動器上存儲的數據量。
安裝驅動器後,我啟動進入 Debian 安裝屏幕。 我完成了基本安裝、選擇語言、鍵盤佈局等。對於用戶配置,我做了一些具體的事情。 我根本沒有為 root 用戶輸入密碼,這會禁用該帳戶。 我創建了一個名為 administrator 的新用戶,它有一個非常長的密碼,我保存在密碼管理器中。 這使系統盡可能安全。
對於分區,我選擇了一個非常簡單的佈局,1GB 引導分區,其餘的驅動器分配給根分區。 我分別為文件系統選擇了 FAT32 和 ext4,我更喜歡 ext4 而不是像 Btrfs 這樣的東西,因為它的穩定性和速度,即使它缺少新文件系統的一些尖端功能。
當我到達選擇基礎包屏幕時,我取消了除 OpenSSH 服務器以外的所有選擇。 我這樣做的原因是我希望基本系統盡可能輕便,而且它也是無頭的,因為它沒有 GUI。 但是,要完成本教程,您只需要 OpenSSH 服務器,您可以安裝所需的任何其他包。
圖 2:正在安裝的包
如果您遇到我之前提到的 EFI 固件錯誤,Debian wiki 有一個很好的指南 如何解決. 安裝 Grub 後,我們將重新啟動並拔下 U 盤。 如果一切順利,您將啟動到 TTY 或 GUI,具體取決於您選擇安裝的內容。
安裝後配置
安裝完成後我們開始配置系統。 我寫了一個 ansible劇本 使這個過程自動化。 為了使本指南保持簡單,我們將手動運行這些命令。
# 這會安裝完成未來步驟所需的包sudo apt updatesudo apt install gnupg ca-certificates apt-transport-https curl lsb-release -y# 這會添加 apt 驗證 Docker 包簽名所需的密鑰curl -fsSL https://download .docker.com/linux/debian/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# 並添加安裝 Docker 的存儲庫運行此命令:echo “deb [arch=amd64 signed-by=/usr/share/keyrings/ docker-archive-keyring.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
完成後,我們需要安裝 Docker 本身並啟用該服務。
sudo apt安裝docker-ce
sudo systemctl啟用-現在docker
現在我們已經準備好使用 Docker 來運行服務了!
在 HP t730 上使用 Docker Swarm
第一次使用 Swarm 需要您初始化 swarm。 讓我們回顧一下下面的命令。 如果您已經有一群,請跳過此步驟。
sudo docker swarm 初始化
如果您想驗證它是否有效,請將此命令粘貼到您的終端中:
if [ “$(sudo docker info | grep Swarm | sed 's/Swarm: //g')” == “inactive” ]; 然後 echo false;else echo true;fi
如果您的主機在 Swarm 模式下運行,那麼該命令應該返回“true”。
運行我們的第一個服務
使用 Swarm,有兩種創建服務的方法。
- 碼頭服務創建 這類似於 碼頭運行
- 碼頭堆棧部署 這類似於 泊塢窗,撰寫
通常,您希望使用 docker stack deploy,因為您能夠輕鬆地重現堆棧。
但只是為了驗證它是否有效,使用 docker service create 就可以了。
sudo docker service create -p 3000:80 httpd
這可能需要一些時間才能完成,但在命令完成後,您可以轉到端口 3000 上節點的 IP。如果您不知道您的 IP 是什麼,請運行 hostname -I。 就我而言,我不得不去 192.168.19.73:3000. 您應該會看到一個顯示 It works 的屏幕!
關閉
HP t730 是一款適合初學者或老手的小型機器,它支持許多不同的用例並且非常強大 你付出的代價,在我的例子中,這只不過是 15 美元的運費(感謝 StorageReview!)。 我希望每個人都能從這篇文章中有所收穫,無論是學習新技術,還是受到啟發開始自己的家庭實驗室。
-伊桑·愛德華茲
參與 StorageReview
電子通訊 | YouTube | LinkedIn | Instagram | Twitter | Facebook | 的TikTok | RSS訂閱