首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >netconf-explorer安装使用方法

netconf-explorer安装使用方法

原创
作者头像
奇门水镜
发布2025-01-08 10:43:06
发布2025-01-08 10:43:06
22000
代码可运行
举报
文章被收录于专栏:政务云Openstack政务云Openstack
运行总次数:0
代码可运行

1、背景

工作中经常需要调试一些netconf管理接口的设备,例如OTN、SPN、三层交换机等设备。mg-soft的netconf-browser需要本地安装,如果网络不通或者设备在实验室内,则无法通过工位直接访问设备。

netconf是思科主推的管理协议,思科也开源了netconf客户端管理工具:anx。其中包含了netconf explorer工具。

2、制作镜像

为了方便在跳板机上使用netconf客户端工具调试设备管理接口,只需要在跳板机上安装一个netconf explorer容器即可。

如何在本地制作一个netconf explorer的镜像呢。首先,将cisco的anx代码下载到本地。

代码语言:txt
复制
git clone https://github.com/cisco-ie/anx.git

下载代码后,制作镜像有两种方法:

方法1、本地编译后,修改Dockerfile,将target目录的相关文件COPY到镜像内。

方法2、直接用的Dockerfile build镜像,内部编译。

如果你担心依赖链和依赖版本不匹配的问题,建议使用方法2,简单方便。

修改Dockerfile文件,使用aliyun的debian镜像仓库和自己的settings对应的maven私服。这样apt update/install以及后面的mvn package执行的时候能快速拉包。

代码语言:javascript
代码运行次数:0
运行
复制
FROM debian:buster-slim
LABEL maintainer "you <you@xxx.com>"

COPY anc /src/anc/
COPY explorer /src/explorer/
COPY grpc /src/grpc/
COPY pom.xml /src/

####### 覆盖两个配置文件 ###############
RUN echo "deb http://mirrors.aliyun.com/debian/ buster main contrib non-free" > /etc/apt/sources.list && \
    echo "deb http://mirrors.aliyun.com/debian-security buster/updates main contrib non-free" >> /etc/apt/sources.list && \
    echo "deb http://mirrors.aliyun.com/debian buster-updates main contrib non-free" >> /etc/apt/sources.list

COPY settings.xml /root/.m2/
########################################
ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
RUN mkdir -p /usr/share/man/man1 && apt update && \
    apt -y --no-install-recommends install openjdk-11-jdk-headless jetty9 maven && \
    cd /src && mvn package javadoc:javadoc && \
    cp /src/explorer/target/*.war /var/lib/jetty9/webapps/ROOT.war && \
    cp -a /src/anc/target/site/apidocs /var/lib/jetty9/webapps/ && mkdir /usr/share/yangcache && \
    rm -rf /var/lib/jetty9/webapps/root && cd / && rm -r /src /root/.m2 && \
    apt remove -y openjdk-11-jdk-headless maven && apt -y autoremove

WORKDIR /
EXPOSE 8080
CMD ["/usr/share/jetty9/bin/jetty.sh", "run"]

准备好后开始build镜像:

代码语言:txt
复制
docker build -t netconf-explorer:1.0 .

3、使用netconf-explorer

找到跳板机服务器/虚拟机,可以直接执行

代码语言:bash
复制
docker run --name netconf-exlorer -d -p 9269:8080 netconf-explorer

也可以使用docker-compose启动

代码语言:yaml
复制
version: "3"
  
services:
  netconf-explorer:
    image: netconf-explorer:latest
    container_name: netconf-explorer
    hostname: netconf-explorer
    restart: always
    network_mode: bridge
    ports:
      - 0.0.0.0:9269:8080

浏览器访问9269端口即可使用。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、背景
  • 2、制作镜像
  • 3、使用netconf-explorer
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档