Page tree
Skip to end of metadata
Go to start of metadata

Установка с USB-флешки

  1. Поместить на usb-накопитель c файловой системой FAT32 образ ОС.

    ONIE будет пытаться обнаружить файл образа ОС с несколькими вариантами стандартного названия. Если использовать одно из них, установка может пройти полностью в автоматическом режиме.

  2. Подключить флешку к коммутатору в разъем на передней панели.
  3. Подключиться консольным кабелем. Скорость - 115200.
  4. Включить коммутатор.
  5. При загрузке в GRUB выбрать "ONIE: Install OS".
    • Если коммутатор новый, то это вариант по умолчанию:

                                GNU GRUB  version 2.02~beta3
      
       +----------------------------------------------------------------------------+
       |*ONIE: Install OS                                                           | 
       | ONIE: Rescue                                                               |
       | ONIE: Uninstall OS                                                         |
       | ONIE: Update ONIE                                                          |
       | ONIE: Embed ONIE                                                           |
       | ACCTON-DIAG                                                                |
       |                                                                            |
       |                                                                            |
       |                                                                            |
       |                                                                            |
       |                                                                            |
       |                                                                            | 
       +----------------------------------------------------------------------------+
      
            Use the ^ and v keys to select which entry is highlighted.          
            Press enter to boot the selected OS, `e' to edit the commands       
            before booting or `c' for a command-line.       
    • Если на коммутаторе уже что-то установлено, вариантом по умолчанию будет установленная ОС. Нужно успеть нажать стрелку вниз, чтобы не дать загрузиться установленной ОС (таймаут 5 секунд), и выбрать ONIE:

                                GNU GRUB  version 2.02~beta3                          
      
       ****************************************************************************** 
       * SONiC-OS-Edgecore-SONiC_20201229_070315_ec202006_101                       * 
       **ONIE                                                                       * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       ****************************************************************************** 
                                                                                      
            Use the * and * keys to select which entry is highlighted.                
            Press enter to boot the selected OS, `e' to edit the commands             
            before booting or `c' for a command-line.                                 

      В подменю выбрать "ONIE: Install OS", как в первом случае.

  6. После загрузки ONIE нажать Enter для активации консоли:

    ONIE загрузился
                                                                                    Platform  : x86_64-accton_as5812_54x-r0
    Version   : 2018.02.00.02
    Build Date: 2018-04-13T15:36+0800
    igb 0000:00:14.1: Hardware Initialization Failure
    igb 0000:00:14.2: Hardware Initialization Failure
    Info: Mounting kernel filesystems... done.
    Info: Mounting ONIE-BOOT on /mnt/onie-boot ...
    Info: Making NOS install boot mode sticky.
    Installing for i386-pc platform.
    Installation finished. No error reported.
    Info: Using eth0 MAC address: 68:21:5f:48:4c:91
    Info: eth0:  Checking link... down.
    ONIE: eth0: link down.  Skipping configuration.
    ONIE: Failed to configure eth0 interface
    Starting: klogd... done.
    Starting: dropbear ssh daemon... done.
    Starting: telnetd... done.
    discover: installer mode detected.  Running installer.
    Starting: discover... done.
    
    Please press Enter to activate this console. Info: eth0:  Checking link... down.      
  7. ONIE попытается найти образ ОС и установить его, циклически проверяя несколько стандартных путей с выводом информации о попытках в консоль:

    Autotrying...
    ONIE: Starting ONIE Service Discovery
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x-r0.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-accton_as5812_54x ...
    Info: Attempting file://dev/sdb1/onie-installer-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-bcm ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-bcm.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64 ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64.bin ...
    Info: Attempting file://dev/sdb1/onie-installer ...
    Info: Attempting file://dev/sdb1/onie-installer.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x-r0.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb/onie-installer-accton_as5812_54x ...
    Info: Attempting file://dev/sdb/onie-installer-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-bcm ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-bcm.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64 ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64.bin ...
    Info: Attempting file://dev/sdb/onie-installer ...
    Info: Attempting file://dev/sdb/onie-installer.bin ...
    Info: Attempting tftp://onie-server/68-21-5f-48-4c-91/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x-r0.bin ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x.bin ...
    Info: Attempting tftp://onie-server/onie-installer-accton_as5812_54x ...
    Info: Attempting tftp://onie-server/onie-installer-accton_as5812_54x.bin ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-bcm ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-bcm.bin ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64 ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64.bin ...
    Info: Attempting tftp://onie-server/onie-installer ...
    Info: Attempting tftp://onie-server/onie-installer.bin ...
    Info: Sleeping for 20 seconds 
    4..
    ONIE:/ # onie-discovery-stop 
    discover: installer mode detected.
    Stopping: discover... done.

    Для остановки попыток нужно выполнить комманду onie-discovery-stop (или onie-stop на более новых версиях ONIE).

  8. Проверить смонтирована ли флешка, при необходимости смонтировать:
    1. Проверка:

      ONIE:/ # mount | grep sd
      /dev/sda2 on /mnt/onie-boot type ext4 (rw,relatime,errors=remount-ro,data=ordered)

      Присутствие в выводе только onie-boot означает, что не смонтирована. Если флешка всё-таки уже смонтировалась, перейти к пункту 9, запомнив директорию, куда смонтирована флешка.

    2. Скорей всего раздел на флешке - /dev/sdb1. Тем не менее, это можно уточнить...

      ...по выводу blkid:

      ONIE:/ # blkid 
      /dev/sdb1: UUID="07C9-CDF8"
      /dev/sdb: LABEL="FLASHka"
      /dev/sda3: LABEL="ACCTON-DIAG" UUID="e33a30ee-dba0-444d-9d5a-3c4ec9d499d1"
      /dev/sda2: LABEL="ONIE-BOOT" UUID="e38409f4-5ded-4726-a5f0-3b7b55b2f883"

      В данном примере нас не интересуют все разделы sda*, так как на нём находится загрузочный раздел ONIE, то есть /dev/sda - это встроенный носитель. /dev/sdb - это само устройство, а нас интересует раздел с файловой системой. Раздел на флешках обычно один, в данном случае это - /dev/sdb1.

    3. Смонтировать раздел флешки:

      ONIE:/ # mkdir /mnt/usb
      ONIE:/ # mount /dev/sdb1 /mnt/usb
      ONIE:/ # ls -l /mnt/usb/
      -rwxr-xr-x    1 root     0        895151382 Jun 11  2021 Edgecore-SONiC_20201229_070315_ec202006_101.bin
  9. Запустить установку командой onie-nos-install /mnt/usb/<filename>:

    ONIE:/ # onie-nos-install /mnt/usb/Edgecore-SONiC_20201229_070315_ec202006_101.bin
    discover: installer mode detected.
    Stopping: discover... done.
    ONIE: Executing installer: /mnt/usb/Edgecore-SONiC_20201229_070315_ec202006_101.bin
    Verifying image checksum ...
  10. Дождаться окончания установки. Коммутатор перезагрузится, в GRUB вариантом по умолчанию станет SONiC, после загрузки SONiC'а появится приглашение ко входу.

    На этом этапе ничего переключать не требуется, иначе ONIE может затереть загрузочную запись SONiC'а. Если это всё-таки произошло, и предложение загрузить SONiC отсутствует, вернуться к пункту 5.

  11. Когда установка завершится, появится приглашение ко входу. В это время коммутатор также станет доступен для входа по ssh. Реквизиты по умолчанию: admin/YourPaSsWoRd.

Установка по сети

Уже на этом этапе использование White Box коммутатора предоставляет значительную вариативность. Приведённый порядок действий далеко не единственно возможный, но представляется наиболее простым и понятным.

  1. Подготовить DHCP сервер.

    Рекоммендуется сразу предоставить коммутатору доступ к NTP серверу и указать на него через параметры DCHP.

    Через параметры DHCP также возможно сразу передать ONIE ссылку на образ для загрузки и установки. Различные версии ONIE могут поддерживать различные параметры.

    Подробнее на сайте проекта: https://opencomputeproject.github.io/onie/user-guide/index.html#basic-dhcp-scenario-1-specify-installer-image-url

    /etc/systemd/network/10-enp3s0.network
    [Match]
    Name=enp3s0
    
    [Network]
    Address=192.168.37.1/24
    DHCPServer=true
    
    [DHCPServer]
    PoolOffset=100
    PoolSize=20
    EmitNTP=yes
    NTP=88.147.254.235
    SendOption=114:string:http://192.168.37.1/Edgecore-SONiC_20201229_070315_ec202006_101.bin
  2. Запустить сервер http сервер с которого будет загружаться образ. Для этого:
    1. На сервере, где хранится образ, перейти в директорию с ним;
    2. Запустить http сервер из стандартного модуля python, входящего в большинство современных дистрибутивов Linux:

      python -m http.server 80
      # Чтобы использовать стандартный для http 80-ый порт, может потребоваться повышение прав пользователя. Если не указывать порт, сервер будет слушать порт 8000 и его потребуется явно указать в ссылке.
  3. Подключиться консольным кабелем. Скорость - 115200.
  4. Включить коммутатор.
  5. При загрузке в GRUB выбрать "ONIE: Install OS".
    • Если коммутатор новый, то это вариант по умолчанию:

                                GNU GRUB  version 2.02~beta3
      
       +----------------------------------------------------------------------------+
       |*ONIE: Install OS                                                           | 
       | ONIE: Rescue                                                               |
       | ONIE: Uninstall OS                                                         |
       | ONIE: Update ONIE                                                          |
       | ONIE: Embed ONIE                                                           |
       | ACCTON-DIAG                                                                |
       |                                                                            |
       |                                                                            |
       |                                                                            |
       |                                                                            |
       |                                                                            |
       |                                                                            | 
       +----------------------------------------------------------------------------+
      
            Use the ^ and v keys to select which entry is highlighted.          
            Press enter to boot the selected OS, `e' to edit the commands       
            before booting or `c' for a command-line.       
    • Если на коммутаторе уже что-то установлено, вариантом по умолчанию будет установленная ОС. Нужно успеть нажать стрелку вниз, чтобы не дать загрузиться установленной ОС (таймаут 5 секунд), и выбрать ONIE:

                                GNU GRUB  version 2.02~beta3                          
       
       ****************************************************************************** 
       * SONiC-OS-Edgecore-SONiC_20201229_070315_ec202006_101                       * 
       **ONIE                                                                       * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       *                                                                            * 
       ****************************************************************************** 
                                                                                      
            Use the * and * keys to select which entry is highlighted.                
            Press enter to boot the selected OS, `e' to edit the commands             
            before booting or `c' for a command-line.                                 

      В подменю выбрать "ONIE: Install OS", как в первом случае.

  6. После загрузки ONIE нажать Enter для активации консоли:

    ONIE загрузился
                                                                                    Platform  : x86_64-accton_as5812_54x-r0
    Version   : 2018.02.00.02
    Build Date: 2018-04-13T15:36+0800
    igb 0000:00:14.1: Hardware Initialization Failure
    igb 0000:00:14.2: Hardware Initialization Failure
    Info: Mounting kernel filesystems... done.
    Info: Mounting ONIE-BOOT on /mnt/onie-boot ...
    Info: Making NOS install boot mode sticky.
    Installing for i386-pc platform.
    Installation finished. No error reported.
    Info: Using eth0 MAC address: 68:21:5f:48:4c:91
    Info: eth0:  Checking link... down.
    ONIE: eth0: link down.  Skipping configuration.
    ONIE: Failed to configure eth0 interface
    Starting: klogd... done.
    Starting: dropbear ssh daemon... done.
    Starting: telnetd... done.
    discover: installer mode detected.  Running installer.
    Starting: discover... done.
    
    Please press Enter to activate this console. Info: eth0:  Checking link... down.      
  7. ONIE попытается найти образ ОС и установить его, циклически проверяя несколько стандартных путей с выводом информации о попытках в консоль:

    Autotrying...
    ONIE: Starting ONIE Service Discovery
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x-r0.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-accton_as5812_54x ...
    Info: Attempting file://dev/sdb1/onie-installer-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-bcm ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64-bcm.bin ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64 ...
    Info: Attempting file://dev/sdb1/onie-installer-x86_64.bin ...
    Info: Attempting file://dev/sdb1/onie-installer ...
    Info: Attempting file://dev/sdb1/onie-installer.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x-r0.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb/onie-installer-accton_as5812_54x ...
    Info: Attempting file://dev/sdb/onie-installer-accton_as5812_54x.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-bcm ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64-bcm.bin ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64 ...
    Info: Attempting file://dev/sdb/onie-installer-x86_64.bin ...
    Info: Attempting file://dev/sdb/onie-installer ...
    Info: Attempting file://dev/sdb/onie-installer.bin ...
    Info: Attempting tftp://onie-server/68-21-5f-48-4c-91/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x-r0 ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x-r0.bin ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-accton_as5812_54x.bin ...
    Info: Attempting tftp://onie-server/onie-installer-accton_as5812_54x ...
    Info: Attempting tftp://onie-server/onie-installer-accton_as5812_54x.bin ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-bcm ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64-bcm.bin ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64 ...
    Info: Attempting tftp://onie-server/onie-installer-x86_64.bin ...
    Info: Attempting tftp://onie-server/onie-installer ...
    Info: Attempting tftp://onie-server/onie-installer.bin ...
    Info: Sleeping for 20 seconds 
    4..
    ONIE:/ # onie-discovery-stop 
    discover: installer mode detected.
    Stopping: discover... done.

    Для остановки попыток нужно выполнить комманду onie-discovery-stop (или onie-stop на более новых версиях ONIE).

  8. Запустить установку командой onie-nos-install http://<адрес сервера>[:<порт>]/<название образа>:

    ONIE:/ # onie-nos-install http://192.168.37.1/Edgecore-SONiC_20201229_070315_ec202006_101.bin
    discover: installer mode detected.
    Stopping: discover... done.
    ONIE: Executing installer: /mnt/usb/Edgecore-SONiC_20201229_070315_ec202006_101.bin
    Verifying image checksum ...
  9. Дождаться окончания установки. Коммутатор перезагрузится, в GRUB вариантом по умолчанию станет SONiC, после загрузки SONiC'а появится приглашение ко входу.

    На этом этапе ничего переключать не требуется, иначе ONIE может затереть загрузочную запись SONiC'а. Если это всё-таки произошло, и предложение загрузить SONiC отсутствует, вернуться к пункту 5.

  10. Когда установка завершится, появится приглашение ко входу. В это время коммутатор также станет доступен для входа по ssh. Реквизиты по умолчанию: admin/YourPaSsWoRd.
  • No labels