Как выйти из кроличьей норы Netplan?

0. Введение

Я только что установил Ubuntu 18.04.4 LTS (сервер) на староватом Dell PowerEdge 510 - раньше размещенный Windows 2008R2.

Установщик "упомянул" проблему с сетевыми адаптерами. Эта система имеет два (eno1, eno2) адаптеры, которые были связаны в Windows Server. Однако несмотря на схватывание установщика, система, установленная успешно - включая функциональную сеть.

Как моя первостепенная задача, я решил отсортировать жалобы установщика на сеть. Я решил, что связывание этих двух адаптеров будет хорошей идеей и просмотрело некоторую документацию, показывающую, как это было сделано. К сожалению, я, возможно, попал в "кроличью нору Netplan", и таким образом, этот Вопрос о том, как выйти! Вот то, что я сделал:

1. Отредактируйте файл /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

2. Команды выполнения для проверки конфигурации:

$ 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 файл вопреки информации в файле! Вместо этого я решил победить поспешное отступление! Но это, кажется, не работало также:

3. Отступите! Восстановите оригинал .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)

4. Вопрос

На данном этапе я чувствую себя подобно кому-то, кто только что ступил в плывун - чем больше я перемещаюсь, тем глубже я снижаюсь. Так, я остаюсь неподвижным, и обращаюсь за помощью. Я полагаю, что Netplan должен работать на некотором уровне, но существует большая конфликтующая информация там.

Что делает я должен сделать для восстановления моей сети к ее оригиналу, как - установленная конфигурация?

Где КАТЕГОРИЧЕСКОЕ руководство конфигурацией сети под Netplan?

1
задан 31 March 2020 в 10:03

2 ответа

Замена yaml имеет ошибку, поиск: ключ берет список, а не единственное значение, например:

search: [mylan.local]

При фиксации этого netplan поколение должно успешно выполниться.

Что касается того, отредактировать ли облачный файл конфигурации по сравнению с netplan yaml файл, я открыл https://bugs.launchpad.net/cloud-init / + ошибка/1869967 для обсуждения этого. Намерение состоит в том, что пользователь никогда не должен повторно выполнять облако-init на установке сервера, и файлы конфигурации под/etc/netplan нужно рассматривать как авторитетное местоположение для редактирования.

2
ответ дан 7 April 2020 в 23:23

Это не ответ. Это даже не ответ по сути, но для тех, которые оказываются в Кроличьей норе 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 для определения этого.

0
ответ дан 7 April 2020 в 23:23

Другие вопросы по тегам:

Похожие вопросы: