[英]Send Kubernetes cluster logs to AWS Elasticsearch
我有一个测试Kubernetes集群,我在AWS上创建了包含Kibana用于日志管理的elasticsearch。
端点: https : //search-this-is-my-es-wuktx5la4txs7avvo6ypuuyri.ca-central-1.es.amazonaws.com
据我搜索,我必须从流利的发送日志。 然后我尝试使用本文实现DaemonSet。 没运气。
请你帮我分享一下好的文件
Kibana在Elasticsearch集群上索引的内容之上提供可视化功能。 用户可以在大量数据之上创建条形图,折线图和散点图,或饼图和贴图。
要将日志数据推送到Elasticsearch,大多数人都使用logstash / fluentd(日志/数据收集器)
结帐以下链接了解更多信息:
我遇到了类似的问题。 以下是我如何运作的全部细节。
建立:
主机问题:
我遇到的主要问题是正确定义环境变量。 对于FLUENT_ELASTICSEARCH_HOST
,我在主机URL上包含了https://
前缀。 删除后,我的连接问题就消失了。
验证:
没有为AWS ES配置用户名或密码。 根据此讨论 ,我将FLUENT_ELASTICSEARCH_USER
和FLUENT_ELASTICSEARCH_PASSWORD
值设置为null。
示例配置:
这是我的守护进程yaml文件中的完整环境变量集:
- name: FLUENT_ELASTICSEARCH_HOST
value: "vpc-MY-DOMAIN.REGION.es.amazonaws.com"
- name: FLUENT_ELASTICSEARCH_PORT
value: "443"
- name: FLUENT_ELASTICSEARCH_SCHEME
value: "https"
- name: FLUENT_ELASTICSEARCH_USER
value: null
- name: FLUENT_ELASTICSEARCH_PASSWORD
value: null
奖金:连接到Kibana
我没有设置AWS Cognito,而是在我的kubernetes集群中创建了一个nginx pod,我用它作为代理来到达Kibana。 我使用kubectl port-foward
命令从本地计算机到达nginx服务器。
这是我的nginx.conf:
server {
listen 80;
listen [::]:80;
server_name MY-DOMAIN;
location /_plugin/kibana {
proxy_pass https://vpc-MY-DOMAIN.REGION.es.amazonaws.com/_plugin/kibana;
}
location / {
proxy_pass https://vpc-MY-DOMAIN.REGION.es.amazonaws.com;
}
}
部署nginx pod后,我运行以下命令:
kubectl port-forward POD_NAME 8888:80
现在可以通过http:// localhost:8888 / _plugin / kibana访问Kibana
我仍然遇到port-foward命令的超时问题以及nginx缓存ES服务IP的问题(因为这可能会改变),但是一旦我解决了这些问题,我就会更新我的响应。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.