cloud-init 和 netplan網路或是其它網路控制誰控制權高?? [論壇 - 新手村]
正在瀏覽:
1 名遊客
cloud-init 和 netplan網路或是其它網路控制誰控制權高?? |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員一級
![]() ![]() 註冊日期:
2022/7/27 14:06 所屬群組:
已註冊使用者 等級: 2
HP : 0 / 31
![]() |
Ubuntu Server 22.04
最近看很多設定都是這些網路跳來跳去的, 有哪個大大清楚知道這些之間的關係? 有時候看到有的就說不要用 netplan, 改用 networkd, 或是 network manager 個人想法是啟動過程應該還是有主控權的概念, 不知道這樣對不對; 不然就像是沒有 主控制的硬體設計, 常會有 偶發的 bug 會這樣問是因為看到 netplan下有一段話提到 subiquity, 然後在 cloud-init的 .cfg.d下 又看到 subiquity.disable.xxxxx.cfg 的檔案, 所以想把這些對應關係的邏輯性/系統性 先弄清楚 如果有大大清楚, 再麻煩解說, 感謝喔
2022/7/29 12:26
|
||||||||||
![]() |
回覆: cloud-init 和 netplan網路或是其它網路控制誰控制權高?? |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 37
HP : 0 / 905
![]() |
提供下面兩篇參考文章,也許能協助您初步理解「netplan」的功用
* https://newtoypia.blogspot.com/2020/09/netplan.html * https://ithelp.ithome.com.tw/m/articles/10267179 ================================================================================ 對於「cloud-init」這部份,我沒有「涉略」, 而我在上面提到的「第二個網址」, 有看到裡面有提到「cloud-init」相關的內容,對照您提到的內容,我猜您應該也有參考。 不過我安裝的是「Ubuntu 22.04 Desktop 版」, 可能需要我有安裝「Ubuntu 22.04 Server 版」,才有辦法討論,不過我暫時沒有心力去做這件事情。 然而我個人覺得,觀念需要一個一個釐清, 所以建議您先理解「netplan」的功用, 因此以下稍微紀錄,我對「netplan」探索到的,供您參考, 再對照上面提到的網址提到,也許能讓您有個探索的起點。 ================================================================================ 我理解到的「netplan」只是「輔助網路設定的工具」, 它只是透過「文字設定檔」,加上「netplan」提供的「指令」,來產生「實際運作後端的網路設定檔」。 它只是在原本有的機制上,再架一層,統一設定檔的格式,實際的運作並不是在「netplan」這端。 ================================================================================ 而「文字設定檔」是放在「/etc/netplan」這個資料夾,副檔名是「.yaml」,也就是採取「YAML」的格式。 以我的環境為例,我的環境是「Ubuntu 22.04 Desktop 版」 執行
顯示
執行
顯示 # Let NetworkManager manage all devices on this system network: version: 2 renderer: NetworkManager ================================================================================ 註: 關於「/etc/netplan/01-network-manager-all.yaml」這個檔案,系統安裝好就已經存在了,所以我也沒特別去設定它。 而且它也不是來自於哪個「Package」。 執行
顯示
================================================================================ 而「netplan」提供的「指令」。 執行
顯示
也就是說,在系統裡有「netplan」這個「指令」可以下 執行
顯示 usage: /usr/sbin/netplan [-h] [--debug] ... Network configuration in YAML options: -h, --help show this help message and exit --debug Enable debug messages Available commands: help Show this help message apply Apply current netplan config to running system generate Generate backend specific configuration files from /etc/netplan/*.yaml get Get a setting by specifying a nested key like "ethernets.eth0.addresses", or "all" info Show available features ip Retrieve IP information from the system set Add new setting by specifying a dotted key=value pair like ethernets.eth0.dhcp4=true rebind Rebind SR-IOV virtual functions of given physical functions to their driver try Try to apply a new netplan config to running system, with automatic rollback ================================================================================ * man netplan-get 執行
顯示
加上「--debug」這個參數,執行下面指令
顯示
執行
顯示
執行
顯示
* https://github.com/canonical/netplan/blob/main/netplan/cli/commands/get.py * https://github.com/canonical/netplan/blob/main/netplan/cli/utils.py * https://github.com/canonical/netplan/blob/main/netplan/libnetplan.py * https://github.com/canonical/netplan/blob/main/src/netplan.c ================================================================================ 執行
顯示
* man netplan * man netplan-apply * man netplan-dbus * man netplan-generate * man netplan-get * man netplan-set * man netplan-try * https://github.com/canonical/netplan/tree/main/netplan/cli/commands ================================================================================ 執行
顯示
執行
或是執行
顯示
也就是「/usr/share/netplan/netplan.script」是用「Python」寫成的 ================================================================================ 執行
顯示 /usr/share/netplan ├── netplan │ ├── cli │ │ ├── commands │ │ │ ├── apply.py │ │ │ ├── generate.py │ │ │ ├── get.py │ │ │ ├── info.py │ │ │ ├── __init__.py │ │ │ ├── ip.py │ │ │ ├── migrate.py │ │ │ ├── set.py │ │ │ ├── sriov_rebind.py │ │ │ └── try_command.py │ │ ├── core.py │ │ ├── __init__.py │ │ ├── ovs.py │ │ ├── sriov.py │ │ └── utils.py │ ├── configmanager.py │ ├── _features.py │ ├── __init__.py │ ├── libnetplan.py │ └── terminal.py └── netplan.script 3 directories, 21 file * https://github.com/canonical/netplan/tree/main/netplan ================================================================================ 註: 我系統安裝好後,一直都是使用「NetworkManager」的「圖形介面程式」來設定網路, 所以我也沒有特別透過「netplan」來設定「網路」, 所以就請參考我一開頭紀錄的參考網址,來作「netplan」的設定。 這部份可能就需要您自己去測試了。 或是參考官網提供的「範例」 或是執行下面指令,也可以找到範例。
顯示
================================================================================ 執行
顯示
執行
顯示
執行
或是執行
顯示
* https://github.com/canonical/netplan/blob/main/src/generate.c * man systemd.generator 關於「/lib/systemd/system-generators/netplan」目前只有探索到這,先紀錄。 ================================================================================ 以上提供參考,報告完畢 ![]()
2022/7/30 9:13
|
||||||||||
![]() |
回覆: cloud-init 和 netplan網路或是其它網路控制誰控制權高?? |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 37
HP : 0 / 905
![]() |
以下提供一些簡易的探索技巧
執行
顯示
執行
顯示
* Package: netplan.io * Package: libnetplan0 執行
執行
* Source Package: netplan.io 執行
2022/7/30 9:16
|
||||||||||
![]() |
回覆: cloud-init 和 netplan網路或是其它網路控制誰控制權高?? |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 37
HP : 0 / 905
![]() |
Package: libnetplan0 / filelist
執行
顯示
2022/7/30 9:17
|
||||||||||
![]() |
回覆: cloud-init 和 netplan網路或是其它網路控制誰控制權高?? |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 37
HP : 0 / 905
![]() |
Package: netplan.io / filelist
執行
顯示
2022/7/30 9:19
|
||||||||||
![]() |
您可以查看帖子.
您不可發帖.
您不可回覆.
您不可編輯自己的帖子.
您不可刪除自己的帖子.
您不可發起投票調查.
您不可在投票調查中投票.
您不可上傳附件.
您不可不經審核直接發帖.