เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจ‡เจธ เจฒเฉ‡เจ– เจตเจฟเฉฑเจš, เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเจฟเจ–เจพเจตเจพเจ‚เจ—เจพ เจ•เจฟ เจ•เจฟเจตเฉ‡เจ‚ เจธเจฅเจพเจชเจค เจ•เจฐเจจเจพ เจนเฉˆ เจ“เจชเจจ เจกเฉ‡เจฒเจพเจˆเจŸ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเจพเจœเจผเฉ‹-เจธเจพเจฎเจพเจจ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ, เจ…เจคเฉ‡ เจ‡เจน เจตเฉ€ เจฆเจฟเจ–เจพเจ‰เจฃ เจฒเจˆ เจ•เจฟ เจ•เจฟเจตเฉ‡เจ‚ เจตเจฐเจคเจฃเจพ เจนเฉˆ เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจธเจงเจพเจฐเจจ RESTCONF เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚, เจ‡เจธ เจ‰เจชเจ•เจฐเจฃ เจจเฉ‚เฉฐ เจจเจฟเจฏเฉฐเจคเจฐเจฟเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ. เจ…เจธเฉ€เจ‚ เจนเจพเจฐเจกเจตเฉ‡เจ…เจฐ เจจเจพเจฒ เจ•เฉฐเจฎ เจจเจนเฉ€เจ‚ เจ•เจฐเจพเจ‚เจ—เฉ‡, เจชเจฐ เจ‡เจธ เจฆเฉ€ เจฌเจœเจพเจ เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจธเจฟเฉฐเจ—เจฒ เจฐเจพเจŠเจŸเจฐ เจจเจพเจฒ เจ›เฉ‹เจŸเฉ€เจ†เจ‚ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจคเฉˆเจจเจพเจค เจ•เจฐเจพเจ‚เจ—เฉ‡ Vrnetlab เจตเฉฑเจง เจ‰เจฌเฉฐเจŸเฉ‚ 20.04 LTS.

เจฎเฉˆเจ‚ เจฐเจพเจŠเจŸเจฐ เจฆเฉ€ เจ‰เจฆเจพเจนเจฐเจฃ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจชเจนเจฟเจฒเจพเจ‚ เจตเจฟเจธเจคเฉเจฐเจฟเจค เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ เจฆเจฟเจ–เจพเจตเจพเจ‚เจ—เจพ เจœเฉ‚เจจเฉ€เจชเจฐ vMX 20.1R1.11, เจ…เจคเฉ‡ เจซเจฟเจฐ เจ…เจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจธเฉˆเจŸเจฟเฉฐเจ— เจจเจพเจฒ เจคเฉเจฒเจจเจพ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจธเจฟเจธเจ•เฉ‹ xRV9000 7.0.2.

เจธเจฎเฉฑเจ—เจฐเฉ€

  • เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจ—เจฟเจ†เจจ
  • 1 เจฆเจพ เจนเจฟเฉฑเจธเจพ: เจธเฉฐเจ–เฉ‡เจช เจตเจฟเฉฑเจš เจšเจฐเจšเจพ เจ•เจฐเฉ‹ OpenDaylight (เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ“เจกเฉ€เจเจฒ), เจชเฉ‹เจธเจŸเจฎเฉˆเจจ ะธ Vrnetlab เจ…เจคเฉ‡ เจธเจพเจจเฉ‚เฉฐ เจ‰เจนเจจเจพเจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจ•เจฟเจ‰เจ‚ เจนเฉˆ
  • 2 เจฆเจพ เจนเจฟเฉฑเจธเจพ: เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจฆเจพ เจตเฉ‡เจฐเจตเจพ
  • 3 เจฆเจพ เจนเจฟเฉฑเจธเจพ: เจ…เจจเฉเจ•เฉ‚เจฒเจฟเจค เจ•เจฐเฉ‹ เจ“เจชเจจ เจกเฉ‡เจฒเจพเจˆเจŸ
  • 4 เจฆเจพ เจนเจฟเฉฑเจธเจพ: เจ…เจจเฉเจ•เฉ‚เจฒเจฟเจค เจ•เจฐเฉ‹ Vrnetlab
  • 5 เจฆเจพ เจนเจฟเฉฑเจธเจพ: เจตเจฐเจค เจ•เฉ‡ เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจตเจฐเจšเฉเจ…เจฒ เจฐเจพเจŠเจŸเจฐ เจจเจพเจฒ เจœเฉเฉœเฉ‹ (เจœเฉ‚เจจเฉ€เจชเจฐ vMX) เจจเฉ‚เฉฐ เจ“เจกเฉ€เจเจฒ
  • 6 เจฆเจพ เจนเจฟเฉฑเจธเจพ: เจตเจฐเจค เจ•เฉ‡ เจฐเจพเจŠเจŸเจฐ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจชเฉเจฐเจพเจชเจค เจ•เจฐเฉ‹ เจ…เจคเฉ‡ เจฌเจฆเจฒเฉ‹ เจชเฉ‹เจธเจŸเจฎเฉˆเจจ ะธ เจ“เจกเฉ€เจเจฒ
  • 7 เจฆเจพ เจนเจฟเฉฑเจธเจพ: Cisco xRV9000 เจธเจผเจพเจฎเจฒ เจ•เจฐเฉ‹
  • เจธเจฟเฉฑเจŸเจพ
  • PS
  • เจฌเจฟเจฌเจฒเฉ€เจ“เจ—เฉเจฐเจพเจซเฉ€

เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจ—เจฟเจ†เจจ

เจฒเฉ‡เจ– เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเจผเฉ€เจŸ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃ เจฒเจˆ, เจฎเฉˆเจ‚ เจ•เฉเจ เจคเจ•เจจเฉ€เจ•เฉ€ เจตเฉ‡เจฐเจตเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจ›เฉฑเจก เจฆเจฟเฉฑเจคเจพ เจนเฉˆ (เจธเจพเจนเจฟเจค เจฆเฉ‡ เจฒเจฟเฉฐเจ•เจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจœเจฟเฉฑเจฅเฉ‡ เจคเฉเจธเฉ€เจ‚ เจ‰เจนเจจเจพเจ‚ เจฌเจพเจฐเฉ‡ เจชเฉœเฉเจน เจธเจ•เจฆเฉ‡ เจนเฉ‹)เฅค

เจ‡เจธ เจธเจฌเฉฐเจง เจตเจฟเฉฑเจš, เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ…เจœเจฟเจนเฉ‡ เจตเจฟเจธเจผเจฟเจ†เจ‚ เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเจพเจ‚ เจœเฉ‹ เจชเฉœเฉเจนเจจ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจœเจพเจฃเจจเจพ เจšเฉฐเจ—เจพ (เจชเจฐ เจฒเจ—เจญเจ— เจœเจผเจฐเฉ‚เจฐเฉ€ เจจเจนเฉ€เจ‚) เจนเฉ‹เจตเฉ‡เจ—เจพ:

เจญเจพเจ— 1: เจ•เฉเจ เจธเจฟเจงเจพเจ‚เจค

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

  • เจฆเฉเจ†เจฐเจพ เจธเจฎเจฐเจฅเจฟเจค เจนเจฐ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจจเฉˆเจŸเจตเจฐเจ• เจฆเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ…เจคเฉ‡ เจ†เจŸเฉ‹เจฎเฉˆเจŸเจฟเจ• เจฒเจˆ เจ‡เฉฑเจ• เจ–เฉเฉฑเจฒเจพ SDN เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ เจฒเฉ€เจจเจ•เจธ เจซเจพเจ‰เจ‚เจกเฉ‡เจธเจผเจจ
  • เจ…เฉฐเจฆเจฐ เจœเจพเจตเจพ
  • เจฎเจพเจกเจฒ-เจšเจพเจฒเจฟเจค เจธเฉ‡เจตเจพ เจเจฌเจธเจŸเจฐเฉˆเจ•เจธเจผเจจ เจชเฉฑเจงเจฐ (MD-SAL) 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค
  • เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจกเจฟเจตเจพเจˆเจธเจพเจ‚ เจฒเจˆ เจ†เจชเจฃเฉ‡ เจ†เจช RESTCONF API เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ YANG เจฎเจพเจกเจฒเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจชเฉเจฐเจฌเฉฐเจงเจจ เจฒเจˆ เจฎเฉเฉฑเจ– เจฎเฉ‹เจกเฉ€เจŠเจฒ. เจ‡เจน เจ‡เจธเจฆเฉ‡ เจฆเฉเจ†เจฐเจพ เจนเฉˆ เจ•เจฟ เจ…เจธเฉ€เจ‚ เจ•เจจเฉˆเจ•เจŸ เจ•เฉ€เจคเฉ‡ เจกเจฟเจตเจพเจˆเจธเจพเจ‚ เจจเจพเจฒ เจธเฉฐเจšเจพเจฐ เจ•เจฐเจพเจ‚เจ—เฉ‡. เจ‡เจธ เจฆเฉ‡ เจ†เจชเจฃเฉ‡ API เจฆเฉเจ†เจฐเจพ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค.

เจคเฉเจธเฉ€เจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ เจฌเจพเจฐเฉ‡ เจนเฉ‹เจฐ เจชเฉœเฉเจน เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ‡เฉฑเจฅเฉ‡.

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

  • API เจŸเฉˆเจธเจŸเจฟเฉฐเจ— เจŸเฉ‚เจฒ
  • เจธเจงเจพเจฐเจจ เจ…เจคเฉ‡ เจตเจฐเจคเจฃ เจฒเจˆ เจ†เจธเจพเจจ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ

เจธเจพเจกเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš, เจ…เจธเฉ€เจ‚ OpenDaylight API เจจเฉ‚เฉฐ REST เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจญเฉ‡เจœเจฃ เจฆเฉ‡ เจ‡เฉฑเจ• เจธเจพเจงเจจ เจตเจœเฉ‹เจ‚ เจ‡เจธ เจตเจฟเฉฑเจš เจฆเจฟเจฒเจšเจธเจชเฉ€ เจฐเฉฑเจ–เจฆเฉ‡ เจนเจพเจ‚เฅค เจคเฉเจธเฉ€เจ‚, เจฌเฉ‡เจธเจผเฉฑเจ•, เจนเฉฑเจฅเฉ€เจ‚ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจญเฉ‡เจœ เจธเจ•เจฆเฉ‡ เจนเฉ‹, เจชเจฐ เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจตเจฟเฉฑเจš เจธเจญ เจ•เฉเจ เจฌเจนเฉเจค เจธเจชเฉฑเจธเจผเจŸ เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจธเจพเจกเฉ‡ เจ‰เจฆเฉ‡เจธเจผเจพเจ‚ เจฒเจˆ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ…เจจเฉเจ•เฉ‚เจฒ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค

เจ‰เจนเจจเจพเจ‚ เจฒเจˆ เจœเฉ‹ เจ–เฉเจฆเจพเจˆ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเจจ: เจ‡เจธ เจ‰เฉฑเจคเฉ‡ เจฌเจนเฉเจค เจธเจพเจฐเฉ€ เจธเจฟเจ–เจฒเจพเจˆ เจธเจฎเฉฑเจ—เจฐเฉ€ เจฒเจฟเจ–เฉ€ เจ—เจˆ เจนเฉˆ (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ).

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

  • เจกเฉŒเจ•เจฐ เจตเจฟเฉฑเจš เจตเจฐเจšเฉเจ…เจฒ เจฐเจพเจŠเจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจคเฉˆเจจเจพเจค เจ•เจฐเจจ เจฒเจˆ เจŸเฉ‚เจฒ
  • เจธเจชเฉ‹เจฐเจŸเจธ: เจธเจฟเจธเจ•เฉ‹ XRv, เจœเฉ‚เจจเฉ€เจชเจฐ vMX, Arista vEOS, Nokia VSR, เจ†เจฆเจฟเฅค
  • เจ“เจชเจจ เจธเฉ‹เจฐเจธ

เจ‡เฉฑเจ• เจฌเจนเฉเจค เจนเฉ€ เจฆเจฟเจฒเจšเจธเจช เจชเจฐ เจฌเจนเฉเจค เจ˜เฉฑเจŸ เจœเจพเจฃเจฟเจ† เจธเจพเจงเจจ. เจธเจพเจกเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš, เจ…เจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจจเจฟเจฏเจฎเจค เจ‰เจฌเฉฐเจŸเฉ‚ 9000 LTS 'เจคเฉ‡ Juniper vMX เจ…เจคเฉ‡ Cisco xRV20.04 เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฒเจˆ เจตเจฐเจคเจพเจ‚เจ—เฉ‡เฅค

เจคเฉเจธเฉ€เจ‚ เจ‡เจธ เจฌเจพเจฐเฉ‡ เจนเฉ‹เจฐ เจชเฉœเฉเจน เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจชเฉฐเจจเจพ.

เจญเจพเจ— 2: เจฒเฉˆเจฌ

เจ‡เจธ เจŸเจฟเจŠเจŸเฉ‹เจฐเจฟเจ…เจฒ เจตเจฟเฉฑเจš, เจ…เจธเฉ€เจ‚ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ‡ เจธเจฟเจธเจŸเจฎ เจจเฉ‚เฉฐ เจธเฉˆเจŸ เจ…เจช เจ•เจฐเจพเจ‚เจ—เฉ‡:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจ‡เจน เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ

  • เจœเฉ‚เจจเฉ€เจชเจฐ vMX เจตเจฟเฉฑเจš เจตเจงเจฆเจพ เจนเฉˆ เจกเฉŒเจ•เจฐ เจ•เฉฐเจŸเฉ‡เจจเจฐ (เจธเจพเจงเจจ เจฆเฉเจ†เจฐเจพ Vrnetlab) เจ…เจคเฉ‡ เจธเจญ เจคเฉ‹เจ‚ เจ†เจฎ เจตเจฐเจšเฉเจ…เจฒ เจฐเจพเจŠเจŸเจฐ เจตเจœเฉ‹เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
  • เจ“เจกเฉ€เจเจฒ เจฐเจพเจŠเจŸเจฐ เจจเจพเจฒ เจœเฉเฉœเจฟเจ† เจนเฉˆ เจ…เจคเฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธ เจจเฉ‚เฉฐ เจ•เฉฐเจŸเจฐเฉ‹เจฒ เจ•เจฐเจจ เจฒเจˆ เจธเจนเจพเจ‡เจ• เจนเฉˆเฅค
  • เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ€ เจฎเจธเจผเฉ€เจจ เจคเฉ‡ เจฒเจพเจ‚เจš เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ‡ เจฆเฉเจ†เจฐเจพ เจ…เจธเฉ€เจ‚ เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจญเฉ‡เจœเจฆเฉ‡ เจนเจพเจ‚ เจ“เจกเฉ€เจเจฒ: เจฐเจพเจŠเจŸเจฐ เจจเฉ‚เฉฐ เจ•เจจเฉˆเจ•เจŸ / เจนเจŸเจพเจ‰เจฃ เจฒเจˆ, เจธเฉฐเจฐเจšเจจเจพ เจฌเจฆเจฒเจฃ, เจ†เจฆเจฟเฅค

เจธเจฟเจธเจŸเจฎ เจฆเฉ‡ เจœเฉฐเจคเจฐ 'เจคเฉ‡ เจŸเจฟเฉฑเจชเจฃเฉ€

เจœเฉ‚เจจเฉ€เจชเจฐ vMX ะธ เจ“เจกเฉ€เจเจฒ เจ‰เจนเจจเจพเจ‚ เจฆเฉ‡ เจธเจฅเจฟเจฐ เจธเฉฐเจšเจพเจฒเจจ เจฒเจˆ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจธเจฐเฉ‹เจคเจพเจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• vMX 6 เจœเฉ€เจฌเฉ€ เจฐเฉˆเจฎ เจ…เจคเฉ‡ 4 เจ•เฉ‹เจฐ เจฎเฉฐเจ—เจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจฒเจˆ, เจธเจพเจฐเฉ‡ "เจนเฉˆเจตเฉ€เจตเฉ‡เจŸ" เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ€ เจฎเจธเจผเฉ€เจจ เจตเจฟเฉฑเจš เจฒเจฟเจœเจพเจฃ เจฆเจพ เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€ (Heulett Packard Enterprise MicroServer ProLiant Gen8, Ubuntu 20.04 LTS). เจฐเจพเจŠเจŸเจฐ, เจฌเฉ‡เจธเจผเจ•, เจ‡เจธ 'เจคเฉ‡ "เจ‰เฉฑเจกเจฆเจพ" เจจเจนเฉ€เจ‚ เจนเฉˆ, เจชเจฐ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจ›เฉ‹เจŸเฉ‡ เจชเฉเจฐเจฏเฉ‹เจ—เจพเจ‚ เจฒเจˆ เจ•เจพเจซเจผเฉ€ เจนเฉˆ.

เจญเจพเจ— 3: เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ เจธเฉˆเจŸ เจ…เจช เจ•เจฐเฉ‹

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจ‡เจธ เจฒเจฟเจ–เจค เจฆเฉ‡ เจธเจฎเฉ‡เจ‚ ODL เจฆเจพ เจฎเฉŒเจœเฉ‚เจฆเจพ เจธเฉฐเจธเจ•เจฐเจฃ เจฎเฉˆเจ—เจจเฉ€เจธเจผเฉ€เจ…เจฎ SR1 เจนเฉˆ

1) เจธเจฅเจพเจชเจฟเจค เจ•เจฐเฉ‹ เจœเจพเจตเจพ เจ“เจชเจจเจœเฉ‡เจกเฉ€เจ•เฉ‡ 11 (เจตเจงเฉ‡เจฐเฉ‡ เจตเจฟเจธเจคเฉเจฐเจฟเจค เจ‡เฉฐเจธเจŸเจพเจฒเฉ‡เจธเจผเจจ เจฒเจˆ เจ‡เฉฑเจฅเฉ‡)

ubuntu:~$ sudo apt install default-jdk

2) เจจเจตเฉ€เจจเจคเจฎ เจฌเจฟเจฒเจก เจฒเฉฑเจญเฉ‹ เจ…เจคเฉ‡ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเฉ‹ เจ“เจกเฉ€เจเจฒ เจ‡เฉฑเจฅเฉ‹เจ‚
3) เจกเจพเจ‰เจจเจฒเฉ‹เจก เจ•เฉ€เจคเฉ‡ เจ†เจฐเจ•เจพเจˆเจต เจจเฉ‚เฉฐ เจ…เจจเจœเจผเจฟเจช เจ•เจฐเฉ‹
4) เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ 'เจคเฉ‡ เจœเจพเจ“
5) เจฒเจพเจ‚เจš เจ•เจฐเฉ‹ ./bin/karaf

เจ‡เจธ เจ•เจฆเจฎ 'เจคเฉ‡ เจ“เจกเฉ€เจเจฒ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ…เจธเฉ€เจ‚ เจ†เจชเจฃเฉ‡ เจ†เจช เจจเฉ‚เฉฐ เจ•เฉฐเจธเฉ‹เจฒ เจตเจฟเฉฑเจš เจชเจพเจตเจพเจ‚เจ—เฉ‡ (เจชเฉ‹เจฐเจŸ 8181 เจฌเจพเจนเจฐเฉ‹เจ‚ เจชเจนเฉเฉฐเจš เจฒเจˆ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจœเจฟเจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ…เจธเฉ€เจ‚ เจฌเจพเจ…เจฆ เจตเจฟเฉฑเจš เจ•เจฐเจพเจ‚เจ—เฉ‡)เฅค

เจ…เฉฑเจ—เฉ‡, เจ‡เฉฐเจธเจŸเจพเจฒ เจ•เจฐเฉ‹ ODL เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ NETCONF ะธ RESTCONF. เจ•เฉฐเจธเฉ‹เจฒ เจตเจฟเฉฑเจš เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฒเจˆ เจ“เจกเฉ€เจเจฒ เจ…เจธเฉ€เจ‚ เจšเจฒเจพเจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚:

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

เจ‡เจน เจธเจญ เจคเฉ‹เจ‚ เจธเจฐเจฒ เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจนเฉˆเฅค เจ“เจกเฉ€เจเจฒ เจชเฉ‚เจฐเจพ เจ•เฉ€เจคเจพเฅค (เจตเจงเฉ‡เจฐเฉ‡ เจตเฉ‡เจฐเจตเจฟเจ†เจ‚ เจฒเจˆ, เจตเฉ‡เจ–เฉ‹ เจ‡เฉฑเจฅเฉ‡).

เจญเจพเจ— 4: Vrnetlab เจธเฉˆเจŸ เจ…เจช เจ•เจฐเจจเจพ

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจคเจฟเจ†เจฐเฉ€

เจ‡เฉฐเจธเจŸเจพเจฒเฉ‡เจธเจผเจจ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ 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

Vrnetlab เจ‡เฉฐเจธเจŸเจพเจฒ เจ•เจฐเจจเจพ

เจธเจฅเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ Vrnetlab github เจคเฉ‹เจ‚ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเฉ‚เฉฐ เจ•เจฒเฉ‹เจจ เจ•เจฐเฉ‹:

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

เจฐเจพเจŠเจŸเจฐ เจฆเฉ€ เจ‡เฉฑเจ• เจšเจฟเฉฑเจคเจฐ เจฌเจฃเจพเจ“

เจนเจฐเฉ‡เจ• เจฐเจพเจŠเจŸเจฐ เจœเฉ‹ เจธเจฎเจฐเจฅเจฟเจค เจนเฉˆ Vrnetlab, เจฆเฉ€ เจ†เจชเจฃเฉ€ เจตเจฟเจฒเฉฑเจ–เจฃ เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจตเจฟเจงเฉ€ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจœเฉ‚เจจเฉ€เจชเจฐ vMX เจธเจพเจจเฉ‚เฉฐ เจธเจฟเจฐเจซเจผ เจฐเจพเจŠเจŸเจฐ เจจเจพเจฒ .tgz เจ†เจฐเจ•เจพเจˆเจต เจจเฉ‚เฉฐ เจ…เฉฑเจชเจฒเฉ‹เจก เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ (เจคเฉเจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เจธ เจคเฉ‹เจ‚ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ…เจงเจฟเจ•เจพเจฐเฉ€ เจจเฉ‡ เจธเจพเจˆเจŸ) vmx เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจœเจพเจ“ เจ…เจคเฉ‡ เจ•เจฎเจพเจ‚เจก เจšเจฒเจพเจ“ make:

ubuntu:~$ cd ~/vrnetlab/vmx
ubuntu:~$ # ะšะพะฟะธั€ัƒะตะผ ะฒ ัั‚ัƒ ะดะธั€ะตะบั‚ะพั€ะธัŽ .tgz ะฐั€ั…ะธะฒ ั ั€ะพัƒั‚ะตั€ะพะผ
ubuntu:~$ sudo make

เจ‡เฉฑเจ• เจšเจฟเฉฑเจคเจฐ เจฌเจฃเจพเจ‰เจฃเจพ vMX เจฒเจ—เจญเจ— 10-20 เจฎเจฟเฉฐเจŸ เจฒเฉฑเจ—เจฃเจ—เฉ‡เฅค เจ‡เจน เจ•เฉเจ เจ•เฉŒเจซเฉ€ เจฒเฉˆเจฃ เจฆเจพ เจธเจฎเจพเจ‚ เจนเฉˆ!

เจ‡เฉฐเจจเฉ€ เจฆเฉ‡เจฐ เจ•เจฟเจ‰เจ‚, เจคเฉเจธเฉ€เจ‚ เจชเฉเฉฑเจ›เจฆเฉ‡ เจนเฉ‹?

เจ…เจจเฉเจตเจพเจฆ เจœเจตเจพเจฌ เจ‡เจธ เจธเจตเจพเจฒ เจฆเจพ เจฒเฉ‡เจ–เจ•:

"เจ‡เจน เจ‡เจธ เจฒเจˆ เจนเฉˆ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจœเจฆเฉ‹เจ‚ เจชเจนเจฟเจฒเฉ€ เจตเจพเจฐ VCP (เจ•เฉฐเจŸเจฐเฉ‹เจฒ เจชเจฒเฉ‡เจจ) เจธเจผเฉเจฐเฉ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจน เจ‡เฉฑเจ• เจธเฉฐเจฐเจšเจจเจพ เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ เจชเฉœเฉเจนเจฆเจพ เจนเฉˆ เจœเฉ‹ เจ‡เจน เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉ€ เจ‡เจน vMX เจตเจฟเฉฑเจš VRR VCP เจฆเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡ เจšเฉฑเจฒเฉ‡เจ—เจพเฅค เจชเจนเจฟเจฒเจพเจ‚, เจ‡เจน เจฒเจพเจ‚เจš เจกเฉŒเจ•เจฐ เจธเจŸเจพเจฐเจŸเจ…เฉฑเจช เจฆเฉŒเจฐเจพเจจ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€, เจชเจฐ เจ‡เจธเจฆเจพ เจฎเจคเจฒเจฌ เจธเฉ€ เจ•เจฟ เจตเฉ€.เจธเฉ€.เจชเฉ€. เจตเจฐเจšเฉเจ…เจฒ เจฐเจพเจŠเจŸเจฐ เจฆเฉ‡ เจ‰เจชเจฒเจฌเจง เจนเฉ‹เจฃ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเจฎเฉ‡เจธเจผเจพ เจ‡เฉฑเจ• เจตเจพเจฐ เจฎเฉเฉœ เจšเจพเจฒเฉ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจธเฉ€, เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚ เจ‡เฉฑเจ• เจฒเฉฐเจฌเจพ เจฌเฉ‚เจŸ เจธเจฎเจพเจ‚ (เจฒเจ—เจญเจ— 5 เจฎเจฟเฉฐเจŸ) เจนเฉเจฃ เจตเฉ€เจธเฉ€เจชเฉ€ เจฆเจพ เจชเจนเจฟเจฒเจพ เจฐเจจ เจกเฉŒเจ•เจฐ เจšเจฟเฉฑเจคเจฐ เจฆเฉ‡ เจจเจฟเจฐเจฎเจพเจฃ เจฆเฉŒเจฐเจพเจจ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจกเฉŒเจ•เจฐ เจฌเจฟเจฒเจก เจจเฉ‚เฉฐ - เจจเจพเจฒ เจจเจนเฉ€เจ‚ เจšเจฒเจพเจ‡เจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค -privileged เจตเจฟเจ•เจฒเจช, เจ‡เจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจ•เจฟ 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

vr-vmx เจ•เฉฐเจŸเฉ‡เจจเจฐ เจฒเจพเจ‚เจš เจ•เจฐเฉ‹

เจ…เจธเฉ€เจ‚ เจ•เจฎเจพเจ‚เจก เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚:

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

เจฐเจพเจŠเจŸเจฐ เจจเจพเจฒ เจ•เจจเฉˆเจ•เจŸ เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆ

เจฐเจพเจŠเจŸเจฐ เจฆเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจฆเจพ IP เจเจกเจฐเฉˆเฉฑเจธ เจนเฉ‡เจ  เจฆเจฟเฉฑเจคเฉ€ เจ•เจฎเจพเจ‚เจก เจจเจพเจฒ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ:

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

เจกเจฟเจซเฉŒเจฒเจŸ, Vrnetlab เจฐเจพเจŠเจŸเจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ 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

เจ‡เจน เจฐเจพเจŠเจŸเจฐ เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจจเฉ‚เฉฐ เจชเฉ‚เจฐเจพ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจตเฉฑเจ–-เจตเฉฑเจ– เจตเจฟเจ•เจฐเฉ‡เจคเจพเจตเจพเจ‚ เจฆเฉ‡ เจฐเจพเจŠเจŸเจฐเจพเจ‚ เจฒเจˆ เจธเจฅเจพเจชเจจเจพ เจฆเฉ€เจ†เจ‚ เจธเจฟเจซเจผเจพเจฐเจฟเจธเจผเจพเจ‚ 'เจคเฉ‡ เจฎเจฟเจฒ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจ github เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš.

เจญเจพเจ— 5: เจชเฉ‹เจธเจŸเจฎเฉˆเจจ - เจฐเจพเจŠเจŸเจฐ เจจเฉ‚เฉฐ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ เจจเจพเจฒ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเฉ‹

เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ‡เฉฐเจธเจŸเจพเจฒเฉ‡เจธเจผเจจ

เจ‡เฉฐเจธเจŸเจพเจฒ เจ•เจฐเจจ เจฒเจˆ, เจธเจฟเจฐเจซเจผ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเฉ‹ เจ‡เฉฑเจฅเฉ‹เจ‚.

เจฐเจพเจŠเจŸเจฐ เจจเฉ‚เฉฐ ODL เจจเจพเจฒ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจเจพ

เจ†เจ“ เจฌเจฃเจพเจˆเจ เจชเจพ เจฌเฉ‡เจจเจคเฉ€:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

  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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin. ODL เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจ•เจฐเจจ เจฒเจˆ เจ‡เจน เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจนเฉˆ:
    เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ
  4. เจธเจฟเจฐเจฒเฉ‡เจ– เจŸเฉˆเจฌ 'เจคเฉ‡, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉ‹ เจธเจฟเจฐเจฒเฉ‡เจ– เจœเฉ‹เฉœเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ:
    • เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/xml เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเฉ‹
    • เจธเจฎเฉฑเจ—เจฐเฉ€-เจ•เจฟเจธเจฎ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/xml

เจธเจพเจกเฉ€ เจฌเฉ‡เจจเจคเฉ€ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆเฅค เจ…เจธเฉ€เจ‚ เจญเฉ‡เจœเจฆเฉ‡ เจนเจพเจ‚เฅค เจœเฉ‡ เจธเจญ เจ•เฉเจ เจธเจนเฉ€ เจขเฉฐเจ— เจจเจพเจฒ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€, เจคเจพเจ‚ เจธเจพเจจเฉ‚เฉฐ "201 เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ†" เจธเจฅเจฟเจคเฉ€ เจตเจพเจชเจธ เจ•เจฐเจจเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆ:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจ‡เจน เจฌเฉ‡เจจเจคเฉ€ เจ•เฉ€ เจ•เจฐเจฆเฉ€ เจนเฉˆ?

เจ…เจธเฉ€เจ‚ เจ…เฉฐเจฆเจฐ เจจเฉ‹เจก เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚ เจ“เจกเฉ€เจเจฒ เจ…เจธเจฒ เจฐเจพเจŠเจŸเจฐ เจฆเฉ‡ เจฎเจพเจชเจฆเฉฐเจกเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจ…เจธเฉ€เจ‚ เจเจ•เจธเฉˆเจธ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเจพเจ‚เฅค

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

เจ‡เจน เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจนเจจ XML (XML เจจเฉ‡เจฎเจธเจชเฉ‡เจธ) เจฒเจˆ เจ“เจกเฉ€เจเจฒ เจœเจฟเจธ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจ‡เจน เจจเฉ‹เจก เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค

เจ…เฉฑเจ—เฉ‡, เจ•เฉเจฐเจฎเจตเจพเจฐ, เจฐเจพเจŠเจŸเจฐ เจฆเจพ เจจเจพเจฎ เจนเฉˆ node-id, เจฐเจพเจŠเจŸเจฐ เจชเจคเจพ - เจนเฉ‹เจธเจŸ เจ…เจคเฉ‡ เจ‡เจธ เจคเจฐเจพเจ‚ เจนเฉ€.

เจธเจญ เจคเฉ‹เจ‚ เจฆเจฟเจฒเจšเจธเจช เจฒเจพเจˆเจจ เจ†เจ–เจฐเฉ€ เจนเฉˆ. เจธเจ•เฉ€เจฎเจพ-เจ•เฉˆเจธเจผ-เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจ‡เฉฑเจ• เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจธเจพเจฐเฉ€เจ†เจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจ เจฏเจพเจ‚เจ— เจธเจ•เฉ€เจฎเจพ เจœเฉเฉœเจฟเจ† เจฐเจพเจŠเจŸเจฐ. เจคเฉเจธเฉ€เจ‚ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เจธ เจตเจฟเฉฑเจš เจฒเฉฑเจญ เจธเจ•เจฆเฉ‡ เจนเฉ‹ $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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.

เจ…เจธเฉ€เจ‚ เจญเฉ‡เจœเจฆเฉ‡ เจนเจพเจ‚เฅค "200 เจ เฉ€เจ• เจนเฉˆ" เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจ…เจคเฉ‡ เจกเจฟเจตเจพเจˆเจธ เจฆเฉเจ†เจฐเจพ เจธเจฎเจฐเจฅเจฟเจค เจธเจญ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆ เจฏเจพเจ‚เจ— เจธเจ•เฉ€เจฎเจพ:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจŸเจฟเฉฑเจชเจฃเฉ€: เจฌเจพเจ…เจฆ เจตเจพเจฒเฉ‡ เจจเฉ‚เฉฐ เจตเฉ‡เจ–เจฃ เจฒเจˆ, เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš เจซเจพเจ‚เจธเฉ€ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจฒเจ—เจญเจ— 10 เจฎเจฟเฉฐเจŸ เจ‰เจกเฉ€เจ• เจ•เจฐเจจเฉ€ เจœเจผเจฐเฉ‚เจฐเฉ€ เจธเฉ€ เจชเจพเจธเจญ เจคเฉฑเจ• เจฏเจพเจ‚เจ— เจธเจ•เฉ€เจฎเจพ 'เจคเฉ‡ เจ…เจจเจฒเฉ‹เจก เจ“เจกเฉ€เจเจฒ. เจ‡เจธ เจฌเจฟเฉฐเจฆเฉ‚ เจคเฉฑเจ•, เจœเจฆเฉ‹เจ‚ เจ‡เจน เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจ•เจฐเจฆเฉ‡ เจนเจจ GET เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจนเฉ‡เจ  เจฒเจฟเจ–เฉ‡ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเฉ‡เจ—เฉ€:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจฐเจพเจŠเจŸเจฐ เจจเฉ‚เฉฐ เจฎเจฟเจŸเจพเจ“

เจ†เจ“ เจฌเจฃเจพเจˆเจ เจฎเจฟเจŸเจพ เจฌเฉ‡เจจเจคเฉ€:

  1. เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจธเจคเจฐ:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. เจ…เจงเจฟเจ•เจพเจฐเจค เจŸเฉˆเจฌ 'เจคเฉ‡, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจธเฉˆเฉฑเจŸ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ Basic Auth เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.

เจญเจพเจ— 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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.

เจ…เจธเฉ€เจ‚ เจญเฉ‡เจœเจฆเฉ‡ เจนเจพเจ‚เฅค "200 OK" เจธเจฅเจฟเจคเฉ€ เจ…เจคเฉ‡ เจฐเจพเจŠเจŸเจฐ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆ:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจ‡เฉฑเจ• เจธเฉฐเจฐเจšเจจเจพ เจฌเจฃเจพเจ“

เจ‡เฉฑเจ• เจ‰เจฆเจพเจนเจฐเจจ เจฆเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡, เจ†เจ“ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจธเฉฐเจฐเจšเจจเจพ เจฌเจฃเจพเจˆเจ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจธเฉ‹เจงเฉ€เจ:

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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.
  4. เจธเจฟเจฐเจฒเฉ‡เจ– เจŸเฉˆเจฌ 'เจคเฉ‡, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉ‹ เจธเจฟเจฐเจฒเฉ‡เจ– เจœเฉ‹เฉœเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ:
    • เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/xml เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเฉ‹
    • เจธเจฎเฉฑเจ—เจฐเฉ€-เจ•เจฟเจธเจฎ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/xml

เจญเฉ‡เจœเจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ "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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.

เจฌเฉ‡เจจเจคเฉ€ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ…เจธเฉ€เจ‚ เจนเฉ‡เจ  เจฒเจฟเจ–เจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจพเจ‚เจ—เฉ‡:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจธเฉฐเจฐเจšเจจเจพ เจฌเจฆเจฒเฉ‹

เจ†เจ‰ เจฌเฉ€เจœเฉ€เจชเฉ€ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฌเจฆเจฒเฉ€เจเฅค เจธเจพเจกเฉ€เจ†เจ‚ เจ•เจพเจฐเจตเจพเจˆเจ†เจ‚ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ‡เจน เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเจฟเจ–เจพเจˆ เจฆเฉ‡เจตเฉ‡เจ—เจพ:

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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.
  4. เจธเจฟเจฐเจฒเฉ‡เจ– เจŸเฉˆเจฌ 'เจคเฉ‡, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉ‹ เจธเจฟเจฐเจฒเฉ‡เจ– เจœเฉ‹เฉœเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ:
    • เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/xml เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเฉ‹
    • เจธเจฎเฉฑเจ—เจฐเฉ€-เจ•เจฟเจธเจฎ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/xml

เจชเจฟเจ›เจฒเฉ‡ เจตเจฐเจค เจ•เฉ‡ GET เจฌเฉ‡เจจเจคเฉ€, เจ…เจธเฉ€เจ‚ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจตเฉ‡เจ–เจฆเฉ‡ เจนเจพเจ‚:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจฎเจฟเจŸเจพเจ“

เจ†เจ“ เจฌเจฃเจพเจˆเจ เจฎเจฟเจŸเจพ เจฌเฉ‡เจจเจคเฉ€:

  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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.

เจœเจฆเฉ‹เจ‚ เจฌเฉเจฒเจพเจ‡เจ† เจ—เจฟเจ† GET เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจฌเฉ‡เจจเจคเฉ€ เจ•เจฐเฉ‹, เจ…เจธเฉ€เจ‚ เจนเฉ‡เจ  เจฒเจฟเจ–เจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจพเจ‚เจ—เฉ‡:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจตเจงเฉ€เจ•:

เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจฌเจฆเจฒเจฃ เจฒเจˆ, เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจฌเฉ‡เจจเจคเฉ€ เจฌเจพเจกเฉ€ เจจเฉ‚เฉฐ เจญเฉ‡เจœเจฃเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจจเจนเฉ€เจ‚ เจนเฉˆ XML. เจ‡เจน เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจตเฉ€ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ JSON.

เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฒเจˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจตเจฟเฉฑเจš เจชเจพ เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจฌเจฆเจฒเจฃ เจฒเจˆ, เจฌเฉ‡เจจเจคเฉ€ เจฌเจพเจกเฉ€ เจจเฉ‚เฉฐ เจ‡เจธ เจจเจพเจฒ เจฌเจฆเจฒเฉ‹:

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

เจธเจฟเจฐเจฒเฉ‡เจ– เจŸเฉˆเจฌ 'เจคเฉ‡ เจธเจฟเจฐเจฒเฉ‡เจ–เจพเจ‚ เจจเฉ‚เฉฐ เจ‡เจธ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃเจพ เจจเจพ เจญเฉเฉฑเจฒเฉ‹:

  • เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/json เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเฉ‹
  • เจธเจฎเฉฑเจ—เจฐเฉ€-เจ•เจฟเจธเจฎ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/json

เจญเฉ‡เจœเจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจธเจพเจจเฉ‚เฉฐ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเจพ เจจเจคเฉ€เจœเจพ เจฎเจฟเจฒเฉ‡เจ—เจพ (เจ…เจธเฉ€เจ‚ เจ‡เจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจœเจตเจพเจฌ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจฆเฉ‡ เจนเจพเจ‚ GET เจฌเฉ‡เจจเจคเฉ€):

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจญเจพเจ— 7: Cisco xRV9000 เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจเจพ

เจ…เจธเฉ€เจ‚ เจธเจพเจฐเฉ‡ เจœเฉ‚เจจเฉ€เจชเจฐ เจฌเจพเจฐเฉ‡ เจ•เฉ€ เจนเจพเจ‚, เจนเจพเจ‚ เจœเฉ‚เจจเฉ€เจชเจฐ? เจ†เจ“ Cisco เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เจฐเฉ€เจ!
เจฎเฉˆเจจเฉ‚เฉฐ xRV9000 เจธเฉฐเจธเจ•เจฐเจฃ 7.0.2 (เจ‡เฉฑเจ• เจœเจพเจจเจตเจฐ เจœเจฟเจธเจจเฉ‚เฉฐ 8Gb RAM เจ…เจคเฉ‡ 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

ssh เจฐเจพเจนเฉ€เจ‚ เจœเฉเฉœเฉ‹:

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 เจจเจพเจฒ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจธเจฎเจพเจจ เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจธเจพเจจเฉ‚เฉฐ เจธเจฟเจฐเจซเจผ เจจเจพเจ‚ เจฌเจฆเจฒเจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค
เจชเจพ เจฌเฉ‡เจจเจคเฉ€:
เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจฅเฉ‹เฉœเฉเจนเฉ€ เจฆเฉ‡เจฐ เจฌเจพเจ…เจฆ เจ•เจพเจฒ เจ•เจฐเฉ‹ GET เจ‡เจน เจœเจพเจ‚เจš เจ•เจฐเจจ เจฒเจˆ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจ•เจฐเฉ‹ เจ•เจฟ เจธเจญ เจ•เฉเจ เจœเฉเฉœเจฟเจ† เจนเฉ‹เจ‡เจ† เจนเฉˆ:
เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจธเฉฐเจฐเจšเจจเจพ เจฌเจฆเจฒเฉ‹

เจ†เจ“ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจธเฉˆเจŸ เจ…เจช เจ•เจฐเฉ€เจ:

!
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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.
  4. เจธเจฟเจฐเจฒเฉ‡เจ– เจŸเฉˆเจฌ 'เจคเฉ‡, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉ‹ เจธเจฟเจฐเจฒเฉ‡เจ– เจœเฉ‹เฉœเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ:
    • เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/json เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเฉ‹
    • เจธเจฎเฉฑเจ—เจฐเฉ€-เจ•เจฟเจธเจฎ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ/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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.

เจเจ—เจœเจผเฉ€เจ•เจฟเจŠเจธเจผเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจน เจฆเฉ‡เจ–เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ:

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ, เจชเฉ‹เจธเจŸเจฎเฉˆเจจ เจ…เจคเฉ‡ เจตเจฐเจจเฉ‡เจŸเจฒเฉˆเจฌ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจชเฉเจฐเจฏเฉ‹เจ—เจธเจผเจพเจฒเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจˆเจ

เจธเฉฐเจฐเจšเจจเจพ เจตเจฐเจคเจฃ เจจเฉ‚เฉฐ เจนเจŸเจพเจ‰เจฃ เจฒเจˆ เจฎเจฟเจŸเจพ:

  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 เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก: admin/admin.

เจธเจฟเฉฑเจŸเจพ

เจ•เฉเฉฑเจฒ เจฎเจฟเจฒเจพ เจ•เฉ‡, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจฆเฉ‡เจ–เจฟเจ† เจนเฉ‹เจตเฉ‡เจ—เจพ, เจธเจฟเจธเจ•เฉ‹ เจ…เจคเฉ‡ เจœเฉ‚เจจเฉ€เจชเจฐ เจจเฉ‚เฉฐ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ เจจเจพเจฒ เจœเฉ‹เฉœเจจ เจฆเฉ€เจ†เจ‚ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจตเฉฑเจ–เจฐเฉ€เจ†เจ‚ เจจเจนเฉ€เจ‚ เจนเจจ - เจ‡เจน เจฐเจšเจจเจพเจคเจฎเจ•เจคเจพ เจฒเจˆ เจ•เจพเจซเจผเฉ€ เจตเจฟเจธเจผเจพเจฒ เจ—เฉเฉฐเจœเจพเจ‡เจธเจผ เจ–เฉ‹เจฒเฉเจนเจฆเจพ เจนเฉˆ. เจธเจพเจฐเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ•เฉฐเจชเฉ‹เจจเฉˆเจ‚เจŸเจธ เจฆเฉ‡ เจธเฉฐเจฐเจšเจจเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจคเฉ‹เจ‚ เจธเจผเฉเจฐเฉ‚ เจนเฉ‹ เจ•เฉ‡ เจ…เจคเฉ‡ เจคเฉเจนเจพเจกเฉ€เจ†เจ‚ เจ†เจชเจฃเฉ€เจ†เจ‚ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจธเจฟเจฐเจœเจฃเจพ เจฆเฉ‡ เจจเจพเจฒ เจ–เจคเจฎ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค
เจ‡เจธ เจŸเจฟเจŠเจŸเฉ‹เจฐเจฟเจ…เจฒ เจตเจฟเฉฑเจš, เจฎเฉˆเจ‚ เจธเจญ เจคเฉ‹เจ‚ เจธเจฐเจฒ เจ‰เจฆเจพเจนเจฐเจฃเจพเจ‚ เจฆเจฟเฉฑเจคเฉ€เจ†เจ‚ เจนเจจ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ‰เจชเจ•เจฐเจฃเจพเจ‚ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจ‡เฉฐเจŸเจฐเฉˆเจ•เจŸ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจฌเจฟเจจเจพเจ‚ เจธเจผเฉฑเจ•, เจ‰เจชเจฐเฉ‹เจ•เจค เจ‰เจฆเจพเจนเจฐเจจเจพเจ‚ เจฆเฉ‡ เจธเจตเจพเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจฌเจฃเจพเจ‡เจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจฎเจพเจŠเจธ เจฆเฉ‡ เจ‡เฉฑเจ• เจ•เจฒเจฟเฉฑเจ• เจจเจพเจฒ เจธเจฎเฉเฉฑเจšเฉ€เจ†เจ‚ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฅเจพเจชเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ - เจธเจญ เจ•เฉเจ เจธเจฟเจฐเจซ เจคเฉเจนเจพเจกเฉ€ เจ•เจฒเจชเจจเจพ เจฆเฉเจ†เจฐเจพ เจธเฉ€เจฎเจฟเจค เจนเฉˆ *

เจจเฉ‚เฉฐ เจœเจพเจฐเฉ€ เจฐเฉฑเจ–เจฟเจ† เจœเจพเจตเฉ‡เจ—เจพโ€ฆ

PS

เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจ…เจšเจพเจจเจ• เจ‡เจน เจธเจญ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจœเจพเจฃเจฆเฉ‡ เจนเฉ‹ เจœเจพเจ‚, เจ‡เจธเจฆเฉ‡ เจ‰เจฒเจŸ, ODL เจฆเฉ€ เจฐเฉ‚เจน เจตเจฟเฉฑเจš เจกเฉเฉฑเจฌ เจ—เจ เจนเฉ‹, เจคเจพเจ‚ เจฎเฉˆเจ‚ ODL เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ 'เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจตเจฟเจ•เจธเจค เจ•เจฐเจจ เจตเฉฑเจฒ เจงเจฟเจ†เจจ เจฆเฉ‡เจฃ เจฆเฉ€ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เจฐเจฆเจพ เจนเจพเจ‚. เจคเฉเจธเฉ€เจ‚ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ‡เฉฑเจฅเฉ‹เจ‚.

เจธเจซเจฒ เจชเฉเจฐเจฏเฉ‹เจ—!

เจนเจตเจพเจฒเฉ‡

  1. Vrnetlab: KVM เจ…เจคเฉ‡ Docker เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจพเจ‚ เจฆเฉ€ เจจเจ•เจฒ เจ•เจฐเฉ‹ / เจฌเฉเจฐเจพเจ‡เจจ เจฒเจฟเฉฐเจ•เจฒเฉˆเจŸเจฐ
  2. เจ“เจชเจจเจกเฉ‡เจฒเจพเจˆเจŸ เจ•เฉเฉฑเจ•เจฌเฉเฉฑเจ• / เจฎเฉˆเจฅเฉ€เจฏเฉ‚ เจฒเฉ‡เจฎเฉ‡, เจ…เจฒเฉˆเจ•เจธเจฟเจธ เจกเฉ€ เจคเจฒเจนเฉŒเจŸ, เจเจŸ เจ…เจฒ
  3. YANG / Benoit Claise, Loe Clark, Jan Lindblad เจฆเฉ‡ เจจเจพเจฒ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเฉ‡เจฌเจฟเจฒเจŸเฉ€
  4. XML เจธเจฟเฉฑเจ–เจฃเจพ, เจฆเฉ‚เจœเจพ เจเจกเฉ€เจธเจผเจจ / เจเจฐเจฟเจ• เจŸเฉ€. เจฐเฉ‡
  5. เจชเฉเจฐเจญเจพเจตเจธเจผเจพเจฒเฉ€ DevOps / เจœเฉˆเจจเฉ€เจซเจฐ เจกเฉ‡เจตเจฟเจธ, Ryn Daniels

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹