[k8s]elk架构设计-k8s集群里搭建

elasticsearch和mysql的对比

https://blog.csdn.net/qq_21383435/article/details/79323383
806469-20180628201611715-1729389674.png

Mapping ~ Schema

master: 负责在集群范围内创建/删除索引,将分片分配给这些节点.
data:   用来保存数据和倒排索引,node.data=ture
client: 将节点配置为客户端节点,并充当负载平衡器,将传入的请求路由到集群中的不同节点。node.master和node.data设置为false

https://blog.csdn.net/sdksdk0/article/details/78469190

Index templates

索引可使用预定义的模板进行创建,这个模板称作Index templates。模板设置包括settings和mappings,通过模式匹配的方式使得多个索引重用一个模板,例如:


curl -XPUT localhost:9200/_template/template_1 -d '
{
    "template" : "te*",
    "settings" : {
        "number_of_shards" : 1
    },
    "mappings" : {
        "type1" : {
            "_source" : {"enabled" : false }
        }
    }
}

elk设计架构

参考
k8sgithub上 https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsearch

806469-20180111094807347-1088996354.png

Elasticsearch最佳实践建议将这些节点分成三个角色:

Master 节点 - 仅用于集群管理,没有数据,没有HTTP API
Client 节点 - 用于客户端使用,无数据,  使用HTTP API
Data   节点 - 旨在存储和索引数据,      没有HTTP API

分为 管理区 存储区 读写区
9e792b8fgy1fncfdiipz2j20f208hq33.jpg

定制镜像
- es
0. 我把镜像推到了dockerhub: lanny/quay.io_pires_docker-elasticsearch-kubernetes:5.6.0
1. 镜像里用到的yaml: https://github.com/lannyMa/docker-elasticsearch-kubernetes
2. 可以安装自定义插件后重新build

- kibana
0. 用到这个人的这个镜像 cfontes/kibana-xpack-less:5.5.0 https://hub.docker.com/r/cfontes/kibana-xpack-less/
   这个人的git(包含了elk的k8s yaml): https://github.com/cfontes/kubernetes-elasticsearch-cluster


- k8s的elk集群的yaml
https://github.com/pires/kubernetes-elasticsearch-cluster
镜像到这个地址: https://github.com/lannyMa/kubernetes-elasticsearch-cluster

内含elk 普罗 harbor的yaml,比较实用
https://github.com/cnych/k8s-repo
集群yaml里搜HTTP_ENABLE,统一打开head访问权限

es-master.yaml

        - name: HTTP_ENABLE
          value: "true"
        - name: HTTP_CORS_ALLOW_ORIGIN
          value: "*"
创建集群

创建pv

$ cat es-data_claim.yaml 
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: opspvc
  namespace: kube-ops
  annotations:
    volume.beta.kubernetes.io/storage-class: "managed-nfs-storage"
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 1Gi

9e792b8fgy1fncf0biasqj2074057wec.jpg
先创建svc类型

后依次创建 data master client kibana
9e792b8fgy1fncf1uhbq1j20xb063jrr.jpg

访问es api
9e792b8fgy1fncf2pcso7j209b06ugll.jpg

806469-20180111100734363-159596385.png

访问kibana
9e792b8fgy1fncf33otatj20jp0c0my4.jpg

打开kibana,插入示例数据
PUT _bulk
{"index":{"_index":"lagou","_type":"job","_id":"1"}}
{"title":"python分布式爬虫开发","salary_min":15000,"city":"深圳","company":{"name":"腾讯","company_addr":"深圳市软件园"},"publish_date":"2017-11-11","comments":15}
{"index":{"_index":"lagou","_type":"job","_id":"2"}}
{"title":"django开发","salary_min":15000,"city":"上海","company":{"name":"阿里","company_addr":"广州市软件园"},"publish_date":"2017-11-12","comments":20}
打开head查看数据
 docker run -d -v /etc/localtime:/etc/localtime --restart=always -p 9100:9100 mobz/elasticsearch-head:5

查看数据
9e792b8fgy1fncemmr462j20q60hddh8.jpg

todo:Curator(馆长) 管理索引的工具

Curator的主要用途:

name用途
Alias别号
Allocation分配
Close
Cluster Routing群集路由
Create Index创建索引
Delete Indices删除索引
Delete Snapshots删除快照
forceMergeforceMerge
Index Settings索引设置
Open打开
Reindex重新编制
Replicas副本
Restore恢复
Rollover滚下
Shrink收缩
Snapshot快照

elk整体链条架构

806469-20180206103431060-436227076.png

es版本兼容

    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"

curl http://10.100.32.137:9200


{
  "name" : "es-data-5c5969967-wb2b8",
  "cluster_name" : "myesdb",
  "cluster_uuid" : "qSps-b9dRI2ngGHBguJ44Q",
  "version" : {
    "number" : "6.3.0",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "424e937",
    "build_date" : "2018-06-11T23:38:03.357887Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值