рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рд╕реЗрдЯ рдЕрдк рдХрд┐рдпрд╛ рдЬрд╛рдП рдУрдкрдирдбреЗрд▓рд╛рдЗрдЯ рдиреЗрдЯрд╡рд░реНрдХ рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рдпрд╣ рднреА рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ рдкреЛрд╕реНрдЯрдореИрди рдФрд░ рд╕рд░рд▓ рд░реЗрд╕реНрдЯрдХреЛрдирдл рдЕрдиреБрд░реЛрдз, рдЗрд╕ рдЙрдкрдХрд░рдг рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдо рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рдмрд▓реНрдХрд┐ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣рдо рдПрдХ рд░рд╛рдЙрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЫреЛрдЯреА рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛рдУрдВ рдХреЛ рддреИрдирд╛рдд рдХрд░реЗрдВрдЧреЗ рд╡реГрдиреЗрдЯрд▓реИрдм рд╢реАрд░реНрд╖ рдкрд░ рдЙрдмреБрдВрдЯреВ 20.04 рдПрд▓рдЯреАрдПрд╕.

рдореИрдВ рд░рд╛рдЙрдЯрд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд╣рд▓реЗ рд╡рд┐рд╕реНрддреГрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдЬреБрдирд┐рдкрд░ рд╡реАрдПрдордПрдХреНрд╕ 20.1R1.11, рдФрд░ рдлрд┐рд░ рд╣рдо рдЗрд╕рдХреА рддреБрд▓рдирд╛ рд╕реЗрдЯрд┐рдВрдЧ рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ рд╕рд┐рд╕реНрдХреЛ xRV9000 7.0.2.

рд╕рд╛рдордЧреНрд░реА

  • рдЖрд╡рд╢реНрдпрдХ рдЬреНрдЮрд╛рди
  • ╨з╨░╤Б╤В╤М 1: рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВ рдУрдкрдирдбреЗрд▓рд╛рдЗрдЯ (рдЗрд╕рдХреЗ рдмрд╛рдж рдУрдбреАрдПрд▓), рдкреЛрд╕реНрдЯрдореИрди ╨╕ рд╡реГрдиреЗрдЯрд▓реИрдм рдФрд░ рд╣рдореЗрдВ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ
  • ╨з╨░╤Б╤В╤М 2: рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рд╡рд┐рд╡рд░рдг
  • ╨з╨░╤Б╤В╤М 3: рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ рдУрдкрдирдбреЗрд▓рд╛рдЗрдЯ
  • ╨з╨░╤Б╤В╤М 4: рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ рд╡реГрдиреЗрдЯрд▓реИрдм
  • ╨з╨░╤Б╤В╤М 5: рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреЛрд╕реНрдЯрдореИрди рд╡рд░реНрдЪреБрдЕрд▓ рд░рд╛рдЙрдЯрд░ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ (рдЬреБрдирд┐рдкрд░ рд╡реАрдПрдордПрдХреНрд╕) рд╕реЗрд╡рд╛ рдУрдбреАрдПрд▓
  • ╨з╨░╤Б╤В╤М 6: рд░рд╛рдЙрдЯрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдмрджрд▓реЗрдВ рдкреЛрд╕реНрдЯрдореИрди ╨╕ рдУрдбреАрдПрд▓
  • ╨з╨░╤Б╤В╤М 7: рд╕рд┐рд╕реНрдХреЛ xRV9000 рдЬреЛрдбрд╝реЗрдВ
  • рдирд┐рд╖реНрдХрд░реНрд╖
  • рдкреБрдирд╢реНрдЪ
  • рдЧреНрд░рдиреНрдерд╕реВрдЪреА

рдЖрд╡рд╢реНрдпрдХ рдЬреНрдЮрд╛рди

рд▓реЗрдЦ рдХреЛ рд╢реАрдЯ рдореЗрдВ рди рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдХреБрдЫ рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ (рд╕рд╛рд╣рд┐рддреНрдп рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдЬрд╣рд╛рдВ рдЖрдк рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ)ред

рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рдЙрди рд╡рд┐рд╖рдпреЛрдВ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдкрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЬрд╛рдирдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ (рд▓реЗрдХрд┐рди рд▓рдЧрднрдЧ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ):

рднрд╛рдЧ 1: рдХреБрдЫ рд╕рд┐рджреНрдзрд╛рдВрдд

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

  • рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдкреНрд░рдмрдВрдзрди рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЦреБрд▓рд╛ рдПрд╕рдбреАрдПрди рдордВрдЪ рд▓рд┐рдирдХреНрд╕ рдлрд╛рдЙрдВрдбреЗрд╢рди
  • рдЬрд╛рд╡рд╛ рдЕрдВрджрд░
  • рдореЙрдбрд▓-рд╕рдВрдЪрд╛рд▓рд┐рдд рд╕реЗрд╡рд╛ рдЕрдореВрд░реНрдд рд╕реНрддрд░ (MD-SAL) рдкрд░ рдЖрдзрд╛рд░рд┐рдд
  • рдиреЗрдЯрд╡рд░реНрдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ RESTCONF API рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП YANG рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдореЙрдбреНрдпреВрд▓ред рдЗрд╕рдХреЗ рдЬрд░рд┐рдП рд╣реА рд╣рдо рдХрдиреЗрдХреНрдЯреЗрдб рдбрд┐рд╡рд╛рдЗрд╕реЗрдЬ рд╕реЗ рдХрдореНрдпреВрдирд┐рдХреЗрдЯ рдХрд░реЗрдВрдЧреЗред рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рддред

рдЖрдк OpenDaylight рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣рд╛рдВ.

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

  • рдПрдкреАрдЖрдИ рдкрд░реАрдХреНрд╖рдг рдЙрдкрдХрд░рдг
  • рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рдФрд░ рдЖрд╕рд╛рди

рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо OpenDaylight API рдХреЛ REST рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреЗ рд╕рд╛рдзрди рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдЖрдк рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдиреБрд░реЛрдз рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреЛрд╕реНрдЯрдореИрди рдореЗрдВ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рджрд┐рдЦрддрд╛ рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рдЙрдкрдпреБрдХреНрдд рд╣реИред

рдЬреЛ рдЦреЛрджрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЙрдирдХреЗ рд▓рд┐рдП: рдЗрд╕ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╕рд╛рдордЧреНрд░реА рд▓рд┐рдЦреА рдЧрдИ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдпреЗ).

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

  • рдбреЙрдХрд░ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рд░рд╛рдЙрдЯрд░ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреВрд▓
  • рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ: рд╕рд┐рд╕реНрдХреЛ XRv, рдЬреБрдирд┐рдкрд░ vMX, Arista vEOS, Nokia VSR, рдЖрджрд┐ред
  • рдореБрдХреНрдд рд╕реНрд░реЛрдд

рдПрдХ рдмрд╣реБрдд рд╣реА рд░реЛрдЪрдХ рд▓реЗрдХрд┐рди рдЕрд▓реНрдкрдЬреНрдЮрд╛рдд рд╕рд╛рдзрдиред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рдпрдорд┐рдд рдЙрдмрдВрдЯреВ 9000 рдПрд▓рдЯреАрдПрд╕ рдкрд░ рдЬреБрдирд┐рдкрд░ рд╡реАрдПрдордПрдХреНрд╕ рдФрд░ рд╕рд┐рд╕реНрдХреЛ рдПрдХреНрд╕рдЖрд░рд╡реА20.04 рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░реЗрдВрдЧреЗред

рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреЗрдЬ.

рднрд╛рдЧ 2: рд▓реИрдм

рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

╨Ъ╨░╨║ ╤Н╤В╨╛ ╤А╨░╨▒╨╛╤В╨░╨╡╤В

  • рдЬреБрдирд┐рдкрд░ рд╡реАрдПрдордПрдХреНрд╕ рдореЗрдВ рдЙрдЧрддрд╛ рд╣реИ рдбрд╛рдХ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗрд╡рд╛рд▓рд╛ рдордЬрд╝рджреВрд░ рдХрдВрдЯреЗрдирд░ (рдорддрд▓рдм рд╡реГрдиреЗрдЯрд▓реИрдм) рдФрд░ рд╕рдмрд╕реЗ рдЖрдо рд╡рд░реНрдЪреБрдЕрд▓ рд░рд╛рдЙрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред
  • рдУрдбреАрдПрд▓ рд░рд╛рдЙрдЯрд░ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
  • рдкреЛрд╕реНрдЯрдореИрди рдПрдХ рдЕрд▓рдЧ рдорд╢реАрди рдкрд░ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рдо рдХрдорд╛рдВрдб рднреЗрдЬрддреЗ рд╣реИрдВ рдУрдбреАрдПрд▓: рд░рд╛рдЙрдЯрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ / рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓реЗрдВ, рдЖрджрд┐ред

рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЙрдкрдХрд░рдг рдкрд░ рдЯрд┐рдкреНрдкрдгреА

рдЬреБрдирд┐рдкрд░ рд╡реАрдПрдордПрдХреНрд╕ ╨╕ рдУрдбреАрдПрд▓ рдЙрдирдХреЗ рд╕реНрдерд┐рд░ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдХреЗрд╡рд▓ рдПрдХ рд╡реАрдПрдордПрдХреНрд╕ 6 рдЬреАрдмреА рд░реИрдо рдФрд░ 4 рдХреЛрд░ рдорд╛рдВрдЧрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕рднреА "рд╣реИрд╡реАрд╡реЗрдЯ" рдХреЛ рдПрдХ рдЕрд▓рдЧ рдорд╢реАрди рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ (рд╣реНрдпреВрд▓реЗрдЯ рдкреИрдХрд░реНрдб рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд░ рдкреНрд░реЛрд▓рд┐рдПрдВрдЯ рдЬреЗрди8, рдЙрдмрдВрдЯреВ 20.04 рдПрд▓рдЯреАрдПрд╕). рд░рд╛рдЙрдЯрд░, рдмреЗрд╢рдХ, рдЙрд╕ рдкрд░ "рдЙрдбрд╝рд╛рди" рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рджрд░реНрд╢рди рдЫреЛрдЯреЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред

рднрд╛рдЧ 3: рдУрдкрдирдбреЗрд▓рд╛рдЗрдЯ рд╕реЗрдЯ рдЕрдк рдХрд░реЗрдВ

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд╕рдордп ODL рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдореИрдЧреНрдиреАрд╢рд┐рдпрдо SR1 рд╣реИ

1) рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдЬрд╛рд╡рд╛ рдУрдкрдирдЬреЗрдбреАрдХреЗ 11 (рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ)

ubuntu:~$ sudo apt install default-jdk

2) рдирд╡реАрдирддрдо рдмрд┐рд▓реНрдб рдХреЛ рдвреВрдВрдвреЗрдВ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдУрдбреАрдПрд▓ рдЕрдд:
3) рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рдЖрд░реНрдХрд╛рдЗрд╡ рдХреЛ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВ
4) рдкрд░рд┐рдгрд╛рдореА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрд░ рдЬрд╛рдПрдВ
5) рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ ./bin/karaf

рдЗрд╕ рдХрджрдо рдкрд░ рдУрдбреАрдПрд▓ рд╢реБрд░реВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╣рдо рдЦреБрдж рдХреЛ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкрд╛рдПрдВрдЧреЗ (рдкреЛрд░реНрдЯ 8181 рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд╛рд╣рд░ рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдмрд╛рдж рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ)ред

рдЕрдЧрд▓рд╛, рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдУрдбреАрдПрд▓ рд╕реБрд╡рд┐рдзрд╛рдПрдБрдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдиреЗрдЯрдХреЙрдиреНрдл ╨╕ рд░реЗрд╕реНрдЯрдХреЛрдирдл. рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдВрд╕реЛрд▓ рдореЗрдВ рдУрдбреАрдПрд▓ рд╣рдо рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:

opendaylight-user@root> feature:install odl-netconf-topology odl-restconf-all

рдпрд╣ рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╕реЗрдЯрдЕрдк рд╣реИред рдУрдбреАрдПрд▓ рдкреБрд░рд╛ рд╣реЛрдирд╛ред (рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ рдпрд╣рд╛рдВ).

рднрд╛рдЧ 4: рд╡рд░реНрдиреЗрдЯрд▓реИрдм рдХреА рд╕реНрдерд╛рдкрдирд╛

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдкреНрд░рдгрд╛рд▓реА рдХреА рддреИрдпрд╛рд░реА

рд╕реНрдерд╛рдкрдирд╛ рд╕реЗ рдкрд╣рд▓реЗ рд╡реГрдиреЗрдЯрд▓реИрдм рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЬреИрд╕реЗ рдХрд┐ рдбрд╛рдХ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗрд╡рд╛рд▓рд╛ рдордЬрд╝рджреВрд░, Git, Sshpass:

ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt -y install python3-bs4 sshpass make
ubuntu:~$ sudo apt -y install git
ubuntu:~$ sudo apt install -y 
    apt-transport-https ca-certificates 
    curl gnupg-agent software-properties-common
ubuntu:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
ubuntu:~$ sudo add-apt-repository 
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu 
   $(lsb_release -cs) 
   stable"
ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt install -y docker-ce docker-ce-cli containerd.io

рд╡рд░реНрдиреЗрдЯрд▓реИрдм рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рд╡реГрдиреЗрдЯрд▓реИрдм рдЬреАрдердм рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░реЗрдВ:

ubuntu:~$ cd ~
ubuntu:~$ git clone https://github.com/plajjan/vrnetlab.git

рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдЬрд╛рдПрдВ vrnetlab:

ubuntu:~$ cd ~/vrnetlab

рдпрд╣рд╛рдВ рдЖрдк рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рднреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рд░рд╛рдЙрдЯрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдмрдВрдзрд┐рдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ:

ubuntu:~/vrnetlab$ ls
CODE_OF_CONDUCT.md  config-engine-lite        openwrt           vr-bgp
CONTRIBUTING.md     csr                       routeros          vr-xcon
LICENSE             git-lfs-repo.sh           sros              vrnetlab.sh
Makefile            makefile-install.include  topology-machine  vrp
README.md           makefile-sanity.include   veos              vsr1000
ci-builder-image    makefile.include          vmx               xrv
common              nxos                      vqfx              xrv9k

рд░рд╛рдЙрдЯрд░ рдХреА рдПрдХ рдЫрд╡рд┐ рдмрдирд╛рдПрдВ

рдкреНрд░рддреНрдпреЗрдХ рд░рд╛рдЙрдЯрд░ рдЬреЛ рд╕рдорд░реНрдерд┐рдд рд╣реИ рд╡реГрдиреЗрдЯрд▓реИрдм, рдХреА рдЕрдкрдиреА рдЕрдиреВрдареА рд╕реЗрдЯрдЕрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдХрдм рдЬреБрдирд┐рдкрд░ рд╡реАрдПрдордПрдХреНрд╕ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рд░рд╛рдЙрдЯрд░ рдХреЗ рд╕рд╛рде .tgz рд╕рдВрдЧреНрд░рд╣ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЖрдк рдЗрд╕реЗ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ) vmx рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдФрд░ рдЖрджреЗрд╢ рдЪрд▓рд╛рдПрдБ make:

ubuntu:~$ cd ~/vrnetlab/vmx
ubuntu:~$ # ╨Ъ╨╛╨┐╨╕╤А╤Г╨╡╨╝ ╨▓ ╤Н╤В╤Г ╨┤╨╕╤А╨╡╨║╤В╨╛╤А╨╕╤О .tgz ╨░╤А╤Е╨╕╨▓ ╤Б ╤А╨╛╤Г╤В╨╡╤А╨╛╨╝
ubuntu:~$ sudo make

рдПрдХ рдЫрд╡рд┐ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╡реАрдПрдордПрдХреНрд╕ рд▓рдЧрднрдЧ 10-20 рдорд┐рдирдЯ рд▓рдЧреЗрдВрдЧреЗред рдпрд╣ рдХреБрдЫ рдХреЙрдлреА рд▓реЗрдиреЗ рдЬрд╛рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ!

рдЗрддрдирд╛ рд▓рдВрдмрд╛ рдХреНрдпреЛрдВ, рддреБрдо рдкреВрдЫрддреЗ рд╣реЛ?

рдЕрдиреБрд╡рд╛рдж рдЙрддреНрддрд░ рдЗрд╕ рдкреНрд░рд╢реНрди рдХреЗ рд▓реЗрдЦрдХ:

"рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкрд╣рд▓реА рдмрд╛рд░ рд╡реАрд╕реАрдкреА (рдХрдВрдЯреНрд░реЛрд▓ рдкреНрд▓реЗрди) рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдкрдврд╝рддрд╛ рд╣реИ рдЬреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡реАрдПрдордПрдХреНрд╕ рдореЗрдВ рд╡реАрдЖрд░рдЖрд░ рд╡реАрд╕реАрдкреА рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓реЗрдЧрд╛ред рдкрд╣рд▓реЗ, рдпрд╣ рд▓реЙрдиреНрдЪ рдбреЙрдХрд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рджреМрд░рд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдерд╛ рдХрд┐ рд╡реАрд╕реАрдкреА рд╡рд░реНрдЪреБрдЕрд▓ рд░рд╛рдЙрдЯрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рдореЗрд╢рд╛ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рдЪрд╛рд▓реВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдПрдХ рд▓рдВрдмрд╛ рдмреВрдЯ рд╕рдордп (рд▓рдЧрднрдЧ 5 рдорд┐рдирдЯ) рдерд╛ред -рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╡рд┐рдХрд▓реНрдк, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ qemu KVM рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рддреНрд╡рд░рдг рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди, рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЙрдЧ рдЖрдЙрдЯрдкреБрдЯ рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд▓рдВрдмрд╛ рдирд┐рд░реНрдорд╛рдг рдЗрддрдирд╛ рдбрд░рд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдПрдХ рдмрд╛рд░ рдЫрд╡рд┐ рдмрдирд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдХрдИ рд▓реЙрдиреНрдЪ рдХрд░рддреЗ рд╣реИрдВред"

рдХреЗ рдмрд╛рдж рдЖрдк рд╣рдорд╛рд░реЗ рд░рд╛рдЙрдЯрд░ рдХреА рдЫрд╡рд┐ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдбрд╛рдХ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗрд╡рд╛рд▓рд╛ рдордЬрд╝рджреВрд░:

ubuntu:~$ sudo docker image list
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
vrnetlab/vr-vmx     20.1R1.11           b1b2369b453c        3 weeks ago         4.43GB
debian              stretch             614bb74b620e        7 weeks ago         101MB

рд╡реАрдЖрд░-рд╡реАрдПрдордПрдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ

рд╣рдо рдХрдорд╛рдВрдб рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ:

ubuntu:~$ sudo docker run -d --privileged --name jun01 b1b2369b453c

рдЕрдЧрд▓рд╛, рд╣рдо рд╕рдХреНрд░рд┐рдп рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:

ubuntu:~$ sudo docker container list
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS                                                 NAMES
120f882c8712        b1b2369b453c        "/launch.py"        2 minutes ago       Up 2 minutes (unhealthy)   22/tcp, 830/tcp, 5000/tcp, 10000-10099/tcp, 161/udp   jun01

рд░рд╛рдЙрдЯрд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛

рд░рд╛рдЙрдЯрд░ рдХреЗ рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдЖрдИрдкреА рдкрддрд╛ рдирд┐рдореНрди рдЖрджреЗрд╢ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

ubuntu:~$ sudo docker inspect --format '{{.NetworkSettings.IPAddress}}' jun01
172.17.0.2

рдЧрд▓рддреА рдХрд░рдирд╛, рд╡реГрдиреЗрдЯрд▓реИрдм рд░рд╛рдЙрдЯрд░ рдкрд░ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рддрд╛ рд╣реИ vrnetlab/VR-netlab9.
рд╕реЗ рдЬреБрдбрд╝ рд░рд╣рд╛ рд╣реИ ssh:

ubuntu:~$ ssh [email protected]
The authenticity of host '172.17.0.2 (172.17.0.2)' can't be established.
ECDSA key fingerprint is SHA256:g9Sfg/k5qGBTOX96WiCWyoJJO9FxjzXYspRoDPv+C0Y.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '172.17.0.2' (ECDSA) to the list of known hosts.
Password:
--- JUNOS 20.1R1.11 Kernel 64-bit  JNPR-11.0-20200219.fb120e7_buil
vrnetlab> show version
Model: vmx
Junos: 20.1R1.11

рдпрд╣ рд░рд╛рдЙрдЯрд░ рд╕реЗрдЯрдЕрдк рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИред

рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рдХреЗ рд░рд╛рдЙрдЯрд░ рдХреЗ рд▓рд┐рдП рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЕрдиреБрд╢рдВрд╕рд╛рдПрдВ рдпрд╣рд╛рдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ рдЬреАрдердм рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдВрдмрдВрдзрд┐рдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВред

рднрд╛рдЧ 5: рдкреЛрд╕реНрдЯрдореИрди - рд░рд╛рдЙрдЯрд░ рдХреЛ OpenDaylight рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ

рдбрд╛рдХрд┐рдпрд╛ рд╕реНрдерд╛рдкрдирд╛

рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдЕрдд:.

рд░рд╛рдЙрдЯрд░ рдХреЛ ODL рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ рдбрд╛рд▓ рдЕрдиреБрд░реЛрдз:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. рдЕрдиреБрд░реЛрдз рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ (рдмреЙрдбреА рдЯреИрдм):
    <node xmlns="urn:TBD:params:xml:ns:yang:network-topology">
    <node-id>jun01</node-id>
    <host xmlns="urn:opendaylight:netconf-node-topology">172.17.0.2</host>
    <port xmlns="urn:opendaylight:netconf-node-topology">22</port>
    <username xmlns="urn:opendaylight:netconf-node-topology">vrnetlab</username>
    <password xmlns="urn:opendaylight:netconf-node-topology">VR-netlab9</password>
    <tcp-only xmlns="urn:opendaylight:netconf-node-topology">false</tcp-only>
    <schema-cache-directory xmlns="urn:opendaylight:netconf-node-topology">jun01_cache</schema-cache-directory>
    </node>
  3. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред ODL рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ:
    рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ
  4. рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рджреЛ рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЬреЛрдбрд╝рдиреЗ рд╣реЛрдВрдЧреЗ:
    • рдЖрд╡реЗрджрди/рдПрдХреНрд╕рдПрдордПрд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
    • рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди/рдПрдХреНрд╕рдПрдордПрд▓

рд╣рдорд╛рд░рд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рдо рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВред рдЕрдЧрд░ рд╕рдм рдХреБрдЫ рдареАрдХ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рд╣рдореЗрдВ "201 рдмрдирд╛рдпрд╛ рдЧрдпрд╛" рд╕реНрдерд┐рддрд┐ рд╡рд╛рдкрд╕ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдпрд╣ рдЕрдиреБрд░реЛрдз рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ?

рд╣рдо рдЕрдВрджрд░ рдиреЛрдб рдмрдирд╛рддреЗ рд╣реИрдВ рдУрдбреАрдПрд▓ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░рд╛рдЙрдЯрд░ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рд╣рдо рдПрдХреНрд╕реЗрд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

xmlns="urn:TBD:params:xml:ns:yang:network-topology"
xmlns="urn:opendaylight:netconf-node-topology"

рдпреЗ рдЖрдВрддрд░рд┐рдХ рдирд╛рдорд╕реНрдерд╛рди рд╣реИрдВ рдПрдХреНрд╕рдПрдордПрд▓ (рдПрдХреНрд╕рдПрдордПрд▓ рдиреЗрдорд╕реНрдкреЗрд╕) рдХреЗ рд▓рд┐рдП рдУрдбреАрдПрд▓ рдЬрд┐рд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдпрд╣ рдиреЛрдб рдмрдирд╛рддрд╛ рд╣реИред

рдЖрдЧреЗ рдХреНрд░рдорд╢: рд░рд╛рдКрдЯрд░ рдХрд╛ рдирд╛рдо рд╣реИ рдиреЛрдб-рдЖрдИрдбреА, рд░рд╛рдЙрдЯрд░ рдХрд╛ рдкрддрд╛ - рдореЗрдЬрдмрд╛рди рдФрд░ рдЗрд╕реА рддрд░рд╣ред

рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рд▓рд╛рдЗрди рдЖрдЦрд┐рд░реА рд╣реИред рд╕реНрдХреАрдорд╛-рдХреИрд╢-рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдБ рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рддреА рд╣реИрдВ рдпрд╛рдВрдЧ рд╕реНрдХреАрдорд╛ рдХрдиреЗрдХреНрдЯреЗрдб рд░рд╛рдЙрдЯрд░ред рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрдВрджрд░ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ $ODL_ROOT/cache/jun01_cache.

рд░рд╛рдЙрдЯрд░ рдХреЗ рдХрдиреЗрдХреНрд╢рди рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ GET рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред

рд╣рдо рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВред "200 рдУрдХреЗ" рдХреА рд╕реНрдерд┐рддрд┐ рдФрд░ рдбрд┐рд╡рд╛рдЗрд╕ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╕рднреА рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдпрд╛рдВрдЧ рд╕реНрдХреАрдорд╛:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдЯрд┐рдкреНрдкрдгреА: рдмрд╛рдж рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдмрд╛рдж рд▓рдЧрднрдЧ 10 рдорд┐рдирдЯ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдЬрд░реВрд░реА рдерд╛ рдбрд╛рд▓рд╕рднреА рддрдХ рдпрд╛рдВрдЧ рд╕реНрдХреАрдорд╛ рдЕрдирд▓реЛрдб рдХрд░реЗрдВ рдУрдбреАрдПрд▓. рдЗрд╕ рдмрд┐рдВрджреБ рддрдХ, рдЗрд╕реЗ рдХрд░рддреЗ рд╕рдордп GET рдХреНрд╡реЗрд░реА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧреА:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рд░рд╛рдЙрдЯрд░ рдХреЛ рдорд┐рдЯрд╛ рджреЗрдВ

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ рд╣рдЯрд╛рдПрдБ рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред

рднрд╛рдЧ 6: рд░реВрдЯрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓реЗрдВ

рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ GET рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/
  2. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред

рд╣рдо рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВред рд╕реНрдерд┐рддрд┐ "200 OK" рдФрд░ рд░рд╛рдЙрдЯрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдмрдирд╛рдПрдБ

рдЙрджрд╛рд╣рд░рдг рдХреЗ рддреМрд░ рдкрд░, рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ:

protocols {
    bgp {
        disable;
        shutdown;
    }
}

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ рдкреЛрд╕реНрдЯ рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. рдЕрдиреБрд░реЛрдз рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ (рдмреЙрдбреА рдЯреИрдм):
    <bgp xmlns="http://yang.juniper.net/junos/conf/protocols">
    <disable/>
    <shutdown>
    </shutdown>
    </bgp>
  3. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред
  4. рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рджреЛ рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЬреЛрдбрд╝рдиреЗ рд╣реЛрдВрдЧреЗ:
    • рдЖрд╡реЗрджрди/рдПрдХреНрд╕рдПрдордПрд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
    • рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди/рдПрдХреНрд╕рдПрдордПрд▓

рднреЗрдЬрдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдиреНрд╣реЗрдВ "204 рдХреЛрдИ рд╕рд╛рдордЧреНрд░реА рдирд╣реАрдВ" рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП

рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдЖрдк рдкрд┐рдЫрд▓реА рдХреНрд╡реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдФрд░ рдПрдХ рдмрдирд╛рдПрдВрдЧреЗ рдЬреЛ рдХреЗрд╡рд▓ рд░рд╛рдЙрдЯрд░ рдкрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛ред

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ GET рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред

рдЕрдиреБрд░реЛрдз рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦреЗрдВрдЧреЗ:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓реЗрдВ

рдЖрдЗрдП рдмреАрдЬреАрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдмрджрд▓рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рдж, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

protocols {
    bgp {
        disable;
    }
}

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ рдбрд╛рд▓ рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. рдЕрдиреБрд░реЛрдз рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ (рдмреЙрдбреА рдЯреИрдм):
    <protocols xmlns="http://yang.juniper.net/junos/conf/protocols">
    <bgp>
        <disable/>
    </bgp>
    </protocols>
  3. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред
  4. рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рджреЛ рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЬреЛрдбрд╝рдиреЗ рд╣реЛрдВрдЧреЗ:
    • рдЖрд╡реЗрджрди/рдПрдХреНрд╕рдПрдордПрд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
    • рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди/рдПрдХреНрд╕рдПрдордПрд▓

рдкрд┐рдЫрд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ GET рдЕрдиреБрд░реЛрдз, рд╣рдо рдкрд░рд┐рд╡рд░реНрддрди рджреЗрдЦрддреЗ рд╣реИрдВ:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣рдЯрд╛рдПрдВ

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ рд╣рдЯрд╛рдПрдБ рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред

рдЬрдм рдмреБрд▓рд╛рдпрд╛ рдЧрдпрд╛ GET рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦреЗрдВрдЧреЗ:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдЕрдиреБрдкреВрд░рдХ:

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдиреБрд░реЛрдз рдирд┐рдХрд╛рдп рдХреЛ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рднреЗрдЬрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ рдПрдХреНрд╕рдПрдордПрд▓. рдпрд╣ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ JSON.

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреНрд╡реЗрд░реА рдореЗрдВ рдбрд╛рд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдиреБрд░реЛрдз рдирд┐рдХрд╛рдп рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рдмрджрд▓реЗрдВ:

{
    "junos-conf-protocols:protocols": {
        "bgp": {
            "description" : "Changed in postman" 
        }
    }
}

рд╣реЗрдбрд░ рдЯреИрдм рдкрд░ рд╣реЗрдбрд░ рдХреЛ рдЗрд╕рдореЗрдВ рдмрджрд▓рдирд╛ рди рднреВрд▓реЗрдВ:

  • рдЖрд╡реЗрджрди/рдЬреЗрд╕рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
  • рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди/json

рднреЗрдЬрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ (рд╣рдо рдЙрддреНрддрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЗрдЦрддреЗ рд╣реИрдВ GET рдЕрдиреБрд░реЛрдз):

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рднрд╛рдЧ 7: рд╕рд┐рд╕реНрдХреЛ xRV9000 рдХреЛ рдЬреЛрдбрд╝рдирд╛

рд╣рдо рд╕рдм рдЬреБрдирд┐рдкрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИрдВ, рд╣рд╛рдБ рдЬреБрдирд┐рдкрд░? рд╕рд┐рд╕реНрдХреЛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ!
рдореБрдЭреЗ xRV9000 рд╕рдВрд╕реНрдХрд░рдг 7.0.2 рдорд┐рд▓рд╛ (рдПрдХ рдЬрд╛рдирд╡рд░ рдЬрд┐рд╕реЗ 8 рдЬреАрдмреА рд░реИрдо рдФрд░ 4 рдХреЛрд░ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдпрд╣ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВ рд╕рд┐рд╕реНрдХреЛ) - рдЪрд▓реЛ рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВред

рдПрдХ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реИ

рдбреЙрдХрдЯрд░ рдХрдВрдЯреЗрдирд░ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЬреБрдирд┐рдкрд░ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИред рдЗрд╕реА рддрд░рд╣, рд╣рдо .qcow2 рдлрд╝рд╛рдЗрд▓ рдХреЛ рд░рд╛рдЙрдЯрд░ рдХреЗ рд╕рд╛рде рдЙрд╕рдХреЗ рдирд╛рдо рдХреЗ рдЕрдиреБрд░реВрдк рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЫреЛрдбрд╝рддреЗ рд╣реИрдВ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, xrv9k) рдФрд░ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ make docker-image.

рдХреБрдЫ рдорд┐рдирдЯреЛрдВ рдХреЗ рдмрд╛рдж, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЫрд╡рд┐ рдмрдирд╛рдИ рдЧрдИ рд╣реИ:

ubuntu:~$ sudo docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
vrnetlab/vr-xrv9k   7.0.2               54debc7973fc        4 hours ago         1.7GB
vrnetlab/vr-vmx     20.1R1.11           b1b2369b453c        4 weeks ago         4.43GB
debian              stretch             614bb74b620e        7 weeks ago         101MB

рд╣рдо рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ:

ubuntu:~$ sudo docker run -d --privileged --name xrv01 54debc7973fc

рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рд╣реЛ рдЧрдпрд╛ рд╣реИ:

ubuntu:~$ sudo docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                 PORTS                                                      NAMES
058c5ecddae3        54debc7973fc        "/launch.py"        4 hours ago         Up 4 hours (healthy)   22/tcp, 830/tcp, 5000-5003/tcp, 10000-10099/tcp, 161/udp   xrv01

рдПрд╕рдПрд╕рдПрдЪ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ:

ubuntu@ubuntu:~$ ssh [email protected]
Password:

RP/0/RP0/CPU0:ios#show version
Mon Jul  6 12:19:28.036 UTC
Cisco IOS XR Software, Version 7.0.2
Copyright (c) 2013-2020 by Cisco Systems, Inc.

Build Information:
 Built By     : ahoang
 Built On     : Fri Mar 13 22:27:54 PDT 2020
 Built Host   : iox-ucs-029
 Workspace    : /auto/srcarchive15/prod/7.0.2/xrv9k/ws
 Version      : 7.0.2
 Location     : /opt/cisco/XR/packages/
 Label        : 7.0.2

cisco IOS-XRv 9000 () processor
System uptime is 3 hours 22 minutes

рд░рд╛рдЙрдЯрд░ рдХреЛ OpenDaylight рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛

рдЬреЛрдбрд╝рдирд╛ vMX рдХреЗ рд╕рд╛рде рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╕реЗ рд╣реЛрддрд╛ рд╣реИред рд╣рдореЗрдВ рд╕рд┐рд░реНрдл рдирд╛рдо рдмрджрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рдбрд╛рд▓ рдЕрдиреБрд░реЛрдз:
рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдХреЙрд▓ рдХрд░реЗрдВ GET рдХреНрд╡реЗрд░реА рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╕рдм рдХреБрдЫ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ:
рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓реЗрдВ

рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:

!
router ospf LAB
 mpls ldp auto-config
!

рдЪрд▓рд┐рдП рдмрдирд╛рддреЗ рд╣реИрдВ рдкреЛрд╕реНрдЯ рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. рдЕрдиреБрд░реЛрдз рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ (рдмреЙрдбреА рдЯреИрдм):
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред
  4. рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рджреЛ рд╢реАрд░реНрд╖рд▓реЗрдЦ рдЬреЛрдбрд╝рдиреЗ рд╣реЛрдВрдЧреЗ:
    • рдЖрд╡реЗрджрди/рдЬреЗрд╕рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
    • рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди/json

рдЗрд╕рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдмрд╛рдж, рдЙрдиреНрд╣реЗрдВ "204 рдХреЛрдИ рд╕рд╛рдордЧреНрд░реА рдирд╣реАрдВ" рдХрд╛ рджрд░реНрдЬрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдореЗрдВ рдХреНрдпрд╛ рдорд┐рд▓рд╛ред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдмрдирд╛рдПрдВрдЧреЗ GET рдЕрдиреБрд░реЛрдз:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред

рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдпрд╛ OpenDaylight, Postman рдФрд░ Vrnetlab рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЙрдкрдпреЛрдЧ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдЯрд╛рдПрдБ:

  1. рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреИрдм рдкрд░, рдЖрдкрдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ Basic Auth рдФрд░ рд▓реЙрдЧрд┐рди/рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ/рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред

рдирд┐рд╖реНрдХрд░реНрд╖

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рджреЗрдЦрд╛ рд╣реЛрдЧрд╛, рд╕рд┐рд╕реНрдХреЛ рдФрд░ рдЬреБрдирд┐рдкрд░ рдХреЛ OpenDaylight рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИрдВ - рдпрд╣ рд░рдЪрдирд╛рддреНрдордХрддрд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд╡реНрдпрд╛рдкрдХ рдЧреБрдВрдЬрд╛рдЗрд╢ рдЦреЛрд▓рддреА рд╣реИред рд╕рднреА рдиреЗрдЯрд╡рд░реНрдХ рдШрдЯрдХреЛрдВ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рдФрд░ рдЖрдкрдХреА рдЕрдкрдиреА рдиреЗрдЯрд╡рд░реНрдХ рдиреАрддрд┐рдпреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдирд╛ред
рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ, рдореИрдВрдиреЗ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рд╣реИрдВ рдХрд┐ рдЖрдк OpenDaylight рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдиреЗрдЯрд╡рд░реНрдХ рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рд╢рдХ рдХреЗ рдмрд┐рдирд╛, рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдорд╛рдЙрд╕ рдХреЗ рдПрдХ рдХреНрд▓рд┐рдХ рдХреЗ рд╕рд╛рде рд╕рдВрдкреВрд░реНрдг рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рд╕рдм рдХреБрдЫ рдХреЗрд╡рд▓ рдЖрдкрдХреА рдХрд▓реНрдкрдирд╛ рд╕реЗ рд╣реА рд╕реАрдорд┐рдд рд╣реИ *

рдХреЛ рдЬрд╛рд░реА рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ ...

рдкреБрдирд╢реНрдЪ

рдпрджрд┐ рдЖрдк рдЕрдЪрд╛рдирдХ рдпрд╣ рд╕рдм рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ рдпрд╛, рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдУрдбреАрдПрд▓ рдХреА рдЖрддреНрдорд╛ рд╕реЗ рдЧреБрдЬрд░реЗ рд╣реИрдВ рдФрд░ рдбреВрдм рдЧрдП рд╣реИрдВ, рддреЛ рдореИрдВ рдУрдбреАрдПрд▓ рдирд┐рдпрдВрддреНрд░рдХ рдкрд░ рд╡рд┐рдХрд╛рд╕рд╢реАрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдУрд░ рджреЗрдЦрдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред рдЖрдк рдкреНрд░рд╛рд░рдВрдн рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЕрдд:.

рд╕рдлрд▓ рдкреНрд░рдпреЛрдЧ!

рд╕рдиреНрджрд░реНрдн

  1. Vrnetlab: KVM рдФрд░ Docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░реЗрдВ / рдмреНрд░рд╛рдпрди рд▓рд┐рдВрдХрд▓реЗрдЯрд░
  2. рдУрдкрдирдбреЗрд▓рд╛рдЗрдЯ рдХреБрдХрдмреБрдХ / рдореИрдереНрдпреВ рд▓реЗрдореЗ, рдПрд▓реЗрдХреНрд╕рд┐рд╕ рдбреА рддрд▓рд╣реМрдПрдЯ, рдПрдЯ рдЕрд▓
  3. рдпрд╛рдВрдЧ / рдмреЗрдиреЛрдЗрдЯ рдХреНрд▓реЗрдЬрд╝, рд▓реЛ рдХреНрд▓рд╛рд░реНрдХ, рдЬрд╛рди рд▓рд┐рдВрдбрдмреНрд▓реИрдб рдХреЗ рд╕рд╛рде рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдмрд┐рд▓рд┐рдЯреА
  4. рд▓рд░реНрдирд┐рдВрдЧ рдПрдХреНрд╕рдПрдордПрд▓, рджреВрд╕рд░рд╛ рд╕рдВрд╕реНрдХрд░рдг / рдПрд░рд┐рдХ рдЯреА рд░реЗ
  5. рдкреНрд░рднрд╛рд╡реА DevOps / рдЬреЗрдирд┐рдлрд░ рдбреЗрд╡рд┐рд╕, рд░реЗрди рдбреЗрдирд┐рдпрд▓

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ