数据中心网络之开局实战篇
1 项目背景
随着人工智能、大模型规模的进一步发展,数据中心项目对承载数据流量的数据中心网络提出了更高的要求
尤其是对于承担网络转发等核心任务角色的网络交换机更是提出新的要求
具体来说,就是针对超大参数、超大算力、存力等背景下,要求网络交换机具备高吞吐量、高可靠性、低时延、适应服务器虚拟化等特点
这些都是区别以往园区网络设计和实施中重点不同之处
因此本文利用真机,介绍华为 CloudEngine 系列交换机(简称 CE 系列交换机)进行实战开局配置、升级等环节进行实战讲解
这是数据中心网络系列的第一篇,后续将针对M-LAG、无损网络实战、RoCE等内容进一步展开实战教程
本篇采用两台华为真机,具体型号为:CE6856-48T6Q-HI
2 开局配置
2.1 原有配置清除【可选】
配置PC端终端软件进行Console进行登录(此处略)
如果设备存在之前旧配置,需要将原有配置进行清除
必须在用户视图下使用reset saved-configuration
清除配置
1 | reset saved-configuration |
配置清除后,设备不会自动重启,需要手动重启
1 | reboot fast |
重启后,可以通过console口再次登录到设备
重启后,第一次登录会提示让你配置串口的登录密码
1 | Please configure the login password (8-16) |
2.2 设置设备名称
1 | sysname Core01A |
注意
对于数据中心级交换机,从操作的安全性来说,在进行大多数关键操作后,需要手动输入
commit
提交配置,使新的配置数据在当前的系统运行配置中生效如果用户不确定配置影响或者希望配置后观察配置效果,建议先执行commit trial命令,确认操作达到预期效果后,再次重新配置并提交,以保证现网操作安全性
2.3 设置设备日期时间和时区
配置交换机的日期和时间非常重要,对于日志的定位非常有意义
特别注意:
1、必须先配置时区才能配置日期和时间,默认配置为UTC时间
2、同样需要在用户视图下
1 | clock timezone BJ add 08:00:00 |
配置时区后再进行日期和时间设置
1 | clock datetime 0:0:0 2012-01-01 |
2.4 设置NTP授时
实际上在生产环境中,一般利用GPS/北斗授时的专用设备进行全网的统一授时
因此需要在交换机进行NTP的设置
2.5 配置Manage口管理地址
实际上在生产环境中,我们往往会做带外管理的统一规划
在系统视图下设置
1 | interface MEth 0/0/0 |
2.6 配置VTY用户界面
VTY用户界面允许管理员通过远程连接到设备的控制台,进行配置和监控
缺省情况下,VTY用户界面的最大个数为5,即从0
到4
我们通过user-interface vty 0 4
就可以统一的批量设置
1 | user-interface vty 0 4 |
2.7 配置AAA
AAA是Authentication(认证)、Authorization(授权)和Accounting(计费)的简称,是网络安全的一种管理机制,提供了认证、授权、计费三种安全功能
在AAA视图下创建的用户,可以理解为后台统一的认证、授权和计费的数据库
我们后续针对SSH场景建立的SSH用户必须在AAA视图下创建同名的用户从而进行管理
必须进入AAA视图,基本操作是三个内容,分别是配置本地用户名和密码
、配置本地用户的服务方式
、配置本地用户的级别
例如新建一个ethan@cj
的用户
1 | aaa |
设置该用户的相关信息
1 | local-user ethan@cj privilege level 3 |
注意
配置AAA中本地用户,用户名必须是以@为分割, 否则命令完整性会报错
例如
1
2
3 [~Core01A-aaa]local-user ethan ?
^
Error: Wrong parameter found at '^' position.
另外缺省情况下,管理员用户首次登录时,必须修改密码,显得有点麻烦,可以通过以下命令进行禁用
1 | local-user ethan@cj password-force-change disable |
2.8 配置SSH用户
针对SSH场景,必须首先创建SSH访问用户
配置SSH用户包括配置服务方式
和配置SSH用户的认证方式
两个内容
1 | ssh user ethan@cj |
特别注意事项
在SSH用户认证下
1、password认证依靠AAA实现,当用户使用password、password-rsa、password-x509v3-rsa、password-dsa或password-ecc、password-sm2认证方式登录设备时,需要在AAA视图下创建同名的本地用户
注意必须是同名本地用户
2、如果SSH用户使用RSA、DSA、SM2或ECC认证,需要在服务器端和客户端都需要生成本地RSA、DSA、SM2或ECC密钥对,并且服务器端和客户端都需要将对方的公钥配置到本地
3、执行ssh authentication-type default password
命令后,用户通过AAA认证接入,即不需要创建SSH用户,直接使用aaa认证接入,适合在用户数量比较多时,对用户使用缺省的密码认证方式可以简化配置
2.9 启用交换机的STelnet服务功能
SSH服务器端开启STelnet服务功能
1 | stelnet server enable |
2.10 指定SSH服务器端的源接口
为提高系统安全性,缺省情况下SSH服务器端不接收来自任何接口登录连接的请求。当需要授权客户可以登录服务器时,通过命令ssh server-source指定SSH服务器端的源接口
1 | ssh server-source all-interface |
必须配置此项源接口,否则默认是undo ssh server-source all-interface
在生产环境中,针对核心交换机等重要设备可以只选择管理口设置源接口,确保进一步安全性
2.11 配置SSH服务器端的加密算法列表【可选】
ssh server cipher
命令用来配置SSH服务器端的加密算法列表
为保证更好的安全性,建议使用以下安全性更高的算法:AES128_CTR、AES256_CTR、AES192_CTR、AES128_GCM、AES256_GCM、SM4_GCM。
当设备加载配置文件启动时,且配置文件中不存在ssh server cipher的配置时,SSH服务端使用的加密算法为:AES128_CTR、AES256_CTR、AES192_CTR、AES128_GCM和AES256_GCM加密算法。
1 | ssh server cipher aes128_ctr aes256_ctr aes192_ctr aes128_gcm aes256_gcm |
3 版本升级
有时候交换机初始的软件版本也会存在诸如bug、兼容性等问题
因此需要对交换机的软件版本进行升级,而版本升级也是交换机开局的一个重要步骤
特别注意,针对需要配置堆叠的交换机,两者的软件版本和补丁版本号务必一致
交换机软件版本的升级主要操作包括PC端配置和交换机端配置
操作的方法最简单之一就是下载对应的升级文件,然后再PC端部署FTP服务,然后通过交换机使用FTP协议登录并将升级文件下载到交换机,然后命令升级,重启后完成
3.1 PC端配置
3.1.1 下载升级文件
需要到官网下载交换机对应型号的软件版本,例如下图
点击下载对应版本,进一步选择文件,后缀名为cc
点击下载按钮,使用ICS Lite
软件进行高速下载
注意学会使用ICS Lite软件的用法,后续文档、操作手册以及软件,都需要使用该软件下载
下载完成后,进入ICS Lite
打开所在文件夹,将后缀名为cc
的文件复制或者移动到FTP Server目录下【该文件路径具体与PC端FTP Server的配置的本地文件路径匹配】
3.2 配置FTP服务端软件
在PC端运行任一FTP软件,并设置FTP用户的相关信息
推荐采用filezilla Server
软件进行设置
虽然FTP协议本身存在安全风险,建议使用SFTP安全协议
但是支持SFTP的软件并不多
配置也非常简单,一图胜前言
主要是增加一个临时用户,不需要授权
截屏中Authentication选择的是不需要授权,也可以进行密码设定,依据自身需求而定
增加一个挂载点,虚拟目录为根目录''
,Native path
则是包含升级文件的目录
配置完成后,务必使用客户端进行验证后再进行下一步操作,方便后续故障时进行定位
3.3 配置本地防火墙【有故障时可选】
默认情况下,windows操作系统的防火墙都会默认打开,因此有必要
我们以SFTP的22端口为例,如果采用上图普通FTP的,端口号更改为21端口
完成后,防火墙的设置完成
还是建议务必使用客户端进行验证后再进行下一步操作,方便后续故障时进行定位
3.2 交换机端配置
3.2.1 登录FTP Server
务必在用户视图下通过ftp
命令访问PC端的FTP服务
1 | ftp 192.168.100.210 |
输入之前正确配置的用户名和密码【如果配置的话】,详见《3.2 配置FTP服务端软件》章节
3.2.2 传输文件
在ftp界面下继续输入以下命令
1 | binary |
在FTP客户端输入
binary
命令后,客户端会通知服务器以二进制模式传输文件,这样无论是文本文件还是二进制文件,都能保证在传输过程中数据的完整性和准确性
可以使用dir
命令查看远端FTP服务器上的目录,如果能够看到再进一步文件下载
使用get
命令进行传输,例如
1 | get CE6856HI_V200R023C00SPC500.cc |
正确返回
1 | 150 Starting data transfer. |
3.2.3 升级前验证
在正式升级前,我们用来查看设备本次及下次启动相关的系统软件、配置文件、PAF和补丁文件
1 | display startup |
使用startup system-software
命令正式开始升级
注:
startup system-software命令并不是正式升级命令,而是用来配置系统下次启动时使用的系统软件
需要重启后,让设备自动完成加载和升级工作
该命令后执行的一段时间,主要是进行版本的比较和确认工作
此时报错可能就是版本不对应问题,详见《3.3.2》章节
1 | startup system-software CE6856HI_V200R023C00SPC500.cc |
升级后再次验证
1 | display startup |
如果发现系统下次启动时使用的系统软件正是原计划的版本,则可以手动重启设备,完成正式升级
1 | reboot fast |
重启后最终验证
1 | display version |
至此完成设备的版本升级工作
3.3 相关错误解决
3.3.1 删除文件解决空间不足报错
有时候会提示目录空间不够,此时需要彻底删除大文件
回收站已经清空但磁盘空间仍然不足时,请使用delete /unreserved命令彻底删除文件,被删除的文件将不可恢复
1 | delete /unreserved xxxx |
另外一种使用不带/unreserved
参数的命令删除的文件,再次清空回收站
1 | reset recycle-bin |
3..3.2 版本不匹配
如果升级过程中提示以下错误信息,则可能表示升级的文件与升级硬件版本不匹配,建议重新下载正确的版本升级文件
1 | The system file is inconsistent with the current device in slot |