创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。如果未按模板创建问题,管理员有权关闭问题。
确保帖子格式清晰易读,用 markdown code block 语法格式化代码块。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。

操作系统信息
例如:虚拟机,Centos7.5,4C/8G

Kubernetes版本信息
kubectl version 命令执行结果贴在下方

Client Version: version.Info{Major:“1”, Minor:“22”, GitVersion:“v1.22.3”, GitCommit:“c92036820499fedefec0f847e2054d824aea6cd1”, GitTreeState:“clean”, BuildDate:“2021-10-27T18:41:28Z”, GoVersion:“go1.16.9”, Compiler:“gc”, Platform:“linux/amd64”}

Server Version: version.Info{Major:“1”, Minor:“22”, GitVersion:“v1.22.3”, GitCommit:“c92036820499fedefec0f847e2054d824aea6cd1”, GitTreeState:“clean”, BuildDate:“2021-10-27T18:35:25Z”, GoVersion:“go1.16.9”, Compiler:“gc”, Platform:“linux/amd64”}

容器运行时
docker version / crictl version / nerdctl version 结果贴在下方

W0104 11:07:41.196025 41333 util_unix.go:103] Using “/run/containerd/containerd.sock” as endpoint is deprecated, please consider using full url format “unix:///run/containerd/containerd.sock”.

Version: 0.1.0

RuntimeName: containerd

RuntimeVersion: 1.4.3

RuntimeApiVersion: v1alpha2

KubeSphere版本信息
例如:v3.2.1。在线安装。在已有K8s上安装。

问题是什么
报错日志是什么,最好有截图。

1.CRD的ClusterConfiguration配置文件启用外部ES的配置如下

2.修改配置后服务都已经启动成功, 发现日志工具查询是空的

注: ClusterConfiguration中配置的ES用户密码是明文的话 ,此处是空的, 如果配置的是密文的话,此处会保存提示ES账号密码错误

3.进一步查看fluent-bit容器的日志 ,发现以下错误

2022-01-04T11:15:40.862664068+08:00 [2022/01/04 03:15:40] [ warn] [engine] chunk ‘14-1641266130.525290743.flb’ cannot be retried: task_id=10, input=tail.2 > output=es.0

2022-01-04T11:15:40.903848976+08:00 [2022/01/04 03:15:40] [error] [output:es:es.0] HTTP status=401 URI=/_bulk, response:

2022-01-04T11:15:40.904000341+08:00 {“error”:{“root_cause”:[{“type”:“security_exception”,“reason”:“missing authentication credentials for REST request [/bulk]”,“header”:{“WWW-Authenticate”:"Basic realm=\“security\” charset=\“UTF-8\”"}}],“type”:“security_exception”,“reason”:“missing authentication credentials for REST request [/bulk]”,“header”:{“WWW-Authenticate”:"Basic realm=\“security\” charset=\“UTF-8\”"}},“status”:401}

2022-01-04T11:15:40.904048247+08:00

2022-01-04T11:15:40.904061130+08:00 [2022/01/04 03:15:40] [ warn] [engine] chunk ‘14-1641266130.522287924.flb’ cannot be retried: task_id=8, input=tail.2 > output=es.0

CRD的Output配置文件如下(都是默认值,未进行改动):

这是信息是说了验证错误,这是因为你的ks-installer重新执行后没有修改output文件,参考文档进行修改

https://kubesphere.io/zh/docs/faq/observability/logging/#%E5%A6%82%E4%BD%95%E5%B0%86%E6%97%A5%E5%BF%97%E5%AD%98%E5%82%A8%E6%94%B9%E4%B8%BA%E5%A4%96%E9%83%A8-elasticsearch-%E5%B9%B6%E5%85%B3%E9%97%AD%E5%86%85%E9%83%A8-elasticsearch

这里没修改你需要自己修改一下。

可以参考这个

https://github.com/wenchajun/ks-installer/blob/master/roles/ks-logging/templates/custom-output-elasticsearch-logging.yaml.j2 修改一下。如果有什么不清楚的,欢迎再询问

    DehaoCheng 非常感谢 , 参考github上的outputm模板在output上加上用户名和密码相关配置后成功了 。

    在日志系统外接ES部分的文档里没有这个output配置的说明 ,建议补充更新下文档

      16 天 后

      cpw466373776 遇到了同样的问题,在output中加入了用户名和密码也不行啊,最后怎么改好的,求教

      Feynman 第一次开启日志时没有配置外部ES,然后验证一切功能都OK;接下来再将使用内部ES改为使用外部ES,改完之后日志功能就不好使了,再把外部ES配置删了也不好使了。

      Feynman 把外部ES换成6.7版本,并设置允许自动创建索引后好用了 🤣