ES日志收集部署手册

3 篇文章 0 订阅
ES日志收集部署手册
1. 环境准备(前提:kubectl可用)
使用helm安装部署
下载
wget https://get.helm.sh/helm-v3.8.1-linux-amd64.tar.gz
解压
tar xvf helm-v3.8.1-linux-amd64.tar.gz
移动
mv ./linux-amd64/helm   /usr/local/bin/helm
下载ES部署文件
git clone git@github.com:elastic/helm-charts.git
修改内容,已修改好放在压缩文件中
文件里下载

下载Fluentd部署文件
git clone https://github.com/kokuwaio/helm-charts.git
修改内容,已修改好放在压缩文件中
文件里下载

部署本地主机存储类
kubectl apply -f https://raw.githubusercontent.com/rancher/local-path-provisioner/master/deploy/local-path-storage.yaml

部署可删除存储类
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: local-path-delete
provisioner: rancher.io/local-path
volumeBindingMode: WaitForFirstConsumer
reclaimPolicy: Delete
部署可保存持久类
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: local-path-retain
provisioner: rancher.io/local-path
volumeBindingMode: WaitForFirstConsumer
reclaimPolicy: Retain
2. 部署ES
执行部署命令
elastic/elasticsearch/examples/multi/make test
如果有问题,可以使用make purge删除资源
如果要删除pvc,可以使用make delpvc
默认密码是elastic/Admin123
验证:部署好后健康检查
curl -k -u elastic:Admin123  https://ip:9200/_cluster/health?pretty
3. 部署Kibana
为kibana_system用户设置密码,用于kibana和es的连接
curl -k -XPUT -u  elastic:Admin123 https://ip:9200/_security/user/kibana_system/_password?pretty -H "Content-Type: application/json" -d '{ "password": "Admin123" }'
执行部署命令
elastic/kibana/examples/security/meke test
如果有问题,可以使用make purge删除资源
验证:登录
使用elastic/Admin123登录
4. 部署Fluentd
执行部署命令
fluentd/charts/fluentd-elasticsearch/make test
如果有问题,可以使用make purge删除资源
5. 对ES部署配置文件的说明
使用xpack认证,不需要自动生成证书
createCert: false
使用本地存储
storageClassName: "local-path-delete"或storageClassName: "local-path-retain"
协议使用https
protocol: https
httpPort: 9200
transportPort: 9300
部署之前使用了一个ES镜像,自动生成了p12文件,并创建了3个secret
kubectl -n $(NAMESPACE) create secret generic elastic-certificates --from-file=elastic-certificates.p12
kubectl -n $(NAMESPACE) create secret generic elastic-certificate-pem --from-file=elastic-certificate.pem
kubectl -n $(NAMESPACE) create secret generic elastic-certificate-crt --from-file=elastic-certificate.crt
启动时挂载p12文件的secret
secretMounts:
  - name: elastic-certificates
    secretName: elastic-certificates
    path: /usr/share/elasticsearch/config/certs
分成三个文件分别部署master、data、client
部署的自动验证使用goss,会通过https协议,根据返回的结果验证es安装是否正常
Goss的../../../helpers/examples.mk文件加NameSpace参数,可以指定NS的验证
6. 对Kibana部署配置文件的说明
配置ES节点
elasticsearchHosts: "https://multi-master:9200"
用户名密码在里面配置好kibana_system/Admin123,使用multi-kibana-credentials读取
协议使用https
证书通过secret elastic-certificate-pem加载进来
配置中文语言:i18n.locale: "zh-CN"
7. 对fluentd部署文件的说明
配置es认证,把auth打开,使用elastic/Admin123
收集容器日志的配置文件如下:
fluentd/charts/fluentd-elasticsearch/templates/configmaps.yaml
















  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值