ELK之使用docker-compose搭建elasticsearch和kibana
环境查看
docker版本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | # docker info Client: Debug Mode: false Server: Containers: 26 Running: 15 Paused: 0 Stopped: 11 Images: 312 Server Version: 19.03.8 Storage Driver: overlay2 Backing Filesystem: <unknown> Supports d_type: true Native Overlay Diff: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host ipvlan macvlan null overlay Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: 7ad184331fa3e55e52b890ea95e65ba581ae3429 runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd init version: fec3683 Security Options: seccomp Profile: default Kernel Version: 3.10.0-862.el7.x86_64 Operating System: CentOS Linux 7 (Core) OSType: linux Architecture: x86_64 CPUs: 6 Total Memory: 15.51GiB Name: local-k8s-master ID: NLMQ:VZCR:OVLO:NJMC:DZCP:LD64:3FV4:5GWY:PGRU:K5GW:K6MA:AP3G Docker Root Dir: / var /lib/docker Debug Mode: false Registry: https: //index.docker.io/v1/ Labels: Experimental: false Insecure Registries: 192.168.1.11 192.168.1.61 127.0.0.0/8 Registry Mirrors: https: //7sl94zzz.mirror.aliyuncs.com/ Live Restore Enabled: false |
docker-compose版本
1 2 3 4 5 | # docker-compose version docker-compose version 1.18.0, build 8dd22a9 docker-py version: 2.6.1 CPython version: 3.6.8 OpenSSL version: OpenSSL 1.0.2k-fips 26 Jan 2017 |
系统信息
1 2 3 4 | # cat /etc/red redhat-release redis.conf redis-sentinel.conf [root@local-k8s-master elasticsearch]# cat /etc/redhat-release CentOS Linux release 7.8.2003 (Core) |
创建docker-compose文件夹
1 | mkdir /elasticsearch/ |
创建elasticsearch数据文件夹
1 | mkdir /usr/share/elasticsearch/data/ |
设置sysctl参数
1 2 | echo "vm.max_map_count=655360" >>/etc/sysctl.conf sysctl -p |
PS:不设置启动elasticsearch报错
创建docker-compos配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | # cat /elasticsearch/docker-compose.yml version: '2.2' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:6.6.2 container_name: elasticsearch environment: - cluster.name=docker-cluster - bootstrap.memory_lock= true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ulimits: memlock: soft: -1 hard: -1 volumes: - esdata1:/usr/share/elasticsearch/data ports: - 9200:9200 networks: - esnet elasticsearch2: image: docker.elastic.co/elasticsearch/elasticsearch:6.6.2 container_name: elasticsearch2 environment: - cluster.name=docker-cluster - bootstrap.memory_lock= true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" #设置集群master节点是elasticsearch - "discovery.zen.ping.unicast.hosts=elasticsearch" ulimits: memlock: soft: -1 hard: -1 volumes: - esdata2:/usr/share/elasticsearch/data networks: - esnet kibana: image: docker.elastic.co/kibana/kibana:6.6.2 container_name: kibana environment: - ELASTICSEARCH_HOSTS= "http://elasticsearch:9200" ports: - 5601:5601 networks: - esnet volumes: esdata1: driver: local esdata2: driver: local networks: esnet: |
启动
1 2 3 | cd /elasticsearch/ #-d参数后台启动 docker-compose up -d |
查看启动
1 2 3 4 5 6 | # docker-compose ps Name Command State Ports ------------------------------------------------------------------------------------------ elasticsearch /usr/local/bin/docker-entr ... Up 0.0.0.0:9200->9200/tcp, 9300/tcp elasticsearch2 /usr/local/bin/docker-entr ... Up 9200/tcp, 9300/tcp kibana /usr/local/bin/kibana-docker Up 0.0.0.0:5601->5601/tcp |
对应主机启动了端口9200 5601
PS:本次测试es两个节点挂载的数据目录是一样的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2019-07-08 Python3之错误处理