Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

NorthStar 控制器系统要求

NorthStar 控制器运行在运行 CentOS 7.x(7.6、7.7、7.9)或红帽企业 Linux (RHEL) 7.x(7.6、7.7、7.9)或 8.4 版的 Linux 系统上。

确保:

  • 您使用受支持的 CentOS Linux 或 Red Hat Enterprise Linux (RHEL) 版本。以下是我们的 Linux 建议:

    • CentOS Linux 7.x 或 RHEL 7.x(7.6、7.7、7.9)或 8.4 映像。不支持早期版本。

      注意:

      如果使用 RHEL 8.4,请确保:

      • 同时安装旧版网络脚本和工具。

      • 删除以下 RPM 捆绑包:

    • 使用最低 ISO 安装您选择的受支持的 Linux 版本。

  • 使用 服务器大小调整指南 中指定的 RAM、虚拟 CPU 数和硬盘进行安装。

  • 打开防火墙端口指南中列出的 端口

注意:

升级 NorthStar 控制器时,文件将备份到 /opt 目录。

服务器大小调整指南

本节中的指南应帮助您为服务器配置足够的资源,以高效且有效地支持 NorthStar 控制器功能。本节中的建议是内部测试结合现场数据的结果。

典型的 NorthStar 部署包含以下系统:

  • 应用系统

    应用程序系统包含路径计算元素 (PCE)、路径计算服务器 (PCS)、用于 Web 访问、拓扑获取、CLI 或 SNMP 消息收集的组件以及配置数据库。

  • 分析系统

    分析系统用于遥测和收集NetFlow数据,并包含分析数据库。分析系统用于跟踪网络流量级别的部署。

  • (可选)专用或辅助收集器

    辅助收集器用于从大型节点收集 CLI 和 SNMP 消息,当需要收集大量数据时需要辅助收集器;参见 表 2

  • (可选)专用计划器节点

    在应用系统以外的系统上运行离线网络模拟需要计划器节点;参见 表 2

对于配置 NorthStar 群集以实现高可用性中所述的高可用性部署,一个群集将具有 3 个或更多应用程序和分析系统,但它们的大小类似于具有单个应用程序系统和单个分析系统的部署。

表 1 按网络规模概述了应用程序和分析系统的估计服务器需求。

表 1:按网络大小划分的应用程序和分析系统的服务器要求

实例类型

概念验证/实验室

(内存 / vCPU / 硬盘)

中型(<75 个节点)

(内存 / vCPU / 硬盘)

大型(<300 个节点)

(内存 / vCPU / 硬盘)

XL(300+ 节点)*

(内存 / vCPU / 硬盘)

应用

16G / 4vCPU / 500G

64G / 8vCPU / 1T

96G / 8vCPU / 1.5T

128G / 8vCPU / 2T

 

要在单个非高可用性 (HA) 系统上收集大量 SNMP 和 CLI 消息,您可能需要额外的 16GB RAM 和 8 个 vCPU 或辅助收集器;参见 表 2

分析

16G/ 4vCPU/ 500G

48G / 6vCPU/ 1T

64G / 8vCPU/ 2T

64G / 12vCPU / 3T

 

NetFlow 部署可能需要额外的 16G 到 32G RAM,并将分析系统上的虚拟 CPU 数增加一倍。

注意:

根据网络中的设备数量,请咨询您的瞻博网络代表,确认您对 XL 类别网络的具体要求。

表 2 概述了辅助收集器和专用计划器的估计服务器需求。

表 2:辅助收集器和专用计划器的服务器要求

实例类型

概念验证/实验室

(内存 / vCPU / 硬盘)

中型(<75 个节点)

(内存 / vCPU / 硬盘)

大型(<300 个节点)

(内存 / vCPU / 硬盘)

XL(300+ 节点)

(内存 / vCPU / 硬盘)

多合一

24G / 8vCPU/ 1T

不适用

不适用

不适用

二级收集器

8G / 4vCPU / 200G

16G / 8vCPU / 500G

16G / 8vCPU / 500G

16G / 8vCPU / 500G

专属规划师

8G / 4vCPU / 200G

16G / 8vCPU / 1T

16G / 8vCPU / 1T

16G / 8vCPU / 1T

 

根据活动计划器会话的数量和模型的复杂性,可能需要额外的 RAM。

注意:

一体机是一种配置,其中所有组件都安装在单个虚拟机中,仅用于演示目的。不建议用于用于对生产部署进行建模的生产部署或实验室配置。

在安装最小安装 CentOS 或 RHEL Linux 时,文件系统可以折叠为单个根 (/) 文件系统或单独的文件系统。如果您使用的是单独的文件系统,则可以根据 表 3 中提到的不同目录的大小为每个客户分配空间。

表 3:文件系统的建议空间

文件

空间要求

目的

/引导

1G

Linux 内核和启动所需的文件

交换

0 至 4G

不需要,但可以进行最小配置

/

10G

操作系统(包括 /usr

/var/lib/docker

20G

容器化流程(仅限应用系统)

/Tmp

24G

发生进程错误时的 NorthStar 调试文件(仅限应用程序系统)

/选择

文件系统中的剩余空间

NorthStar 组件

为 ElasticSearch 中的 JTI 分析提供额外的磁盘空间

需要相当大的存储空间来支持 ElasticSearch 中的 JTI 分析。每个 JTI 记录事件需要大约 330 字节的磁盘空间。对生成的事件数的合理估计是(<接口数> + <LSP 数>)÷报告间隔(以秒为单位)= 每秒事件数。

因此,对于一个拥有 500 个路由器、50K 接口和 60K LSP 的网络,配置了 5 分钟的报告间隔(300 秒),预计每秒会生成大约 366 个事件。每个事件 330 字节,每天 366 个事件 x 330 字节 x 86,400 秒 = 每天超过 10G 的磁盘空间或每年 3.65T。对于相同规模的网络,但报告间隔为一分钟(60 秒),您将有更大的磁盘空间需求 — 每天超过 50G 或每年 18T。

每个元素每小时都会创建一个额外的汇总事件,用于数据聚合。在具有 50K 接口和 60K LSP(总共 110K 个元素)的网络中,每小时将有 110K 个汇总事件。就磁盘空间而言,这将是每小时 110K 个事件 x 每个事件 330 字节 x 每天 24 小时 = 每天需要近 1G 的磁盘空间。

对于包含大约 100K 个元素(接口 + LSP)的典型网络,如果您有 5 分钟的报告间隔,我们建议您每天额外留出 11G 磁盘空间,如果您有 1 分钟的报告间隔,则建议每天额外留出 51G 磁盘空间。

有关自定义数据聚合和保留参数以减少 ElasticSearch 所需的磁盘空间量的信息,请参阅 NorthStar 控制器用户指南中的 NorthStar Analytics 原始数据和聚合数据保留

卡桑德拉中的网络事件的额外磁盘空间

Cassandra 数据库是另一个需要额外磁盘空间来存储网络事件的组件。

使用同一个 50K 接口和 60K LSP(110 个元素)的示例,并估计每个元素每 15 分钟(900 秒)一个事件,每秒将有 122 个事件。然后所需的存储将是每秒 122 个事件 x 每个事件 300 字节 x 每天 86,400 秒 = 每天约 3.2 G,或每年 1.2T。

使用每个元素每 5 分钟一个事件作为估计,而不是每 15 分钟一次,额外的存储需求更像是每天 9.6G 或每年 3.6T。

对于包含大约 100K 个元素(接口 + LSP)的典型网络,我们建议您每天额外留出 3-10G 的磁盘空间,具体取决于网络中的事件生成速率。

默认情况下,NorthStar 会将事件历史记录保留 35 天。要自定义事件数据的保留天数,请执行以下操作:

  1. 修改 中的数据库容量参数 /opt/northstar/data/web_config.json

  2. 使用 supervisorctl restart infra:prunedb 命令重新启动 pruneDB 进程。

收集器(芹菜)内存要求

使用 collector.sh 脚本在独立于 NorthStar 应用程序的服务器上安装辅助收集器(用于分布式收集)时,该脚本将安装 表 4 中所述的默认收集器辅助程序数。每个工作线程启动的芹菜进程数是 CPU 中的核心数加 1。因此,在 32 核服务器(例如)中,安装的默认工作线程将启动 33 个芹菜进程。每个芹菜进程使用大约 50M 的 RAM。

表 4:按 CPU 内核数划分的默认工作线程、进程和内存

CPU 核心

已安装的工人

工作进程总数

所需的最小内存

1-4

4

20

(CPU +1) x 4 = 20

1 GB

5-8

3

18

(CPU +1) x 2 = 18

1 GB

16

1

17

(CPU +1) x 1 = 17

1 GB

32

1

33

(CPU +1) x 1 = 33

2 千兆字节

有关分布式数据收集和辅助工作进程的详细信息,请参阅 分布式数据收集的辅助收集器安装

安装的默认辅助角色数旨在优化服务器资源,但您可以使用提供的 config_celery_workers.sh 脚本更改该数量。有关详细信息,请参阅 收集器辅助角色安装自定义 。可以使用此脚本来平衡安装的工作器数与服务器上的可用内存量。

注意:

此脚本还可用于更改 NorthStar 应用程序服务器上安装的工作器数量(默认值也遵循 表 4 中所示的公式)。

防火墙端口指南

表 5 中列出的端口必须由正在使用的任何外部防火墙允许。用途描述中包含单词cluster的端口与高可用性 (HA) 功能相关联。如果您不打算配置 HA 环境,则可以忽略这些端口。用途描述中包含单词Analytics的端口与分析功能相关联。如果您不打算使用 Analytics(分析),可以忽略这些端口。列出的其余端口必须在所有配置中保持打开状态。

表 5:外部防火墙必须允许的端口

Port

Purpose

179

BGP:用于路由器 BGP-LS 的 JunosVM 或 cRPD — 如果使用 IGP 进行拓扑采集,则不需要。在 cRPD 安装中,路由器将端口 179/TCP (BGP) 直接连接到 NorthStar 应用程序服务器。cRPD 在 NorthStar 应用程序服务器内作为一个进程运行。Junos VM 和 cRPD 是互斥的。

161

Snmp

450

新台币

830

NorthStar 控制器和路由器之间的 NETCONF 通信。这是 NETCONFD 的默认端口,但在某些安装中,端口 22 是首选端口。要更改为端口 22,请按照使用 NorthStar CLI 配置 NorthStar 设置中所述访问 NorthStar CLI,并修改端口设置的值。使用 set northstar netconfd device-connection-pool netconf port 命令。

1514

系统日志:RPM 探测统计信息的默认 Junos 遥测接口报告(支持分析)

1812

RADIUS 身份验证

2222

容器化管理守护程序 (cMGD)。用于访问 NorthStar CLI。

2888

动物园管理员集群

3000

JTI:IFD、IFL 和 LSP 的默认 Junos 遥测接口报告(支持 NorthStar Analytics)。在以前的 NorthStar 版本中,需要三个 JTI 端口(2000、2001、2002)。从版本 4.3.0 开始,将改用此单个端口。

3001

模型驱动遥测 (MDT)

3100

爱立信的流式遥测。

3888

动物园管理员集群

4000

MDT(管道) - 日志存储通信

4189

PCEP:PCC(路由器)到 NorthStar PCE 服务器

5000

cMGD-REST

5672

兔子MQ

6379

雷迪斯

7000

到 NorthStar 计划器的通信端口

7001

Cassandra 数据库集群

8123

当 NorthStar 控制器和分析安装在不同服务器上时,运行状况监视器通知;

8124

运行状况监视器

8443

Web:Web client/REST 到安全的 Web 服务器 (https)

9000

净流

9042

远程规划器服务器

9200

通过 HTTP 进行的 Elasticsearch API 调用(监控、搜索和聚合)。

9201

当 NorthStar 控制器和分析服务器安装在不同的服务器上时进行弹性搜索。

9300

弹性搜索集群

10001

BMP 被动模式:默认情况下,监视器在此端口上侦听来自网络的传入连接。

17000

Cassandra 数据库集群

50051

PRPD:NorthStar 到路由器网络的应用程序

图 1 详细说明了不使用节点群集时通过端口的数据流向。图 2图 3 分别详细介绍了 NorthStar 应用程序 HA 群集和分析 HA 群集的其他流。

1: NorthStar 主端口图 NorthStar Main Port Map
2: NorthStar 应用程序 HA 端口图 NorthStar Application HA Port Map
3: 分析 HA 端口图 Analytics HA Port Map

分析要求

除了确保端口 3000 和 1514 保持打开状态外,使用 NorthStar 分析功能还要求您在必要时抵消反向路径过滤 (RPF) 的影响。如果您的内核默认执行 RPF,则必须执行以下操作 one 来抵消影响:

  • 禁用 RPF。

  • 确保有一条路由到探测的源 IP 地址,指向接收这些探测的接口。

  • 指定松散模式反向过滤(如果源地址可使用任何接口上的任何路由进行路由)。

双 VM 安装要求

双虚拟机安装是指 JunosVM 未与 NorthStar 控制器软件捆绑在一起的安装。

VM 映像要求

  • NorthStar 控制器应用程序虚拟机安装在 Linux 虚拟机之上,因此需要 Linux 虚拟机。您可以通过以下任一方式获取 Linux VM 映像:

    • 使用大多数 Linux 分销商提供的通用版本。通常,这些是在支持云初始化的环境中使用的基于云的映像,不需要密码。这些映像与 OpenStack 完全兼容。

    • 创建自己的 VM 映像。某些虚拟机管理程序(如通用 DVM)允许您创建自己的 VM 映像。如果您不使用 OpenStack,并且您的虚拟机管理程序本身不支持 cloud-init,我们建议您使用此方法。

  • JunosVM 在 NorthStar 控制器捆绑包内以 Qcow2 格式提供。如果从 NorthStar 下载站点单独下载 JunosVM(不与 NorthStar 捆绑),则会以 VMDK 格式提供。

  • JunosVM 映像仅与 IDE 磁盘控制器兼容。您必须将虚拟机管理程序配置为对 JunosVM 磁盘映像使用 IDE 而不是 SATA 控制器类型。

JunosVM 版本要求

如果您已经拥有并且想要继续使用早于 17.2R1 版的 JunosVM,则可以更改 NorthStar 配置以支持该版本,但分段路由支持将不可用。有关配置步骤,请参阅 安装 NorthStar 控制器

VM 网络要求

要使双 VM 安装方法成功,必须满足以下网络要求:

  • 每个 VM 都需要以下虚拟网卡:

    • 一个连接到外部网络

    • 一个用于 NorthStar 应用程序和 JunosVM 之间的内部连接

    • 一个连接到管理网络(如果面向路由器的接口和面向客户端的接口之间需要不同的接口)

  • 我们建议使用没有任何 NAT 的平面或路由网络,以实现完全兼容性。

  • 只要将 BGP-LS 用作拓扑获取机制,就可以使用具有一对一 NAT(通常称为浮动 IP)的虚拟网络。如果需要 IS-IS 或 OSPF 邻接关系,则应通过 GRE 隧道建立邻接关系。

    注意:

    不支持具有 n 对一 NAT 的虚拟网络。