https://www.gravatar.com/avatar/cee80559471f68b7a5134ac8f3e60187?s=240&d=mp

Date Huang

CloneZilla Bittorrent Deploy

這篇就隨便打打吧。就是篇剛剛幫國網中心 debug 完的心得。

當初就只是很單純覺得 CloneZilla Multicast Mode 為甚麼速度這麼不穩,而研究並思考可以用什麼方案取代,沒想到黃秉鈞學長隨口講講的 BT Solution ,最後真的被我跟我室友顏靖軒做出來了。從 2016 年底開發至今,總算是迎來第一個完整且穩定的 CloneZilla Bittorrent Mode (>=2.6.1-2 or 20190123-* amd64)。附上國網中心蕭志榥研究員做的教學文件

Intel 82599ES 10G 網卡啟用 PXE

最近在測試 CloneZilla EZIO 模式,想說自己有三台 server 閒置,那就拿來跑看看,結果沒想到有一張網卡沒有辦法 PXE 開機,所以只好研究下怎麼處理了。

Table of Contents

<span class="ez-toc-title-toggle"><a class="ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle" style="display: none;"><i class="ez-toc-glyphicon ez-toc-icon-toggle"></i></a></span>

解決方式

先下載 82599ES 的 firmware,應該會得到一個 IBABUILD.exe 的 DOS 執行檔,然後在透過 DOS 執行編譯還有 flash firmware,就可以搞定了。指令有點忘記了,之後想到在補。

ZFS 使用的經驗

我透過 OpenMediaVault 搭配 OMV-zfs plugin 使用 zfs ,UI 能使用的功能依舊很少,所以大部分還是得用 CLI 控制 ZFS 本身,不過可以用 OMV UI 控制很多 file sharing 的設定就已經萬謝了。以下分享一些,使用 ZFS 以來的心得。

Patch Kolla via Template

Kolla 多少還是有一些不合需求的地方,我們可以透過 Kolla Template 的方式修改 Dockerfile ,不用直接硬修改 Kolla 本身,而是透過 Kolla 提供的 Plugin 安裝接口修正。

修改的同時可能需要一些 Jinja (Template Engine) 的一些知識,可以參考 Jinja 官網的文件,也需要 Dockerfile 的撰寫知識。

Kolla-Ansible Nova Ephemeral Storage on NFS

OpenStack 通常會有兩種儲存 VM 的方式,一個是直接在 Nova-Compute Node 上面的 /var/lib/nova/instances ,另外一種則是儲存在 Cinder。前者通常也不會真的直接儲存在 Node 上,而是會透過 Shared Storage 儲存,例如 NFS 等等。

但是因為 OpenStack 會有一些 Lock 機制,偏偏 NFS 不一定實作全部的 Lock 種類,所以會導致 Lock 失敗,進而製作 VM 也跟著失敗。

Nova 在新增 VM 或是複製 Image 的時候,會考慮處理程序處理的問題,所以會使用 Lock ,以確保沒有正確無誤。透過 oslo.concurrency 處理 Lock,底層透過 fasteners 呼叫 fcntl ,進而失敗。所以我們將 Lock 機制暫時取消掉。目前還無法確定取消掉之後會不會有其他問題存在。