Я только что установил Ubuntu 18.04.4 LTS
(сервер) на староватом Dell PowerEdge 510 - раньше размещенный Windows 2008R2.
Установщик "упомянул" проблему с сетевыми адаптерами. Эта система имеет два (eno1, eno2) адаптеры, которые были связаны в Windows Server. Однако несмотря на схватывание установщика, система, установленная успешно - включая функциональную сеть.
Как моя первостепенная задача, я решил отсортировать жалобы установщика на сеть. Я решил, что связывание этих двух адаптеров будет хорошей идеей и просмотрело некоторую документацию, показывающую, как это было сделано. К сожалению, я, возможно, попал в "кроличью нору Netplan", и таким образом, этот Вопрос о том, как выйти! Вот то, что я сделал:
/etc/cloud/cloud.cfg.d/50-curtin-networking.cfg
Следующее является содержанием этого файла, когда я нашел его (прежде чем ЛЮБЫЕ редактирования):
network:
ethernets:
eno1:
addresses:
- 192.168.1.74/24
gateway4: 192.168.1.1
nameservers:
addresses:
- 192.168.1.1
- 8.8.8.8
search:
- mylan.local
version: 2
Я создал замену для файла выше. Это - это:
network:
version: 2
ethernets:
eno1:
dhcp4: no
eno2:
dhcp4: no
optional: true
bonds:
bond0:
interfaces: [eno1, eno2]
addresses: [192.168.1.74/24]
gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.1, 8.8.8.8]
search: mylan.local
parameters:
mode: active-backup
primary: eno1
mii-monitor-interval: 100
$ sudo cloud-init clean
$ sudo cloud-init init
# errors, incl the following:
...
2020-03-31 04:58:22,849 - util.py[WARNING]: failed stage init
...
cloudinit.util.ProcessExecutionError: Unexpected error while running command.
Command: ['netplan', 'generate']
Exit code: 1
Reason: -
Stdout:
Stderr: /etc/netplan/50-cloud-init.yaml:13:15: Error in network definition: bond0: interface 'eno1' is not defined
- eno1
^
Обратите внимание, что файл ref'd stderr /etc/netplan/50-cloud-init.yaml
. Но я не отредактировал этот файл.
Хорошо - так yaml
файл, по-видимому, сгенерирован файлом, который я действительно редактировал. Я отказался следовать этому совету, который советовал редактировать yaml
файл вопреки информации в файле! Вместо этого я решил победить поспешное отступление! Но это, кажется, не работало также:
.cfg
файл:К счастью, я сохранил копию ИСХОДНОГО файла: /etc/cloud/cloud.cfg.d/50-curtin-networking.cfg
Я восстановил этот файл к его исходному содержанию путем простого копирования ИСХОДНОГО файла по отредактированному файлу:
$ sudo cp /etc/cloud/cloud.cfg.d/50-curtin-networking_ORIGINAL.cfg /etc/cloud/cloud.cfg.d/50-curtin-networking.cfg
Я думал, что это решит мои проблемы, но когда я выполню команды снова, я продолжаю получать ошибки. На самом деле я получаю те же ошибки, которые я получил с отредактированным .cfg
файл выше!?
$ sudo cloud-init clean
$ sudo cloud-init init
# errors, incl the following: (same errors as above)
На данном этапе я чувствую себя подобно кому-то, кто только что ступил в плывун - чем больше я перемещаюсь, тем глубже я снижаюсь. Так, я остаюсь неподвижным, и обращаюсь за помощью. Я полагаю, что Netplan должен работать на некотором уровне, но существует большая конфликтующая информация там.
Что делает я должен сделать для восстановления моей сети к ее оригиналу, как - установленная конфигурация?
Где КАТЕГОРИЧЕСКОЕ руководство конфигурацией сети под Netplan?
Замена yaml имеет ошибку, поиск: ключ берет список, а не единственное значение, например:
search: [mylan.local]
При фиксации этого netplan поколение должно успешно выполниться.
Что касается того, отредактировать ли облачный файл конфигурации по сравнению с netplan yaml файл, я открыл https://bugs.launchpad.net/cloud-init / + ошибка/1869967 для обсуждения этого. Намерение состоит в том, что пользователь никогда не должен повторно выполнять облако-init на установке сервера, и файлы конфигурации под/etc/netplan нужно рассматривать как авторитетное местоположение для редактирования.
Это не ответ. Это даже не ответ по сути, но для тех, которые оказываются в Кроличьей норе Netplan, потому что они пытались связать два сетей Ethernet, это - то, как получить подтверждение, что Вы вышли:
$ sudo lshw -class network -short
H/W path Device Class Description
======================================================
/0/100/1/0 eno1 network NetXtreme II BCM5716 Gigabit Ethernet
/0/100/1/0.1 eno2 network NetXtreme II BCM5716 Gigabit Ethernet
/1 bond0 network Ethernet interface
Я также привлеку внимание к сообщениям об ошибках, сгенерированным, когда я работал cloud-init init
(касательно Объекта 2 в моем вопросе выше). По-видимому, эти сообщения об ошибках абсолютно не имеют никакого отношения к фактической ошибке. Мы все привыкли к загадочным сообщениям об ошибках, но этот коварен, по моему скромному мнению, поскольку это конкретно вывело отвлекающий маневр! Благодарность @slangasek для определения этого.