Netplan және оны қалай дұрыс дайындау керек

Ubuntu керемет операциялық жүйе, мен онымен ұзақ уақыт жұмыс істемедім Ubuntu серверде жұмыс істеп тұрды, ал жұмыс үстелімді тұрақты нұсқадан жаңартудың ешқандай мәні болмады. Сондықтан, жақында ғана мен жаңа нұсқамен жұмыс істеуге мәжбүр болдым. Ubuntu 18.04 серверінде мен заманнан артта қалып, желімді конфигурациялай алмайтынымды түсінгенде қатты таң қалдым, себебі /etc/network/interfaces файлын өңдеу арқылы желілік интерфейстерді конфигурациялаудың ескі жүйесі жоғалып кеткен еді. Ал оның орнына не келді? Қорқынышты және бір қарағанда мүлдем түсініксіз нәрсе - "Netplan"-мен танысыңыз.

Шынымды айтсам, алдымен мен бұл не екенін және «неге қажет екенін, бәрі өте ыңғайлы екенін» түсіне алмадым, бірақ аздап жаттығудан кейін оның өзіндік сүйкімділігі бар екенін түсіндім. Сонымен, лирикалық әңгімелер тоқтады, Netplan деген не екенін жалғастырайық. Бұл желіні конфигурациялауға арналған жаңа утилита... Ubuntu, кем дегенде «Мен басқа дистрибутивтерде мұндай нәрсені кездестірмедім». Netplan-мен салыстырғандағы маңызды айырмашылық - конфигурация осы тілде жазылған. ЯМЛ, иә, сіз YAML сөзін дұрыс естідіңіз, әзірлеушілер уақыт ағымына ілесуді шешті (және олар оны қанша мақтаса да, мен бұл әлі де қорқынышты тіл деп ойлаймын). Бұл тілдің басты кемшілігі ол бос орындарға өте сезімтал, мысал арқылы конфигурацияны қарастырайық.

Конфигурация файлдары /etc/netplan/filename.yaml жолында орналасқан, әрбір блок арасында + 2 бос орын болуы керек.

1) Стандартты тақырып келесідей болады:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0f0:
      dhcp4:no

Енді не істегенімізді қарастырайық:

  • желі: - бұл конфигурация блогының басы.
  • renderer: networkd - мұнда біз қолданатын желі менеджерін көрсетеміз, бұл желілік немесе NetworkManager
  • нұсқа: 2 - мұнда, менің түсінуімше, YAML нұсқасы.
  • ethernets: - бұл блок Ethernet протоколын конфигурациялайтынымызды көрсетеді.
  • enps0f0: — қай желі адаптерін конфигурациялайтынымызды көрсетіңіз.
  • dhcp4:жоқ - тиісінше 4 v6 dhcp6 үшін DHCP v6 өшіру

2) IP мекенжайларын тағайындап көрейік:

    enp3s0f0:
      dhcp4:no
      macaddress: bb:11:13:ab:ff:32
      addresses: [10.10.10.2/24, 10.10.10.3/24]
      gateway4: 10.10.10.1
      nameservers:
        addresses: 8.8.8.8

Мұнда біз poppy, ipv4, шлюз және dns серверін орнаттық. Назар аударыңыз, егер бізге бірнеше IP мекенжайы қажет болса, біз оларды кейін міндетті бос орынмен үтірмен бөліп жазамыз.

3) Қажет болса ше? байланыстыру?

  bonds:
    bond0:
      dhcp4: no
      interfaces: [enp3s0f0, enp3s0f1]
      parameters: 
        mode: 802.3ad
        mii-monitor-interval: 1

  • облигациялар: - байланыстыруды конфигурациялайтынымызды түсіндіретін блок.
  • bond0: - ерікті интерфейс атауы.
  • интерфейстер: - «бұрын айтылғандай, егер бірнеше параметр болса, біз оларды төртбұрышты жақшада сипаттаймыз».
  • параметрлер: — параметрді орнату блогын сипаттаңыз
  • режим: — байланыстыру жұмыс істейтін режимді көрсетіңіз.
  • mii-monitor-interval: — бақылау аралығын 1 секундқа орнатыңыз.

Байланыс деп аталатын блоктың ішінде мекенжайлар, шлюз4, маршруттар және т.б. сияқты параметрлерді конфигурациялауға болады.

Біз желіге қосымша қостық, енді орнату ғана қалды vlan және орнату аяқталды деп санауға болады.

vlans: 
    vlan10:
      id: 10
      link: bond0
      dhcp4: no
      addresses: [10.10.10.2/24]
      gateway: 10.10.10.1
      routes:
        - to: 10.10.10.2/24
          via: 10.10.10.1
          on-link: true

  • vlans: — vlan конфигурация блогын жариялау.
  • vlan10: — vlan интерфейсінің ерікті атауы.
  • id: — біздің vlan тегі.
  • сілтеме: — vlan қол жетімді болатын интерфейс.
  • маршруттар: — маршрутты сипаттау блогын жариялау.
  • — үшін: — маршрут қажет мекенжайды/ішкі желіні орнатыңыз.
  • арқылы: — ішкі желіге қол жетімді болатын шлюзді көрсетіңіз.
  • on-link: — сілтеме көтерілген кезде маршруттар әрқашан тіркелуі керек екенін көрсетеміз.

Бос орындарды қалай орналастыратыныма назар аударыңыз; бұл YAML-де өте маңызды.

Осылайша, біз желілік интерфейстерді сипаттадық, байланыстырдық және тіпті вландарды қостық. Конфигурациямызды қолданайық, netplan apply пәрмені біздің конфигурацияда қателерді тексереді және сәтті болса, оны қолданады.Одан кейін жүйе қайта жүктелген кезде конфигурация өздігінен көтеріледі.

Барлық алдыңғы код блоктарын жинап, біз мынаны алдық:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0f0:
      dhcp4: no
    ensp3s0f1:
      dhcp4: no
  bonds:
    bond0:
      dhcp4: no
      interfaces: [enp3s0f0, enp3s0f1]
      parameters: 
        mode: 802.3ad
        mii-monitor-interval: 1
  vlan10:
      id: 10
      link: bond0
      dhcp4: no
      addresses: [10.10.10.2/24]
      routes:
        - to: 10.10.10.2/24
          via: 10.10.10.1
          on-link: true
  vlan20:
    id: 20
    link: bond0
    dhcp4: no
    addresses: [10.10.11.2/24]
    gateway: 10.10.11.1
    nameserver:
      addresses: [8.8.8.8]
    

Енді біздің желі жұмыс істеуге дайын, бәрі бастапқыда көрінгендей қорқынышты емес және код өте әдемі және оқылатын болып шықты. ДК netplan үшін рахмет сілтемеде тамаша нұсқаулық бар https://netplan.io/.

Ақпарат көзі: www.habr.com

DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster