上一节说明了容器化的背景及各组件版本的依赖关系,大体了解了Elsticsearch容器化的方案,这一节就开始对基础环境进行部署,以及需要注意的关键点。
ECK部署
crds.yaml
为定义各个对象的CRD文件,operator.yaml
为operator以及RBAC规则文件。
安装自定义CRD对象及operator:
Go
kubectl create -f https://download.elastic.co/downloads/eck/2.8.0/crds.yaml
kubectl apply -f https://download.elastic.co/downloads/eck/2.8.0/operator.yaml
观察operator对象日志:
Go
kubectl -n elastic-system logs -f statefulset.apps/elastic-operator
注意:ECK 运算符默认在elastic-system
命名空间中运行。建议您为工作负载选择专用命名空间,而不是使用elastic-system
或default
命名空间。
ECK落地关键点
这一步,就开始考虑按照实际业务,以来ECK对elsticsearch进行落地,开始考虑各个方面工作的可实施方案。
这里以我司的落地经验,总结了以下25个关键点,供大家结合自己业务来进行适当的评估参考。
- ES集群是否启动TLS
- ES是否启动认证
- ES节点角色拆分方式
- ES健康检查设置检测协议
- kibana关闭https
- ECK方式加入现有ES集群
- ECK、ECS共存集群读写数据
- ECK安装ES插件
- 集群数据无损迁移
- 模拟pod异常恢复流程
- 模拟宿主机异常
- 验证数据盘随pod销毁时释放
- 已有ECK增加ES角色
- ES镜像私有化
- 容器亲和性策略
- ES节点扩缩容
- 磁盘扩缩容
- 流量接入
- 多环境划分
- 成本归属
- 集群配置更新策略
- kibana集群访问方式
- 节点规格规划
- 节点绑定
- 数据盘选型
- 配置管理
参考文档
官方安装文档:https://www.elastic.co/guide/en/cloud-on-k8s/2.8/k8s-deploy-eck.html