安装NodeD

  1. 以root用户登录各计算节点,并执行以下命令查看镜像和版本号是否正确。

    docker images | grep noded

    示例如下:

    root@ubuntu:~# docker images|grep noded 
    noded                               v3.0.RC3              ef801847acd2        29 minutes ago      133MB

  2. 将NodeD软件包解压目录(以“/home/noded”为例)下的yaml文件拷贝到K8s管理节点上任意目录(以“/home/noded”为例)。如果NodeD软件包在K8s管理节点上解压,可以不用进行拷贝操作。

    cd /home/noded
    scp noded-*.yaml root@{K8s管理节点IP地址}:/home/noded

  3. 由于K8s自带的ServiceAccount的token文件会挂载到物理机上,有暴露风险,可通过外部导入加密的KubeConfig文件替换ServiceAccount进行安全加固。根据kubectl相关指导,参考noded-{version}.yaml中ClusterRole配置的资源权限,自行生成KubeConfig文件并导入(也可以参见导入KubeConfig文件制作、导入KubeConfig文件)。
  4. 如不修改组件启动参数,可跳过本步骤。否则,请根据实际情况修改yaml文件中NodeD的启动参数。启动参数请参见表1,可执行./noded -h查看参数说明。
  5. 执行以下命令,启动NodeD。

    • 如果导入了KubeConfig证书,执行如下命令。
      kubectl apply -f noded-without-token-{version}.yaml
    • 如果没有导入KubeConfig证书,执行如下命令。
      kubectl apply -f noded-*.yaml

    启动示例如下所示:

    root@ubuntu:/home/noded# kubectl apply -f noded-without-token-v3.0.RC3.yaml
    daemonset.apps/noded created
    root@ubuntu:/home/noded# kubectl get pod -n mindx-dl
    NAME                              READY   STATUS    RESTARTS   AGE
    ...
    noded-fd6t8                       1/1     Running   0          74s
    ...

参数说明

表1 NodeD启动参数

参数

类型

默认值

说明

-heartbeatInterval

int

5

发送心跳的间隔时间,范围:(0,300],单位:秒。该间隔时间会在NodeD启动时写入节点的Annotation中,字段为noded/heartbeat-interval。

-version

bool

false

查看当前NodeD的版本号。

-logLevel

int

0

日志级别:

  • -1:debug
  • 0:info
  • 1:warning
  • 2:error
  • 3:critical

-maxAge

int

7

日志备份时间限制,范围:[7, 700],单位:天。

-logFile

string

/var/log/mindx-dl/noded/noded.log

日志文件。

说明:

单个日志文件超过20 MB时会触发自动转储功能,文件大小上限不支持修改。

-maxBackups

int

30

转储后日志文件保留个数上限,范围:(0,30],单位:个。

-kubeConfig

string

/etc/mindx-dl/noded/.config/config6

默认为导入的加密kubeConfig文件路径,也可支持用户自定义路径下的kubeConfig文件,如果默认路径不存在配置文件,才启用InClusterConfig。

说明:

该文件必须使用证书导入工具进行加密,不支持明文文件。

-h

不涉及

显示帮助信息