9.1. 验证是否收到 devices.csv 文件

预计完成时间:1 天

可操作组件的所有者:OELCM/HWaaS

技能配置文件:部署工程师

devices.csv 文件描述了 Google Distributed Cloud (GDC) 气隙实例中的所有硬件设备。确保收到此文件,并验证其是否符合预期格式。请注意,此文件之前称为“设备标识”文件 (DEID)。此外,请务必检查硬件及其网络连接是否与文件相符。

生成

  1. 确保从硬件供应商处收到设备标识符 (“DEID”) 电子表格文件:
    1. 分布式云实例中每个机架对应一个电子表格文件。
    2. 每个电子表格都包含一个带有设备信息的标签页。
  2. 从每个 DEID 电子表格中收集设备记录:
    1. 手动将每个电子表格中的设备记录汇总到一个合并的工作表中。
    2. 移除空行。
    3. 确保只有一行标题行(位于第一行)。
    4. 后续各行包含来自 DEID 电子表格的设备记录的汇总列表。
  3. 将汇总的去标识化电子表格转换为或导出为 CSV(逗号分隔值)格式。
  4. 尽最大努力将 DEID 线缆列表转换为格式规范中所述的 Distributed Cloud devices.csv 格式:

    gdcloud system assets format-deid --input-deid PATH_TO_AGGREGATED_DEID_FILE --output-devices OUTPUT_PATH
    

格式规范

列名称 说明 格式
serial_number 分配给硬件设备和同一机箱内的子设备的序列号(如适用)。 必须为所有设备提供。对于在同一机箱中包含多个控制器的 NetApp 设备,请先指定机箱序列号,然后指定第一个控制器的序列号,最后指定第二个控制器的序列号(全部以英文逗号分隔)。 字母数字。 正则表达式:
objsshelf stge stgeshelf ^[a-zA-Z0-9]+,[a-zA-Z0-9]+,[a-zA-Z0-9]+$
其他 ^U[0-9]{1,2}$

示例:

objsshelf stge stgeshelf 2M221301D9、2M221301DA、2M221301DB
其他 2M221301D9

instance_id

与硬件设备关联的 Distributed Cloud 实例的 ID。

必须为所有设备提供。

对于同一实例中的所有设备,该值应相同。

正则表达式:^([a-z0-9]{2,})$

示例:

aa

rack_id

与硬件设备关联的机架的 ID。

必须为所有设备提供。

同一机架中的所有设备应保持一致。

正则表达式:^([a-z0-9]{2,})$

示例:

aa

机架位置1

硬件设备的机架位置。

除货架以外的所有设备都需要此名称。对于 PDU 设备,请指定 PDU 位置。对于其他设备,请指定设备顶部的机架单元位置。

正则表达式:

pdu ^PDU-[LR]$
机架 ^不适用$
其他 ^U[0-9]{1,2}$

示例:

pdu PDU-L 表示从后方视角来看,连接到机架左侧 PDU 设备的线缆。
机架 不适用
其他 U42

rack_units

硬件设备的高度(以机架单元为单位)。

除机架和 PDU 以外的所有设备都需要此名称。以机架单元为单位指定设备的高度。

正则表达式:

pdu 机架 ^不适用$
其他 ^[0-9]+$

示例:

pdu 机架 不适用
其他 1

类型

硬件设备的类型。

必须为所有设备提供。

正则表达式:

^(rack)|(pdu)|(server)|(mgmtsw)|(mgmtaggsw)|(torsw)|(aggsw)|(stgesw)|(fw)|(hsm)|(objsadm)|(objs)|(objsshelf)|(stge)|( stgeshelf)$

示例:

服务器

name

硬件设备的实体名称。

必须为所有设备提供。

所需格式取决于硬件设备类型。一般来说,所有设备类型都需要采用相同的 "-<rack_id>-<device_type>" 格式,但某些存储设备类型需要额外的后缀。

此字段必须与设备的设备命名规范相匹配。

模型

硬件设备的直观易懂的产品名称。

必须为所有设备提供。

此字段必须与设备的型号规范相匹配。

vendor

硬件设备的制造商。

系统会根据型号自动填写此字段。

asset_tag1

硬件设备的印刷标签。

必须为所有设备提供。

正则表达式:

pdu ^不适用$
其他 ^[A-Z]{2}-(RCK|SVR|SWT|STG|PPL|HSM|FWL|OBJ|NTP|CON|CHS|PDU)-[0-9]{6}$

示例:

pdu 不适用
其他 US-SRV-123456

server_cpu_model

服务器设备中 CPU 的型号。

服务器必需。对于所有其他设备,此属性均未指定。

接受的服务器 CPU 型号:

  • Intel Xeon Silver 4210R
  • Intel Xeon Silver 4216
  • Intel Xeon Gold 5220R
  • Intel Xeon Gold 6230R
  • Intel Xeon Silver 4214R
  • Intel Xeon Gold 6226R
  • Intel Xeon Gold 5317
  • Intel Xeon Platinum 8280
  • Intel Xeon Gold 6212U
  • Intel Xeon Gold 6312U
  • Intel Xeon Gold 5418Y
  • Intel Xeon Silver 4410Y
  • Intel Xeon Gold 6538Y+
  • Intel Xeon Platinum 8558

server_num_cpus

服务器设备中存在的 CPU 数量。

服务器必需。对于所有其他设备,此属性均未指定。

数值。

正则表达式:

服务器 ^[0-9]+$
其他 ^不适用$

示例:

服务器 2
其他 不适用

server_memory_gb

服务器设备中的内存量(以 GB 为单位)。

服务器必需。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^[0-9]+$
其他 ^不适用$

示例:

服务器 288
其他 不适用

server_gpu_model1

服务器设备中 GPU 的型号。

服务器必需。对于所有其他设备,此属性均未指定。

接受的服务器 GPU 型号:

  • nVidia T4 16GB
  • nVidia A100 40GB
  • nVidia A100 80GB
  • nVidia H100 NVL PCIe 94GB
  • nVidia H100 PCIe 80GB
  • nVidia H100 XSM 80GB

server_num_gpus

服务器设备中的 GPU 数量。

服务器必需。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^[0-9]+$
其他 ^不适用$

示例:

服务器 1
其他 不适用

server_bios_version1

服务器设备中的 BIOS 版本。

服务器必需。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^U[0-9]+$
其他 ^不适用$

示例:

服务器 U32
其他 不适用

server_bmc_version1

服务器设备中裸金属控制器的固件版本。

服务器必需。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^[0-9]+\.[0-9]+$
其他 ^不适用$

示例:

服务器 2.55
其他 不适用

server_bmc_username2

服务器设备的 BMC 管理员用户名。

服务器必需。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^[a-zA-Z0-9]+$
其他 ^不适用$

示例:

服务器 管理员
其他 不适用

server_bmc_password2

服务器设备的 BMC 管理员密码。

服务器必需。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^[a-zA-Z0-9\`\~\!\@\#\$\%\^\&\*\(\)\-_\=\+\[\]\{\}]$
其他 ^不适用$

示例:

服务器 ASDF1234
其他 不适用

server_bmc_port_mac

服务器设备的 BMC 端口的 MAC 地址。

服务器必需。对于所有其他设备,此属性均未指定。

必须是有效的 MAC 地址。

正则表达式:

服务器 ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

服务器 f0:0d:ca:fe:00:01
其他 不适用

server_bmc_port_name

服务器设备的 BMC 端口的名称。

对于服务器设备,此字段将自动设置为 ilo

server_mgmt_port_mac

服务器设备的管理接口的 MAC 地址。

与 server_bmc_mac 相同。

server_mgmt_port_name

服务器设备的管理接口的名称。

对于服务器设备,此字段将自动设置为 LOM1

server_data1_port_mac

服务器设备的第一个数据接口的 MAC 地址。

与 server_bmc_mac 相同。

server_data1_port_name

服务器设备的第一个数据接口的名称

对于服务器而言是必需的。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^s[1-9]p[1-9]$
其他 ^不适用$

示例:

服务器 s1p1
其他 不适用

server_data2_port_mac

服务器设备的第二个数据接口的 MAC 地址。

与 server_bmc_mac 相同。

server_data2_port_name

服务器设备的第二个数据接口的名称

与 server_data1_port_name 相同。

switch_username2

交换机设备的管理员用户名。

对于开关是必需的。对于所有其他设备,此属性均未指定。

正则表达式:

mgmtsw mgmtaggsw torsw aggsw stgesw ^[a-zA-Z0-9]+$
其他 ^不适用$

示例:

mgmtsw mgmtaggsw torsw aggsw stgesw 管理员
其他 不适用

switch_password2

交换机设备的管理员密码。

对于开关是必需的。对于所有其他设备,此属性均未指定。

正则表达式:

mgmtsw mgmtaggsw torsw aggsw stgesw ^[a-zA-Z0-9\`\~\!\@\#\$\%\^\&\*\(\)\-_\=\+\[\]\{\}]$
其他 ^不适用$

示例:

mgmtsw mgmtaggsw torsw aggsw stgesw ASDF1234
其他 不适用

switch_mgmt_port_mac

交换机设备的 supeth1 端口的 MAC 地址。可以通过跳过 PoAP 并加载交换机的默认配置,然后运行“show mac address-table | include sup-eth1”来获取此信息。

对于开关是必需的。对于所有其他设备,此属性均未指定。

正则表达式:

mgmtsw mgmtaggsw torsw aggsw stgesw ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

mgmtsw mgmtaggsw torsw aggsw stgesw f0:0d:ca:fe:00:01
其他 不适用

fw_mgmt_port_mac

防火墙设备的管理接口的 MAC 地址。

防火墙必需。对于所有其他设备,此属性均未指定。

必须是有效的 MAC 地址。

正则表达式:

fw ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

fw f0:0d:ca:fe:00:01
其他 不适用

fw_mgmt_port_name

防火墙设备的管理接口的名称。

对于防火墙设备,此字段将自动设置为 mgt

hsm_mgmt_port_mac

HSM 设备的管理接口的 MAC 地址。

对于 HSM 而言是必需的。对于所有其他设备,此属性均未指定。

必须是有效的 MAC 地址。

正则表达式:

hsm ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

hsm f0:0d:ca:fe:00:01
其他 不适用

hsm_mgmt_port_name

HSM 设备的管理接口的名称。

对于 HSM 设备,此字段将自动设置为 mgmt0

hsm_data1_port_mac

HSM 设备的第一个数据接口的 MAC 地址。

与 hsm_mgmt_port_mac 相同。

hsm_data1_port_name

HSM 设备的第一个数据接口的名称

对于 HSM 设备,此字段将自动设置为 data0

hsm_data2_port_mac

HSM 设备的第二个数据接口的 MAC 地址。

与 hsm_mgmt_port_mac 相同。

hsm_data2_port_name

HSM 设备的第二个数据接口的名称

对于 HSM 设备,此字段将自动设置为 data0

objsadm_bmc_port_mac

对象存储管理员设备的 BMC 端口的 MAC 地址。

对于对象存储空间管理员设备,此为必需项。对于所有其他设备,未指定。

必须是有效的 MAC 地址。

正则表达式:

objsadm ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

objsadm f0:0d:ca:fe:00:01
其他 不适用

objsadm_bmc_port_name

对象存储管理员设备的 BMC 端口的名称。

对于对象存储管理员设备,此字段将自动设置为 OOBM

objsadm_mgmt1_port_mac

对象存储管理员设备的第一个管理接口的 MAC 地址。

与 objsadm_bmc_port_mac 相同。

objsadm_mgmt1_port_name

对象存储管理员设备的首个管理接口的名称

对于对象存储管理员设备,此字段将自动设置为 e01

objs_bmc_port_mac

对象存储计算控制器设备的 BMC 端口的 MAC 地址。

对于对象存储计算控制器,此参数为必需参数。未针对所有其他设备指定。

必须是有效的 MAC 地址。

正则表达式:

objs ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

objs f0:0d:ca:fe:00:01
其他 不适用

objs_bmc_port_name

对象存储计算控制器设备的 BMC 端口的名称。

对于对象存储计算设备,此字段将自动设置为 OOBM

objs_mgmt1_port_mac

对象存储计算控制器设备的第一个管理接口的 MAC 地址。

与 objs_bmc_port_mac 相同。

objs_mgmt1_port_name

对象存储计算控制器设备的第一个管理接口的名称。

对于对象存储计算设备,此字段将自动设置为 e01

objsshelf_num_data_disks

对象存储架设备中的数据磁盘数量。

对于对象存储控制器搁架,此为必需项。未针对所有其他设备指定。

数值。

正则表达式:

objsshelf ^[0-9]+$
其他 ^不适用$

示例:

objsshelf 60
其他 不适用

objsshelf_controller1_name

对象存储架设备上第一个控制器的物理名称。

对于对象存储架设备,此字段将自动设置为 <device-name>-01

objsshelf_controller1_serial_number

对象存储架设备上第一个控制器的序列号。

字母数字。

objsshelf_controller1_mgmt_port_mac

对象存储架设备上第一个控制器的管理接口的 MAC 地址。

对于对象存储架控制器,此为必需项。未针对所有其他设备指定。

必须是有效的 MAC 地址。

正则表达式:

objsshelf ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

objsshelf f0:0d:ca:fe:00:01
其他 不适用

objsshelf_controller1_mgmt_port_name

第一个控制器(适用于对象存储架设备)的管理接口的名称。

对于对象存储架设备,此字段将自动设置为 <A-P1

objsshelf_controller2_name

对象存储架设备的第二个控制器的物理名称。

对于对象存储架设备,此字段将自动设置为 <device-name>-02

objsshelf_controller2_serial_number

对象存储架设备的第二个控制器的序列号。

字母数字。

objsshelf_controller2_mgmt_port_mac

对象存储架设备上第二个控制器的管理接口的 MAC 地址。

与 objsshelf_controller1_mgmt_port_mac 相同。

objsshelf_controller2_mgmt_port_name

对象存储架设备第二个控制器的管理接口的名称。

对于对象存储架设备,此字段将自动设置为 B-P1

stge_num_data_disks

文件和块存储设备中存在的数据磁盘数量。

对于文件和块存储设备,此参数为必需参数。对于所有其他设备,未指定。

数值。

正则表达式:

stge ^[0-9]+$
其他 ^不适用$

示例:

stge 60
其他 不适用

stge_controller1_name

文件/块存储设备的首个控制器的物理名称。

对于文件块存储设备,此字段将自动设置为 <device-name>-01

stge_controller1_mgmt_port_mac

文件和块存储设备的首个控制器的管理接口的 MAC 地址。

对于文件和块存储设备,此参数为必需参数。对于所有其他设备,未指定。

必须是有效的 MAC 地址。

正则表达式:

stge ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

stge f0:0d:ca:fe:00:01
其他 不适用

stge_controller1_mgmt_port_name

第一个控制器(用于文件/块存储设备)的管理接口的名称。

对于文件块存储设备,此字段将自动设置为 e0M

stge_controller2_name

文件和块存储设备的第二个控制器的物理名称。

对于文件块存储设备,此字段将自动设置为 <device-name>-02

stge_controller2_mgmt_port_mac

文件/块存储设备第二个控制器的管理接口的 MAC 地址。

与 stge_controller1_mgmt_port_mac 相同。

stge_controller2_mgmt_port_name

第二个控制器(用于文件和块存储设备)的管理接口的名称。

与 stge_controller1_mgmt_port_name 相同。

stgeshelf_num_data_disks

文件/块存储架设备中存在的数据磁盘数量。

文件和块存储货架必需的。对于所有其他设备,未指定。

数值。

正则表达式:

stgeshelf ^[0-9]+$
其他 ^不适用$

示例:

stgeshelf 60
其他 不适用

stgeshelf_controller1_name

文件和块存储架设备上第一个控制器的物理名称。

对于文件块存储搁架设备,此字段将自动设置为 <device-name>-01

stgeshelf_controller2_name

文件/块存储架设备的第二个控制器的物理名称。

对于文件块存储搁架设备,此字段将自动设置为 <device-name>-02

chassis_bmc_version

机箱设备的固件版本。

对于机箱,此属性为可选属性。对于所有其他设备,此属性均未指定。

正则表达式:

服务器 ^([0-9]+\.)+[0-9]+(-b[0-9]+)?$
其他 ^不适用$

示例:

底盘 2.2-b11
其他 不适用

chassis_bmc_username2

机箱设备的 BMC 管理员用户名。

对于机箱是必需的。对于所有其他设备,此属性均未指定。

正则表达式:

底盘 ^[a-zA-Z0-9]+$
其他 ^不适用$

示例:

底盘 管理员
其他 不适用

chassis_bmc_password2

机箱设备的 BMC 管理员密码。

对于机箱是必需的。对于所有其他设备,此属性均未指定。

正则表达式:

底盘 ^[a-zA-Z0-9\`\~\!\@\#\$\%\^\&\*\(\)\-_\=\+\[\]\{\}]$
其他 ^不适用$

示例:

底盘 ASDF1234
其他 不适用

chassis_bmc_port_mac

机箱设备的 BMC 端口的 MAC 地址。

对于机箱是必需的。对于所有其他设备,此属性均未指定。

必须是有效的 MAC 地址。

正则表达式:

服务器 ^([0-9a-f]{2}:){5}([0-9a-f]{2})$
其他 ^不适用$

示例:

服务器 f0:0d:ca:fe:00:01
其他 不适用

chassis_bmc_port_name

机箱设备的 BMC 端口的名称。

对于机箱设备,此字段将自动设置为 ilo

1 系统会检查字段格式,但不会阻止生成素材资源。

2 secrets.yaml 中需要填写用户名和密码字段。devices.csv 中提供的任何用户名和密码都将用于生成 secrets.yaml,但 devices.csv 中并非必须提供这些信息。