用户管理#
DGX SuperPOD 的用户和组以单一系统范例呈现给管理员。也就是说,如果管理员使用集群管理器管理它们,则更改将自动在整个集群(单一系统)中共享。集群管理器运行自己的 LDAP 服务来管理用户,而不是使用 unix 用户和组文件。换句话说,用户和组由在头节点上运行的集中式 LDAP 数据库服务器管理,而不是通过 /etc/passwd 或 /etc/group 文件中的条目管理。
使用基本视图管理用户和组#
在基本视图中
用户可以通过点击路径“身份管理”>“用户”进行管理。
组可以使用点击路径“身份管理”>“组”进行管理。
对于用户(图 5),将显示常规用户的 LDAP 条目。这些条目是可编辑的,然后可以进一步详细管理每个用户。
图 5. 基本视图用户管理
在新安装的集群管理器上有一个用户:cmsupport。默认情况下,此用户未设置密码,这意味着默认情况下不允许登录此帐户。集群管理器使用 cmsupport 运行各种诊断实用程序,因此不应删除它,并且也不应删除其主目录的默认内容。“+ 添加”按钮允许使用“用户参数”窗口添加用户((图 6))。可以使用“用户参数”窗口中的“保存”按钮提交参数值的更改。
图 6. 基本视图用户管理:添加
保存添加或修改时
用户和组 ID 号从 UID 和 GID 1000 开始自动分配。
将创建主目录,并设置登录 shell。未设置密码的用户无法登录。基本视图中的组管理使用点击路径“身份管理”>“组”进行。
然后,将显示常规组的可点击 LDAP 对象条目,就像已经介绍的用户条目一样。这些条目的管理使用与用户管理相同的功能完成。
使用 cmsh 管理用户和组#
基本视图执行的用户管理任务也可以使用 cmsh 完成。此处运行 cmsh 会话以涵盖与基本视图的用户管理功能对应的功能。
注意
对于本文档的其余部分,在 # 提示符下执行的命令将在 linux shell 上运行,而在 % 提示符下执行的命令将在 cmsh 内部运行。
这些功能从 cmsh 的用户模式内部运行。
1[root©headnode ~]# cmsh
2[headnode]% user
3[headnode->user%
添加用户#
这对应于基本视图中“+ 添加”按钮操作的功能。在用户模式下,使用 add
命令启动将用户 userone 添加到 LDAP 目录的过程。
1[headnode->user% add userone
2[headnode->user*[userone*]]%
cmsh
进入刚刚添加的用户对象,提示符显示用户名以反映这一点。否则,进入用户对象将通过在用户模式级别输入 user userone 手动完成。
提示符中的星号是修改状态的提醒,每个星号表示在该星号的级别上存在未保存的修改属性。
modified 命令显示尚未提交的已修改对象列表。
1[headnode->user*[userone*]]% modified
2State Type Name
3------ ----------------------- ---------------
4+ User userone
5+
这对应于基本视图标准显示右上角的“未保存实体”图标显示的内容。
此时运行 show 会显示用户名条目,但 userone 的其他属性字段为空。因此,准备中的帐户虽然已修改,但尚未准备好使用。
1[headnode->user*[userone*]]% show
2Parameter Value
3------------------------------ --------------------------
4Accounts
5Managees
6Name userone
7Primary group
8Revision
9Secondary
保存修改状态#
这对应于“保存”按钮操作的功能。
在 4.2.1 中添加的用户 userone 现在作为建议的修改存在,但尚未提交到 LDAP 数据库。
现在在 userone 提示符下运行 commit
命令会将修改状态存储在用户 userone 对象级别
1[bright92->user*[userone*]]% commit
2[bright92->user[userone]]% show
3Parameter Value
4------------------------------ ---------------------------
5Accounts
6Managees
7Name userone
8Primary group userone
9Revision
10Secondary groups
11ID 1001
12Common name userone
13Surname userone
14Group ID 1001
15Login shell /bin/bash
16Home directory /home/userone
17Password *********
18Email
19Profile
20Create cmjob certificate no
21Write ssh proxy config no
22Shadow min 0
23Shadow max 999999
24Shadow warning 7
25Inactive 0
26Last change 2023/1/12
27Expiration date 2038/1/1
28Project manager <submode>
29Notes <0B>
但是,如果在用户模式级别而不是进入 userone 对象级别运行 commit,则将提交所有已修改的用户,而不是仅提交该已修改的用户。
完成提交后,用户的全部空字段将自动填充为默认值。此外,作为安全预防措施,如果提交了空字段(即“未设置”)密码条目,则不允许登录该帐户。因此,在示例中,用户 userone 的帐户在此阶段存在,但仍无法登录,直到设置密码为止。编辑密码和其他属性将在 4.2.3 中介绍。
用户主目录下的文件和目录的默认权限由 /etc/login.defs 中的 umask 设置定义,如果管理员要使用标准 useradd 命令,则应该如此。为用户设置 homedirectory 参数的路径会设置默认主目录路径。默认情况下,用户 <username> 的路径为 /home/<username>。如果 homedirectory 未设置,则默认值由 HomeRoot 指令确定。
编辑用户和组的属性#
这对应于 4.1 中“编辑”操作的功能。
在保存修改状态中,创建了用户帐户 userone,其属性之一是未设置密码。拒绝登录具有未设置密码的帐户。因此,如果要使帐户发挥作用,则必须设置密码。
使用 set 和 clear 编辑用户#
用于设置用户和组属性的工具是 set 命令。键入 set,然后使用 tab 键查看可能的完成项,或按 enter 键,将提示可以设置的几个参数,其中之一是 password。
1[headnode->user[userone]]% set
2Name:
3set - Set specific user property
4Usage:
5set [user] <parameter> <value> [<value> ...] (type 1)
6set [user] <parameter] [file] (type 2)
7Arguments:
8User
9 name of the user, omit if current is set
10Parameters: (type 1)
11commonname ........... Full name (e.g. Donald Duck)
12createcmjobcertificate Create a certificate with the cloudjob profile for cmjob
13email................ email
14expirationdate ...... Date on which the user login will be disabled
15groupid ............. Base group of this user
16homedirectory ....... Home directory
17id .................. User ID number
18inactive ............ Number of days of inactivity allowed for the user
19loginshell .......... Login shell
20name ................ User login (e.g. donald)
21password ............. Password
22profile .............. Profile for Authorization
23projectmanager ....... Project manager
24revision ............. Entity revision
25shadowmax ............ Maximum number of days for which the user password remains valid.
26shadowmin ............ Minimum number of days required between password changes
27shadowwarning ........ Number of days of advance warning given to the user before the user password expires surname .............
28Surname (e.g. Duck) writesshproxyconfig . Write ssh proxy config
29Parameters: (type 2)
30notes ................. Administrator notes
31[headnode->user[userone]]%
从 4.2.2 末尾继续会话,可以在用户上下文提示符下像这样设置密码
1[headnode->user[Userone]]% set password seteca5tr0n0my
2[headnode->user*[userone*]]% commit
3[headnode->user[Userone]]%
帐户 userone 现在可以使用了。set 命令的反义词是 clear 命令,它清除属性。
1[headnode->user[Userone]]% clear password; commit
也可以通过设置从 cmsh 内的密码生成的 LDAP 哈希(加密存储格式)在 cmsh 中设置密码。在 cmsh 中设置密码时,以 {MD5}、{CRYPT} 或 {SSHA} 开头的字符串是密码的哈希。
1[root©headnode ~]# #first create the LDAP salted SHA-1 hash of the password:
2[root©headnode ~]# /cm/local/apps/openldap/sbin/slappasswd -h {SSHA} -s seteca5tr0n0my [root©headnode ~]# {SSHA}sViD+lfSTtlIy0MuGwPGfGd5XKHgEm5d
3[root©headnode ~]# cmsh [headnode]% user use userone
4[headnode->user[userone]]% set password
5enter new password: #here and in the next line {SSHA}sViD+lfSTtlIy0MuGwPGfGd5XKHgEm5d is typed in
6retype new password:
7[headnode->user[userone]]% commit
8[headnode->user[userone]]% !ssh userone©dgx001 #now will test the password that generated the hash
9userone©dgx001 s password: #here seteca5tr0n0my is typed in
10Creating ECDSA key for ssh
11[userone©node001 ~]$ #successfully logged in with the password associated with the hash
不应通过直接 LDAP 哈希条目在 cmsh 中管理密码。
使用 append 和 removefrom 编辑组#
虽然前面的命令 set 和 clear 也适用于组,但还有两个其他命令可用于适应组的特殊性质。这些补充命令是 append 和 removefrom。它们用于向组添加额外的用户和从组中删除额外的用户。
例如,拥有一个打印机组可能很有用,以便多个用户可以共享对打印机的访问权限。为了本示例的目的(从前面会话结束的位置继续),现在将 usertwo 和 userthree 与组 printer 一起添加到 LDAP 目录
1[headnode->user[userone]]% add usertwo; add userthree
2[headnode->user*[userthree*]]% exit; group; add printer
3[headnode->group*[printer*]]% commit
4[headnode->group[printer]]% exit; exit; user
5[headnode->user*]%
在前面的示例中,分号用于将命令链接在同一行上。
应注意前面会话中发生的上下文切换。用户 userone 的上下文最终被组 printer 的上下文替换。因此,组 printer 已提交,但用户 usertwo 和 userthree 尚未提交,这由用户模式级别的星号表示。
要将用户添加到组,请使用 append 命令。可以将用户 userone、usertwo 和 userthree 的列表添加到组 printer,如下所示
1[headnode->user*]% commit
2Successfully committed 2 Users
3[headnode->user]% group use printer
4[headnode->group[printer]]% append members userone usertwo userthree; commit [headnode->group[printer]]% show
5Parameter Value
6------------------------ --------------------------
7ID 1002
8Revision
9Name printer
10Members userone,usertwo,userthree
要从组中删除用户,请使用 removefrom
命令。可以从组中删除特定用户的列表,例如 usertwo 和 userthree,如下所示
1[headnode->group[printer]]% removefrom members usertwo userthree; commit
2[headnode->group[printer]]% show
3Parameter Value
4------------------------ --------------------------
5ID 1002
6Revision
7Name printer
8Members userone
clear
命令也可用于清除成员 - 但它也会清除组中的所有额外内容
1[headnode->group[printer]]% clear members [headnode->group*[printer*]]% show
2Parameter Value
3------------------------ --------------------------
4ID 1002
5Revision
6Name printer
7Members
commit
命令在此会话中的此点有意省略,以说明如何在下一节中使用还原。
还原到未修改状态#
这大致对应于 4.1 中“还原”操作的功能。
本节从 4.2.3 末尾的会话状态继续。在那里,组 printers 的状态被清除,以便删除额外添加的成员。但是,此状态(未显示组成员的状态)尚未提交。
refresh 命令将未提交的对象还原到上次提交的状态。
这发生在它正在使用的对象的级别。例如,此处正在处理的对象是组对象 printer 的属性。在更高级别的提示符(例如,在组模式级别)运行 revert 将还原该级别及以下的所有内容。因此,要仅影响组对象 printer 的属性,请在组对象 printer 级别提示符下使用 refresh 命令。然后,它将组对象 printer 的属性还原到其上次提交的状态,并且不影响其他对象
1[headnode->group*[printer*]]% refresh [headnode->group[printer]]% show
2Parameter Value
3------------------------ --------------------------
4ID 1002
5Revision
6Name printer
7Members userone
在这里,用户 userone 重新出现,因为它们存储在上次保存中。此外,由于仅提交了组对象 printer,因此星号表示存在其他未提交的已修改对象。
删除用户#
使用 cmsh 删除用户大致对应于 4.1 中“删除”操作的功能。
remove 命令删除用户或组。添加到用户名末尾的 -d|–data 标志也会删除用户的主目录。例如,在用户模式下,命令 remove user userone -d; commit 删除用户 userone 及其主目录。
从 4.2.4 末尾会话继续,如下所示,显示了此结果
1[headnode->group[printer]]% user use userone
2[headnode->user[userone]]% remove -d; commit
3Successfully removed 1 Users
4Successfully committed 0 Users
5[headnode->user]% !ls -d /home/*| grep userone #no userone left behind
6[headnode->user]%
LDAP#
LDAP 服务在 DGX SuperPOD 内部,由头节点提供。如果集群管理器设置为高可用性配置,并且 LDAP 在头节点上内部运行,则 LDAP 服务由活动节点和被动节点提供。高可用性设置确保当头节点从被动状态更改为活动状态或反之亦然时,CMDaemon 会处理 slapd.conf 文件中所需的任何更改,并确保活动头节点使用 slapd.conf 中的 syncprov/syncrepl 配置将其 LDAP 数据库更改传播到被动节点。
令牌和配置文件#
对基本视图和 cmsh 的访问基于用户证书。
令牌可以由管理员分配给用户,以便用户可以执行管理员使用基本视图或 cmsh 执行的某些操作。每个集群管理操作都要求每个用户(包括管理员)在其配置文件中具有操作的相关令牌。DGX SuperPOD 配置默认情况下将头节点的 root 用户分配给 admin 配置文件。
用户的令牌分组到配置文件中,此类配置文件通常由管理员根据分配的功能命名。例如,如果配置文件仅允许用户读取监控数据,则可以称为 readmonitoringonly,如果仅允许用户执行电源操作,则可以称为 powerhandler。因此,每个配置文件都包含一组令牌,通常与配置文件的名称相关,并且通常分配给多个用户。配置文件作为身份验证证书的一部分存储,该证书是为证书所有者运行集群管理器身份验证操作而生成的。配置文件使用 cmsh 的配置文件模式或从“配置文件”窗口处理,该窗口可以使用点击路径“身份管理”>“配置文件”访问。
表 9显示了 cmsh 中可用的预配置配置文件。
表 9. cmsh 中的预配置配置文件
配置文件名称 |
默认允许的任务 |
非用户? |
---|---|---|
admin |
所有任务 |
否 |
cloudjob |
云作业提交 |
是 |
cmhealth |
与运行前健康相关的任务 |
是 |
cmpam |
集群管理器 PAM 任务 |
是 |
litenode |
CMDaemon Lite 任务 |
是 |
monitoringpush |
通过 JSON POST 将原始监控数据推送到 CMDaemon(《Bright 集群管理器开发人员手册》第 404 页) |
是 |
node |
与节点相关的任务,例如由节点安装程序执行的任务 |
是 |
portal |
用户门户查看 |
否 |
power |
设备电源 |
是 |
readonly |
仅查看 |
否 |
上表中的最后一列指示预配置配置文件是否为非用户配置文件。使用 cmsh,可以使用如下命令查看配置文件
1[root©headnode ~]# cmsh -c "profile; foreach * (get name; get nonuser)" | paste - -
大多数预配置配置文件是非用户配置文件。此类配置文件供集群管理器客户端使用,不应由集群管理员修改。
不是非用户配置文件的预配置配置文件是 admin、readonly 和 portal。这些可以由集群管理员修改并用于人类用户。
可以使用 profile 模式下的 list 命令在 cmsh 中查看使用可用预配置配置文件的集群管理器服务。可以在配置文件模式下查看特定配置文件的令牌和其他属性,如下所示
1[headnode->profile]% show readonly
2Parameter Value
3----------- ----------------------------------------------------------------------
4Name readonly
5Non user no
6Revision
7Services CMDevice CMNet CMPart CMMon CMJob CMAuth CMServ CMUser CMSession CMMain CMGui CMP+
8Tokens GET_DEVICE_TOKEN GET_CATEGORY_TOKEN GET_NODEGROUP_TOKEN POWER_STATUS_TOKEN GET_DE+
对于宽度不足以查看参数值的屏幕,也可以列出这些值。
1[headnode->profile]% get readonly tokens
2GET_DEVICE_TOKEN
3GET_CATEGORY_TOKEN
4GET_NODEGROUP_TOKEN
5…
可以使用 cmsh 在用户模式下为用户设置配置文件,如下所示
1[root©headnode ~]# cmsh
2[headnode]% user use conner
3[headnode->user[conner]]% get profile
4[headnode->user[conner]]% set profile readonly; commit
只有预定义配置文件的子集可供用户使用。可供用户使用的配置文件是 readonly、admin 和 portal。
修改配置文件#
可以通过向配置文件添加或删除适当的令牌来修改配置文件。例如,readonly 组默认有权访问刻录状态和刻录日志结果。删除适当的令牌会阻止该组中的用户查看这些结果。在 cmsh 中,可以从配置文件模式内完成删除,如下所示
1[root©headnode ~]# cmsh
2[headnode]% profile use readonly
3[...[readonly]]% removefrom tokens burn_status_token get_burn_log_token
4[headnode]%->profile*[readonly*]]% commit
在键入 removefrom tokens 后按 Tab 键完成有助于填写可以删除的令牌。在基本视图 (图 7) 中,可以使用点击路径“身份管理”>“配置文件”>“readonly”>“编辑”>“令牌”执行相同的删除操作。
图 7. 基本视图配置文件令牌管理
最大化结果显示中的窗口。运行搜索 burn 以显示相关令牌 BURN_STATUS_TOKEN 和 GET_BURN_LOG_TOKEN,以及它们所在的设备子组。可以从 BURN_STATUS_TOKEN 和 GET_BURN_LOG_TOKEN 复选框中删除勾选,然后可以保存更改的设置。
使用配置文件创建自定义证书#
可以创建自定义配置文件,以在 cmsh 和基本视图中包含自定义的功能集合。也可以从 cmsh 克隆配置文件。
可以基于配置文件创建具有关联到期日期的证书文件。对基本视图和 cmsh 的访问基于用户证书。证书的到期时间在创建后无法延长。之前的证书到期后,需要全新的证书。
集群生成的所有证书都由 CMDaemon 记录。
自定义证书的创建从 4.4.2.4 开始描述。创建此类证书后,可以使用 openssl 实用程序检查其结构和属性。以下示例中的关键值是到期日期(自生成时起 30 天)、通用名称 (democert)、密钥大小 (2048)、配置文件属性 (readonly) 和系统登录名 (userfour),对于此类证书
1[root©headnode]# openssl x509 -in userfourfile.pem -text -noout
2Data:
3 ...
4 Not After : Sep 21 13:18:27 2014 GMT
5Subject: ... CN=democert
6 Public-Key: (2048 bit)
7...
8X509v3 extensions:
9 1.3.6.1.4.4324.1:
10 ..readonly
11 1.3.6.1.4.4324.2:
12 ..userfour
13[root©headnode]#
但是,使用 openssl 实用程序管理证书很不方便。集群管理器提供了更方便的方法来执行此操作,如下所述。
使用 cmsh 列出证书#
在 cmsh 的 cert 模式下,listcertificates 命令列出所有集群证书及其属性
1[root©headnode ~]# cmsh
2[headnode]% cert
3[headnode-> cert]% listcertificates
4Serial Revoked Time left Profile System log in Name
5------ -------- ------------ ---------------- ---------------- --------------------
61 No 5214w 1d admin root Administrator
72 No 5214w 1d cmhealth CMHealth
83 No 5214w 1d cmhealth CMHealth
94 No 5214w 1d power Slurm
105 No 5214w 1d bootstrap CertificateRequest
116 No 5214w 1d cmpam CMPam
127 No 5214w 1d portal WebPortal
13...
使用基本视图列出证书#
列出证书的基本视图等效项是通过点击路径“身份管理”>“证书”(图 8)。
图 8. 基本视图证书列表窗口
节点证书#
在证书列表中,列出了 node-installer 为每个节点生成的供 CMDaemon 使用的节点证书。这些是看起来像这样的条目
1[headnode-> cert]% listcertificates
2Serial Revoked Time left Profile System log in Name
3------ -------- ------------ ---------------- ---------------- ------------------------------
4...
510 No 5214w 1d node fa-16-3e-74-24-dc
611 No 5214w 1d node fa-16-3e-57-2c-8e
712 No 5214w 1d node fa-16-3e-b6-c7-4a
813 No 5214w 1d node fa-16-3e-bd-cd-05
914 No 5214w 1d node fa-16-3e-0d-ab-ea
10...
创建自定义证书#
自定义证书也列在证书列表中。
与通常由系统生成的节点证书不同,自定义证书通常由配置文件中具有适当令牌的用户生成,例如具有 admin 配置文件的 root。此类用户可以使用以下方法创建包含指定配置文件的证书,如下节所述
cmsh:使用 cert 模式下的 createcertificate 操作。
基本视图:使用点击路径“身份管理”>“用户”>“编辑”>“配置文件”来设置配置文件。
为 cmsh 用户创建新证书#
在 cmsh 中创建新证书是从 cert 模式使用 createcertificate 命令完成的,该命令具有以下帮助文本
1[headnode->cert]% help createcertificate Name:
2createcertificate - Create a new certificate
3Usage:
4 createcertificate <key-length> <common-name> <organization> <organizational-unit> <locality> <state> <country> <profile> <sys-login> <days> <key-file> <cert-file>
5Arguments:
6 key-file
7 Path to key file that will be generated
8 cert-file
9 Path to pem file that will be generated
因此,例如,可以使用以下命令创建一个配置文件为 readonly,到期时间为 30 天,并以用户 userfour 的权限运行的证书文件
1[headnode->cert]% createcertificate 2048 democert a b c d ef readonly userfour 30 /home/userfour /userfourfile.key /home/userfour/userfourfile.pem
2Thu Jan 5 15:13:01 2023 [notice] headnode: New certificate request with ID: 16
3[headnode->cert]% createcertificate 2048 democert a b c d ef readonly pe er 30 /home/userfour /userfourfile.key /home/userfour/userfourfile.pem
4Certificate key written to file: /home/userfour/userfourfile.key
5Certificate pem written to file: /home/userfour/userfourfile.pem
证书列表会将其显示为类似
1[headnode-> cert]% listcertificates
2Serial Revoked Time left Profile System log in Name
3------ -------- ------------ ---------------- ---------------- ------------------------------
4...
523 No 4w 1d readonly userfour democert
设置新自定义证书的所有权:证书归生成它们的所有者所有,因此如果 root 正在运行 cmsh,则它们归 root 所有。这意味着用户 userfour 在所有权更改为该用户之前无法使用它们。
1[root©headnode ~]# cd /home/userfour [root©headnode surefour]# ls -l userfourfile.*
2-rw------- 1 root root 1704 Aug 22 06:18 userfourfile.key
3-rw------- 1 root root 1107 Aug 22 06:18 userfourfile.pem [root©headnode userfour]# chown userfour:userfour userfourfile.*
其他用户必须将其证书所有权更改为他们自己的用户名。
将用户与新自定义证书的路径关联#
然后,与此类证书关联的用户可以执行具有 readonly 配置文件的 cmdaemon 任务,并且 CMDaemon 将此类用户视为用户 userfour。与证书关联的两种方式是
pem 和密钥文件的路径可以使用 cmsh 的 -i 和 -k 选项分别设置。例如,在用户 userfour 的主目录中,对于在前面会话中生成的文件,可以使用以下密钥启动 cmsh
1[surefour©head node ~] cmsh -i userfourfile.pem -k userfourfile.key 2[headnode]% quit
如果未使用 -i 和 -k 选项,则 cmsh 将搜索默认密钥。cmsh 的默认密钥位于 $HOME 下的以下路径中,按优先级顺序排列
.cm/admin.{pem,key}
.cm/cert.{pem,key}
为基本视图用户创建自定义证书#
与 cmsh 的情况一样,具有足够权限的令牌配置文件(例如 admin 配置文件)的基本视图用户可以为自己或其他用户创建证书和密钥文件。这是通过从用户的“添加”或“编辑”对话框中关联“配置文件”的值来完成的(图 5)。
然后,证书文件 cert.pem 和 cert.key 将自动放置在用户 $HOME 下的以下路径和名称中
.cm/admin.{pem,key}
.cm/cert.{pem,key}
在使用其用户名和密码进行身份验证以运行基本视图时,使用此证书的基本视图用户将被限制为由其关联配置文件允许的任务集。
记录 CMDaemon 用户的操作#
以下指令允许控制 CMDaemon 用户操作的日志记录
CMDaemonAudit:启用日志记录。
CMDaemonAuditorFile:设置日志位置。
DisableAuditorForProfiles:禁用配置文件的日志记录。
有关这些指令的详细信息,请参见《Bright 集群管理器管理员手册》的附录 C。
使用 cm component-certificate 为节点创建证书#
cm-component-certificate 实用程序可用于为服务组件生成或更新 SSL 证书。集群管理员不应使用此实用程序,因为集群管理器管理证书,而不会在正常操作期间打扰管理员。如果要使用该实用程序,则应谨慎使用,以避免使用这些证书的组件出现故障。
此实用程序适用的 SSL 客户端组件之一是 LDAP。
选项包括设置新的 CA 并为节点创建新的证书或密钥。
计算节点 LDAP PEM 和密钥创建#
如果已配置的计算节点丢失或损坏了 LDAP 密钥或证书,则可以使用以下命令进行替换
1[root©headnode ~]# cm-component-certificate -n dgx001
2Sending request to recreate certificates for 1 node to cmd on headnode
3[(38654705666, 1)] 1 0 0
41 certificates were successfully recreated Done.
ldap.{pem,key} 文件会自动放置在 dgx001 上,默认位置由 CMDaemon LDAPCertificate 和 LDAPPrivateKey 指令指定的位置。
应删除头节点上的文件 /cm/node-installer/certificates/<dgx001-mac>/ldap.{pem,key}。
应在 dgx001 上重新启动 nslcd、sssd 和 ldap 守护程序,或者如果 dgx001 未在使用中,则更简单地重新启动 dgx001。重新启动会将头节点上的 ldap.{pem,key} 文件替换为新生成的文件。