跳至主要內容

新网络,有点灵(二)

Poteko...大约 3 分钟networking

新网络,有点灵(二)

配置

NFX250 自身没有什么好配置的,interface fxp0 是 management ethernet,ge-0/*/*xe-0/*/* 是前面板上我们会插的那些 port. set vlans 以后我们就可以 set interfaces ge-0/0/0 unit 0 family ethernet-switching vlan members 了。如果这个 vlan 会在 VNF 里用的话记得也 set vmhost vlans.

VNF 的 qcow2 按照 Juniper的文档,可以选择放在 Host 的 /var/third-party/ 下面。但是这个地方的存储空间没那么大,而且在 vjunos 里不能直接访问到,所以我还是建议放在 /var/public 下面。这个目录是 mount 在 vjunos 同名目录下面的。

如果我们想 cross connect 几台 VNF 的话,配置也是很简单的:

# name it to cc-br or whatever you want
# MTU max 2048
set vmhost vlans cc-br vlan-id none
set virtual-network-functions my-stupid-vnf-1 interfaces eth2 mtu 2048 mapping vlan members cc-br
set virtual-network-functions my-stupid-vnf-2 interfaces eth2 mtu 2048 mapping vlan members cc-br

按照上一篇文章的思路,我们可以添加两个 VNF,一个是 vSRX 路由器,一个是 Debian 的灵车隧道。可以选择把 Debian 装好以后送 qcow2 上去,也可以就地创建一个新的 qcow2 然后用 ISO 安装。至于 vSRX,可以把 Juniper 提供的 qcow2 直接送上去用。下面附上 Debian VNF 的示例配置:

image {
    /var/third-party/debian.qcow2;
}
virtual-cpu {
    0 {
        physical-cpu 3;
    }
    1 {
        physical-cpu 5;
    }
    count 2;
    features {
        hardware-virtualization;
    }
}
interfaces eth2 {
    description "CC to vSRX";
    mtu 2048;
    mapping {
        vlan {
            members cc-br;
        }
    }
}
memory {
    size 2097152;
    features {
        hugepages {
            page-size 1024;
        }
    }
}
storage hda {
    type {
        cdrom {
            source {
                file /var/public/debian-11.7.0-amd64-netinst.iso;
            }
        }
    }
}

拓展阅读

饼干大师的文章open in new window里对 NFX250 有详细的描述。简而言之,这就是台路由器形状的小电脑。电脑里面是 Intel 的处理器、Intel 的万兆卡(摸不到)。万兆卡下联一个交换机,交换机接口就是前面板那些(能摸到)。如果是 NFX3 的话,系统会跑 Wind River Linux. 这个 Linux 一般也不需要访问,都是通过 vjunos 去控制它,即我们直接登录到 NFX250 上面对的那个系统。这个 vjunos 是一个 KVM guest. 如果我们需要增加其他的 virtual network functions 的话,也是作为 KVM guest 放上去。

基本的配置可以依照饼大师的文章来,内存硬盘可以都升级一番,但也有几点要注意。NFX250 有四个 DIMM 槽位,单条支持 mem 最大只支持 16G,即这台机器最大只能有 64G 内存——试了单条 32G 插上去不会 boot. 另外,如果 VNF 的 eth 不止一个的话(不算系统自带的那两个),最好还是可以进一下这个 host Linux 里面看一下 VNF domain XML,很有可能 VM 里面的 eth 编号和 vnf config 的 eth 编号不同———可能需要手动 match guest 和 config 里的 MAC——网络不通花了我非常多的时间才发现这个问题,一度以为是它的软件 bug(这个也应该算 bug 吧?应该算吧??)。

因为 host 里面是 libvirt,所以 virt-manager 是可以用的,也可以直接 VNC 连接它。这在安装 Windows Server 的时候会尤其有用,毕竟不用配置 unattended,也不用配置串口了。如果想 virt-manager 的话,需要做一些配置才能正常使用:

  • 进入 Linux Host,把 SSH public key 放进去 (.ssh/authorized_keys),或者直接 ssh-copy-id
  • 在 Host 下 /etc/libvirt/qemu.conf 启用 libvirt/QMEU 的 VNC 功能 vnc_listen=0.0.0.0,需要重启 NFX250 以生效设置
  • 启用 domain 的 VNC graphics (autoport 也行,forwarding 的时候记得自己计算)
<graphics type='vnc' port='5900' autoport='no' listen='0.0.0.0' />
  • 启用 SSH 和 VNC 的 port forwarding,因为 Host 没有直接暴露出来的地址,我们需要在 vjunos 里面做 forwarding
start shell user root
# Forward SSH, port 2222 to host 22
ssh -JU __juniper_private4__ -L 0.0.0.0:2222:localhost:22 root@192.168.1.1 -NTf
# Forward VNC, port 5900 to host 5900
ssh -JU __juniper_private4__ -L 0.0.0.0:5900:localhost:5900 root@192.168.1.1 -NTf
  • hello virt-manager let's roll
# id_ecdsa or id_rsa
virt-manager -c 'qemu+ssh://root@NFX250-IP:2222/system?keyfile=id_ecdsa'

Windows 的安装会有额外的 virtio 驱动的问题,记得到 Fedora virt groupopen in new window 上下载驱动,将 ISO 挂上去以便在安装的时候加载驱动。

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.0.0-alpha.10