Upgrade to Pro — share decks privately, control downloads, hide ads and more …

監視網ルータにSONiCを採用して機器更改してみた

 監視網ルータにSONiCを採用して機器更改してみた

SONiC Workshop Japan 2024
https://sonic.connpass.com/event/313138/
監視網ルータにSONiCを採用して機器更改してみた
NTTPCコミュニケーションズ 浅田、矢葺

Tweet

More Decks by SONiC Users Group Japan

Other Decks in Technology

Transcript

  1. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 1 監視網ルータにSONiCを採用して機器更改してみた (導入経緯と保守運用目線から気付いたこと) SONiC Workshop Japan 2024 2024年5月24日 ㈱NTTPCコミュニケーションズ 浅田 隆弘 矢葺 光佑
  2. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 2 2 【自己紹介】 ▪浅田 隆弘(あさだ たかひろ) ・㈱NTTPCコミュニケーションズ テクノロジー&オペレーション開発本部 カスタマサービス部 開発運用担当 ・1998年4月入社 NW設計・構築に従事 ・ダイアルアップやモバイル等のリモートアクセスサービス ・企業向けVPNサービスMaster'sONE (IP-VPN) 2017年4月~ NW保守・運用に従事 ・故障対応等の保守運用業務を行いながら、ホワイボックスSW等の 設計運用構築。 趣味:登山、旅行、写真など。 ▪矢葺 光佑(やぶき こうすけ) ・㈱NTTPCコミュニケーションズ テクノロジー&オペレーション開発本部 カスタマサービス部 開発運用担当 ・2006年4月入社 レンタルサーバーサービス運営 その後、文教案件導入・運用エンジニア、セキュリティサービス運営など ・2020年8月~ 保守・運用に従事 サービス品質の測定・可視化や運用自動化等に従事 趣味:海外旅行
  3. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 3 3 【 SONiC導入経緯】 ▪2017年 弊社商用バックボーンにて大規模な故障が発生 ・商用経路と監視経路が同一経路だったため機器にアクセスができずに通信断時間⾧期化 対策として、監視と制御専用NWの構築を検討開始 ▪2018年 監視制御網(1期)を構築 監視網ということで、安価であり、NWベンダー機器(OS)とは違う面白いことができるかも?って 目的もありホワイトボックスSW+OSSを選択 ※しかし導入が精一杯でなにも面白いことはできず。。。ただ、安定運用はしています。 ▪2023年 導入から6年機器老朽化、ポート不足、設定自動化の推進の観点から機器更改の検討開始 ・hard,os両面検討 ・安価であること ・サードパーティーのSPFが利用できること ・HW保証が⾧いこと ・購入ベンダーの技術サポートが手厚いこと ・Ansible等のオーケストレータと親和性が高いOSでこと(実績があること) →比較検討した結果、ベンダーから、ecSonicを推奨 AS5835-54X OS:version-ec202111_575 AS4625-54T OS:version-ec202111_499(今後導入予定) 現在、AS5835-54Xは、商用に導入開始済み(現在順次更改中)
  4. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 4 4 【導入検証時に、保守対応している目線からの困ったことがあった】 ※これ、本日参加されている皆様はどのように対応しているのでしょうか?
  5. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 5 ①今回導入したecSonic 、物理ポート番号と論理ポート番号がズレて表示される ※実際の機器前面に書いてるポート番号とログやtrapで表示されるポート番号がズレて表示 【syslog】 INFO lldp#lldpmgrd[49]: Port name Ethernet9 oper status: down NOTICE swss#portmgrd: :- doTask: Configure Ethernet9 MTU to 9100 NOTICE swss#orchagent: :- doPortTask: Set port Ethernet9 admin status to up NOTICE swss#portsyncd: :- onMsg: nlmsg type:16 key:Ethernet9 admin:1 oper:0 addr:e4:9d:73:9c:e2:4b ifindex:76 master:0 NOTICE swss#portmgrd: :- doTask: Configure Ethernet9 admin status to up NOTICE swss#portsyncd: :- onMsg: Publish Ethernet9(ok:down) to state db Ethernet10に接続しているケーブルを抜いた時 にsyslogやsnmp-trap上だと、 Ethernet9と表示される ifnameとifDescrの値がズレている [nttpc@vpn-test-server ~]$ snmpwalk -v 2c -c public 10.1.8.2 IF-MIB::ifName IF-MIB::ifName.1 = STRING: Eth1(Port1) IF-MIB::ifName.2 = STRING: Eth2(Port2) IF-MIB::ifName.3 = STRING: Eth3(Port3) IF-MIB::ifName.4 = STRING: Eth4(Port4) [nttpc@vpn-test-server ~]$ snmpwalk -v 2c -c public 10.1.8.2 IF-MIB::ifDescr IF-MIB::ifDescr.1 = STRING: Ethernet0 IF-MIB::ifDescr.2 = STRING: Ethernet1 IF-MIB::ifDescr.3 = STRING: Ethernet2 IF-MIB::ifDescr.4 = STRING: Ethernet3 実際にmib情報を見てみると。。
  6. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 6 6 改修スクリプト適応後の表示 ※NMS上でも表示は改善(該当のポート番号が表示されるようになりました) [nttpc@vpn-test-server ~]$ snmpwalk -v 2c -c public 10.1.8.3 IF-MIB:ifName IF-MIB::ifName.2 = STRING: Eth1(Port1) IF-MIB::ifName.3 = STRING: Eth2(Port2) IF-MIB::ifName.4 = STRING: Eth3(Port3) IF-MIB::ifName.5 = STRING: Eth4(Port4) IF-MIB::ifName.6 = STRING: Eth5(Port5) [nttpc@vpn-test-server ~]$ snmpwalk -v 2c -c public 10.1.8.3 IF-MIB:ifDescr IF-MIB::ifDescr.2 = STRING: Ethernet1 IF-MIB::ifDescr.3 = STRING: Ethernet2 IF-MIB::ifDescr.4 = STRING: Ethernet3 IF-MIB::ifDescr.5 = STRING: Ethernet4 ベンダー(APRESIA Systems様)が迅速に開発して、提供して頂いた改修スクリプトを当てることで改善
  7. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 7 7 ②ポートをshutしても光出力が落ちない!! ※以前弊社で導入している他の機器で、shutdownコマンド入れたにもかかわらず、光の出力が落ちずに、それが原因で 大きな故障に発展した事があり、機器導入時に必ず確認することになっています。 admin@kanshi-core01-snc:~$ show interfaces transceiver eeprom -d Ethernet7 Ethernet7: SFP EEPROM detected Application Advertisement: N/A Connector: LC DOM Capability: 省略 SONET Compliance Codes: Unknown: 0 Vendor Date Code(YYYY-MM-DD Lot): 2022-11-10 Vendor Name: FINISAR CORP. Vendor OUI: 00-90-65 Vendor PN: FTLX8574D3BCL Vendor Rev: A Vendor SN: N8GE4U9 MonitorData: RXPower: -2.358238676096693dBm TXBias: 6.004mA TXPower: -2.6520017041115302dBm Temperature: 31.531C Vcc: 3.299Volts ThresholdData: admin@kanshi-core01-snc:~$ show interfaces transceiver eeprom -d Ethernet7 Ethernet7: SFP EEPROM detected Application Advertisement: N/A Connector: LC DOM Capability: 省略 SONET Compliance Codes: Unknown: 0 Vendor Date Code(YYYY-MM-DD Lot): 2022-11-10 Vendor Name: FINISAR CORP. Vendor OUI: 00-90-65 Vendor PN: FTLX8574D3BCL Vendor Rev: A Vendor SN: N8GE4U9 MonitorData: RXPower: -2.388241868442686dBm TXBias: 0.0mA TXPower: -infdBm Temperature: 31.312C Vcc: 3.304Volts ThresholdData: TempHighAlarm : 78.0C 標準なIF shutコマンドのみ 標準なIF shutコマンドのみ+スクリプト実行
  8. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 8 8 光遮断コマンド作成 /sys/bus/i2c/devices/3-006*/module_tx_disable_*に値を書き込む事で 起動中は反映できる情報は頂いたのですが・・・ ・処理をコマンド化したい ・再起動時にも反映させたい ・設定情報を管理したい $ sudo sfp_tx_onoff.sh <Port No.> <on|off> ↑このようなコマンドを作成 ※ ここで①のEthernet名と実際のポート番号合わせてないと面倒くさい
  9. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 9 9 光遮断コマンドの処理 開始 コマンドエラー処理 /sys/bus/(略)の値を書き込み 現在の値を一括取得し echoコマンドに書き出し 終了 機器再起動時にはサービス起動後、 この一括設定コマンドで反映
  10. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 10 10 ③故障機の予備機作成が面倒 アナログ的に手動で実施すると、3つのconfigをインストール NWベンダー機器とは異なり、configを3種類インストールする必要があるりますが、 どのようにに予備機を作成してますでしょうか? (しかもconfig_db.jsonはmacアドレス書き換える必要もある。。。) ①config_db.json ②frr.conf ③iptables 現状弊社では導入優先して、故障交換する場合3ファイルを手動でインストールする手順 ですが今後はスクリプト等で一括導入(ZTP)できないか検討してます。
  11. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 11 11 Ansible自動化について ・ベンダー(APRESIA Systems様)よりAnsibleでコンフィグ生成・反映するテンプレートを頂いたので 生成中 ・使ってみた 設定反映は良好、しかし・・・意外と自社の設計に合わせるのに一苦労 (OSPF使ってる、BGPの設計が違う、ポートの設定色々・・・) 結局、今作っているコンフィグからAnsible用テンプレートを作成して対応中 課題としては、なるべく多くの機能を包含できること 今度起こりえる変更に対応できること・・・をもとに検討中
  12. Copyright © 2023 NTT PC Communications Incorporated, All Rights Reserved.

    機密性1 12 12 ご清聴ありがとうございました