SlideShare a Scribd company logo
1 of 23
Download to read offline
Konrad Rzentarzewski
ng_pop_up.yaml
- czyli jak uruchomić i utrzymać punkt dostępu
z wykorzystaniem narzędzi DevOps
https://github.com/network-automation/linklight
Ansible + Vagrant
+ VyOS
+ EOS
+ Cumulus
komputerowych centrów danych
systemie kontroli wersji
• zapis imperatywny vs. deklaratywny
• odpowiada na pytanie: co? nie: jak?
• peer review
• druga para oczu
• automatyzacja
• dostarczania zmian, alternatywa: nocne okna
• testowania - testy jednostkowe, testy funkcjonalne
• CI pipelines - propagowanie zmian na środowiska
• dobre praktyki programistyczne
• feature branches
• FMEA, Post-mortems
H - f :
f ,
f IT.
H - f :
f ,
f IT.
korporacyjnych
systemów CMDB
dynamicznego
zewnętrznego systemu inwentaryzacji
[root@ansible pySser]# ./pysser.py --list
{
"server4": {
"hosts": [
"10.10.1.6"
],
"vars": {
"cdl_grabbed_by": null,
"cdl_isprod": null
}
},
[...]
}
IOS
ios_command – Run commands on remote devices running Cisco IOS
ios_config – Manage Cisco IOS configuration sections
ios_facts – Collect facts from remote devices running Cisco IOS
ios_l2_interface – Manage Layer-2 interface on Cisco IOS devices.
ios_l3_interface – Manage Layer-3 interfaces on Cisco IOS network devices.
ios_ping – Tests reachability using ping from Cisco IOS network devices
ios_static_route – Manage static IP routes on Cisco IOS network devices
ios_vlan – Manage VLANs on IOS network devices
ios_vrf – Manage the collection of VRF definitions on Cisco IOS devices
JunOS
junos_command – Run arbitrary commands on an Juniper JUNOS device
junos_config – Manage configuration on devices running Juniper JUNOS
junos_facts – Collect facts from remote devices running Juniper Junos
junos_l2_interface – Manage Layer-2 interface on Juniper JUNOS network devices
junos_l3_interface – Manage L3 interfaces on Juniper JUNOS network devices
junos_package – Installs packages on remote devices running Junos
junos_static_route – Manage static IP routes on Juniper JUNOS network devices
junos_vlan – Manage VLANs on Juniper JUNOS network devices
junos_vrf – Manage the VRF definitions on Juniper JUNOS devices
EOS
eos_command – Run arbitrary commands on an Arista EOS device
eos_config – Manage Arista EOS configuration sections
eos_facts – Collect facts from remote devices running Arista EOS
eos_l2_interface – Manage L2 interfaces on Arista EOS network devices.
eos_l3_interface – Manage L3 interfaces on Arista EOS network devices.
eos_static_route – Manage static IP routes on Arista EOS network devices
eos_system – Manage the system attributes on Arista EOS devices
eos_vlan – Manage VLANs on Arista EOS network devices
eos_vrf – Manage VRFs on Arista EOS network devices
NetConf
netconf_config – netconf device configuration
netconf_get – Fetch configuration/state data from NETCONF enabled network devices.
netconf_rpc – Execute operations on NETCONF enabled network devices.
*OS
A10 Aci Aireos Aos Aruba Asa Avi Bigswitch Citrix Cli
Cloudengine Cloudvision Cnos Cumulus Dellos10 Dellos6
Dellos9 Edgeos Enos Eos Exos F5 Files Fortimanager
Fortios Ftd Illumos Interface Ios Iosxr Ironware Junos
Layer2 Layer3 Meraki Netact Netconf Netscaler Netvisor
Nos Nso Nuage Nxos Onyx Opx Ordnance Ovs Panos
Protocol Radware Routeros Routing Slxos Sros System
Voss Vyos
• Inventory, Projekty, Teamy
• RBAC
• Scentralizowane logowanie
• CI Pipelines
• Tryb zgodności
• symulacja przeprowadzanych zmian
• po wcześniejszym wdrożeniu konfiguracji
version: "2"
settings:
conductor:
base: ubuntu:xenial
project_name: lg
services:
looking_glass:
from: "rungeict/looking-glass:latest"
ports:
- 5000:80
restart: always
inventories/
production/
hosts # inventory file for production servers
group_vars/
group1.yml # here we assign variables to particular groups
group2.yml
host_vars/
hostname1.yml # here we assign variables to particular systems
hostname2.yml
staging/
hosts # inventory file for staging environment
group_vars/
group1.yml # here we assign variables to particular groups
group2.yml
host_vars/
stagehost1.yml # here we assign variables to particular systems
stagehost2.yml
• Stały rozwój
• Rozszerzalny
• Integracja dzięki API
• Duża społeczność
• Otwarty kod
• Ustandaryzowany zapis
• Kod jako dokumentacja projektowa
• Czemu by nie spróbować?
Konrad Rzentarzewski
Q&A
Konrad Rzentarzewski

More Related Content

Similar to PLNOG 22 - Konrad Rzentarzewski - ng_pop_up.yaml - czyli jak uruchomić i utrzymać punkt dostępu z wykorzystaniem narzędzi DevOps

PLNOG 13: Adam Heczko: Openstack, Ceph, SDN
PLNOG 13: Adam Heczko: Openstack, Ceph, SDNPLNOG 13: Adam Heczko: Openstack, Ceph, SDN
PLNOG 13: Adam Heczko: Openstack, Ceph, SDNPROIDEA
 
PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)
PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)
PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)PROIDEA
 
100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego. 100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego. Redge Technologies
 
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...Tomasz Kopacz
 
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic Networking
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic NetworkingPLNOG 13: Piotr Jabłoński: First Steps in Autonomic Networking
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic NetworkingPROIDEA
 
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.com
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.comNGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.com
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.comLeszek Mi?
 
PLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDN
PLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDNPLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDN
PLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDNPROIDEA
 
PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...
PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...
PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...PROIDEA
 
Noc informatyka
Noc informatykaNoc informatyka
Noc informatykaOnetIT
 
Programowanie sterowników w Linuksie.
Programowanie sterowników w Linuksie.Programowanie sterowników w Linuksie.
Programowanie sterowników w Linuksie.Semihalf
 
Michał Dec - Quality in Clouds
Michał Dec - Quality in CloudsMichał Dec - Quality in Clouds
Michał Dec - Quality in Cloudskraqa
 
PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...
PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...
PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...PROIDEA
 
Webinar - Podstawy Node.js
Webinar - Podstawy Node.jsWebinar - Podstawy Node.js
Webinar - Podstawy Node.jsWojciech Kaniuka
 
Testowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStackTestowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStackThe Software House
 
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...Michal Furmankiewicz
 
Seminarium .Net CF 2004
Seminarium .Net CF 2004Seminarium .Net CF 2004
Seminarium .Net CF 2004Tomasz Cieplak
 

Similar to PLNOG 22 - Konrad Rzentarzewski - ng_pop_up.yaml - czyli jak uruchomić i utrzymać punkt dostępu z wykorzystaniem narzędzi DevOps (20)

PLNOG 13: Adam Heczko: Openstack, Ceph, SDN
PLNOG 13: Adam Heczko: Openstack, Ceph, SDNPLNOG 13: Adam Heczko: Openstack, Ceph, SDN
PLNOG 13: Adam Heczko: Openstack, Ceph, SDN
 
PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)
PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)
PLNOG 21: Alek Cesarz, Piotr Misiak - Petabajty_z_kosmosu_(serio)
 
100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego. 100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego.
 
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
 
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic Networking
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic NetworkingPLNOG 13: Piotr Jabłoński: First Steps in Autonomic Networking
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic Networking
 
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.com
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.comNGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.com
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.com
 
Ansible w praktyce
Ansible w praktyceAnsible w praktyce
Ansible w praktyce
 
Itad 2016 aspnet core.pptx
Itad 2016   aspnet core.pptxItad 2016   aspnet core.pptx
Itad 2016 aspnet core.pptx
 
PLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDN
PLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDNPLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDN
PLNOG19 - Krzysztof Banel - Nowe modele bezpieczeństwa w sieciach SDN
 
PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...
PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...
PLNOG16: Praktyczne zastosowania technologii SDN w  6 4 2 0 Kolumna 1 Kolumn...
 
Noc informatyka
Noc informatykaNoc informatyka
Noc informatyka
 
Programowanie sterowników w Linuksie.
Programowanie sterowników w Linuksie.Programowanie sterowników w Linuksie.
Programowanie sterowników w Linuksie.
 
Michał Dec - Quality in Clouds
Michał Dec - Quality in CloudsMichał Dec - Quality in Clouds
Michał Dec - Quality in Clouds
 
PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...
PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...
PLNOG22 - Piotr Stolarek - Bezpieczeństwo użytkowania platform usługowych Tel...
 
JavaEE + OSGi
JavaEE + OSGiJavaEE + OSGi
JavaEE + OSGi
 
Webinar - Podstawy Node.js
Webinar - Podstawy Node.jsWebinar - Podstawy Node.js
Webinar - Podstawy Node.js
 
Testowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStackTestowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStack
 
Kickoff to Node.js
Kickoff to Node.jsKickoff to Node.js
Kickoff to Node.js
 
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
 
Seminarium .Net CF 2004
Seminarium .Net CF 2004Seminarium .Net CF 2004
Seminarium .Net CF 2004
 

PLNOG 22 - Konrad Rzentarzewski - ng_pop_up.yaml - czyli jak uruchomić i utrzymać punkt dostępu z wykorzystaniem narzędzi DevOps

  • 1. Konrad Rzentarzewski ng_pop_up.yaml - czyli jak uruchomić i utrzymać punkt dostępu z wykorzystaniem narzędzi DevOps
  • 2.
  • 5. • zapis imperatywny vs. deklaratywny • odpowiada na pytanie: co? nie: jak? • peer review • druga para oczu • automatyzacja • dostarczania zmian, alternatywa: nocne okna • testowania - testy jednostkowe, testy funkcjonalne • CI pipelines - propagowanie zmian na środowiska • dobre praktyki programistyczne • feature branches • FMEA, Post-mortems
  • 6.
  • 7. H - f : f , f IT.
  • 8. H - f : f , f IT.
  • 10. [root@ansible pySser]# ./pysser.py --list { "server4": { "hosts": [ "10.10.1.6" ], "vars": { "cdl_grabbed_by": null, "cdl_isprod": null } }, [...] }
  • 11. IOS ios_command – Run commands on remote devices running Cisco IOS ios_config – Manage Cisco IOS configuration sections ios_facts – Collect facts from remote devices running Cisco IOS ios_l2_interface – Manage Layer-2 interface on Cisco IOS devices. ios_l3_interface – Manage Layer-3 interfaces on Cisco IOS network devices. ios_ping – Tests reachability using ping from Cisco IOS network devices ios_static_route – Manage static IP routes on Cisco IOS network devices ios_vlan – Manage VLANs on IOS network devices ios_vrf – Manage the collection of VRF definitions on Cisco IOS devices
  • 12. JunOS junos_command – Run arbitrary commands on an Juniper JUNOS device junos_config – Manage configuration on devices running Juniper JUNOS junos_facts – Collect facts from remote devices running Juniper Junos junos_l2_interface – Manage Layer-2 interface on Juniper JUNOS network devices junos_l3_interface – Manage L3 interfaces on Juniper JUNOS network devices junos_package – Installs packages on remote devices running Junos junos_static_route – Manage static IP routes on Juniper JUNOS network devices junos_vlan – Manage VLANs on Juniper JUNOS network devices junos_vrf – Manage the VRF definitions on Juniper JUNOS devices
  • 13. EOS eos_command – Run arbitrary commands on an Arista EOS device eos_config – Manage Arista EOS configuration sections eos_facts – Collect facts from remote devices running Arista EOS eos_l2_interface – Manage L2 interfaces on Arista EOS network devices. eos_l3_interface – Manage L3 interfaces on Arista EOS network devices. eos_static_route – Manage static IP routes on Arista EOS network devices eos_system – Manage the system attributes on Arista EOS devices eos_vlan – Manage VLANs on Arista EOS network devices eos_vrf – Manage VRFs on Arista EOS network devices
  • 14. NetConf netconf_config – netconf device configuration netconf_get – Fetch configuration/state data from NETCONF enabled network devices. netconf_rpc – Execute operations on NETCONF enabled network devices.
  • 15. *OS A10 Aci Aireos Aos Aruba Asa Avi Bigswitch Citrix Cli Cloudengine Cloudvision Cnos Cumulus Dellos10 Dellos6 Dellos9 Edgeos Enos Eos Exos F5 Files Fortimanager Fortios Ftd Illumos Interface Ios Iosxr Ironware Junos Layer2 Layer3 Meraki Netact Netconf Netscaler Netvisor Nos Nso Nuage Nxos Onyx Opx Ordnance Ovs Panos Protocol Radware Routeros Routing Slxos Sros System Voss Vyos
  • 16.
  • 17. • Inventory, Projekty, Teamy • RBAC • Scentralizowane logowanie • CI Pipelines • Tryb zgodności • symulacja przeprowadzanych zmian • po wcześniejszym wdrożeniu konfiguracji
  • 18. version: "2" settings: conductor: base: ubuntu:xenial project_name: lg services: looking_glass: from: "rungeict/looking-glass:latest" ports: - 5000:80 restart: always
  • 19. inventories/ production/ hosts # inventory file for production servers group_vars/ group1.yml # here we assign variables to particular groups group2.yml host_vars/ hostname1.yml # here we assign variables to particular systems hostname2.yml staging/ hosts # inventory file for staging environment group_vars/ group1.yml # here we assign variables to particular groups group2.yml host_vars/ stagehost1.yml # here we assign variables to particular systems stagehost2.yml
  • 20.
  • 21. • Stały rozwój • Rozszerzalny • Integracja dzięki API • Duża społeczność • Otwarty kod • Ustandaryzowany zapis • Kod jako dokumentacja projektowa • Czemu by nie spróbować?