logo NodeSeekbeta

容器哪吒探针cgent更新适配哪吒v1

  • 第一次用哪吒,参照楼主仓库的说明,摸索用下来给两个建议:

    1. 增加DEBUG环境变量,并默认开启:目前只有启动时报错才会下输出日志,运行时报错不会输出日志。
    2. 环境变量中,SERVER为域名时,建议根据TLS选项增加默认端口到生成的配置文件,TLS=true时增加端口为443,TLS=false时增加端口为80。亦或者在github文档上增加端口的说明,目前是只有hostname/ip的说明
  • @undertone #91 感谢反馈,首先声明一下,cgent是完全clone了哪吒探针agent的仓库进行GitHub action搭建并上传仓库的这么一套流程,因此cgent和agent的使用方法是完全一致的。另一个建议也特别棒,适合像我一样的懒人,不过多数时候端口号都是非80/443,避免这样自动填入会同样避免干涉到原本80/443的业务。

  • @Volt #92
    另外还有个问题,就是环境变量更改后,重启容器生成的配置是不会自动更新的。
    目前的环境变量都是跟配置文件一对一的,理想的情况应该是除了UUID以外(目前没有这个变量),其他环境变量变更后自动同步到配置文件

  • @undertone #93

    #!/bin/sh
    CONFIG_FILE="/root/config.yml"
    if [ ! -f "$CONFIG_FILE" ]; then
        UUID=$(uuidgen)
        cat <<EOF > "$CONFIG_FILE"
    client_secret: ${SECRET}
    server: '${SERVER}'
    tls: ${TLS}
    uuid: ${UUID}
    EOF
    fi
    exec /cgent -c="$CONFIG_FILE"
    

    从代码可以看出,目前是通过是否存在配置文件来决定是否应用环境变量及新建uuid。这样设计的初衷是开箱即用,同时避免不必要的因uuid作为环境变量所产生的可能的输入错误。至于其他变量的更新,可以按照停容器、改参数、启容器的顺序进行。不知道这样解释是否合理呢

  • @mcdull #90 容器的维护和更新按照最小化原则由docker或者podman统一管理,这样保证了灵活性,但会增加工作量

  • @Volt #94
    能理解,很合理
    xhj028
    感谢楼主的开源制作,我打算自己fork下根据自己的需求改一改

  • @undertone #96 感谢支持,只需要改刚才那里的逻辑就可以

  • 已升级v1.12.1

  • @Volt #98 容器化之后哪些数据拿不到?

  • @qiying #99 除了宿主机os发行版信息之外都能拿到

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有61579位seeker

🎉欢迎新用户🎉