kubernetes实战(三):k8s v1.11.1 持久化EFK安装
1、镜像下载
所有节点下载镜像
docker pull kibana:5.6.
docker tag kibana:5.6. docker.elastic.co/kibana/kibana:5.6. docker pull dotbalo/fluentd-elasticsearch:v2.0.4
docker pull dotbalo/elasticsearch:v5.6.4 docker tag dotbalo/fluentd-elasticsearch:v2.0.4 k8s.gcr.io/fluentd-elasticsearch:v2.0.4
docker tag dotbalo/elasticsearch:v5.6.4 k8s.gcr.io/elasticsearch:v5.6.4
master01下载对应的k8s源码包
wget https://github.com/kubernetes/kubernetes/releases/download/v1.11.1/kubernetes.tar.gz
对节点进行label
[root@k8s-master01 fluentd-elasticsearch]# kubectl label node beta.kubernetes.io/fluentd-ds-ready=true --all
node/k8s-master01 labeled
node/k8s-master02 labeled
node/k8s-master03 labeled
node/k8s-node01 labeled
node/k8s-node02 labeled
[root@k8s-master01 fluentd-elasticsearch]# kubectl get nodes --show-labels | grep beta.kubernetes.io/fluentd-ds-ready
k8s-master01 Ready master 1d v1.11.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/fluentd-ds-ready=true,beta.kubernetes.io/os=linux,kubernetes.io/hostname=k8s-master01,node-role.kubernetes.io/master=
k8s-master02 Ready master 1d v1.11.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/fluentd-ds-ready=true,beta.kubernetes.io/os=linux,kubernetes.io/hostname=k8s-master02,node-role.kubernetes.io/master=
k8s-master03 Ready master 1d v1.11.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/fluentd-ds-ready=true,beta.kubernetes.io/os=linux,kubernetes.io/hostname=k8s-master03,node-role.kubernetes.io/master=
k8s-node01 Ready <none> 7h v1.11.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/fluentd-ds-ready=true,beta.kubernetes.io/os=linux,kubernetes.io/hostname=k8s-node01
k8s-node02 Ready <none> 7h v1.11.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/fluentd-ds-ready=true,beta.kubernetes.io/os=linux,kubernetes.io/hostname=k8s-node02
2、持久化卷
采用NFS作为后端存储,NAS、GFS、CEPH同理
在NFS服务器上创建es的存储目录(使用动态存储可以自动创建pv,无需此步骤)
[root@nfs es]# pwd
/nfs/es
[root@nfs es]# mkdir es{..}
三个es实例创建三个目录,以此类推
挂载测试
# 所有k8s节点
yum install nfs-utils -y
# 挂载
[root@k8s-master01 ~]# mount -t nfs 192.168.2.2:/nfs/es/es0 /mnt/
# 无问题卸载
[root@k8s-master01 ~]# umount /mnt/
3、创建集群
使用静态pv创建es集群,文件地址:https://github.com/dotbalo/k8s/
[root@k8s-master01 efk-static]# ls
efk-namespaces.yaml es2-pv.yaml fluentd-es-configmap.yaml kibana-svc.yaml
es0-pv.yaml es-service.yaml fluentd-es-ds.yaml README.md
es1-pv.yaml es-ss.yaml kibana-deployment.yaml
[root@k8s-master01 efk-static]# kubectl apply -f .
[root@k8s-master01 efk-static]# kubectl apply -f .
namespace/logging configured
service/elasticsearch-logging created
serviceaccount/elasticsearch-logging created
clusterrole.rbac.authorization.k8s.io/elasticsearch-logging configured
clusterrolebinding.rbac.authorization.k8s.io/elasticsearch-logging configured
statefulset.apps/elasticsearch-logging created
persistentvolume/pv-es- configured
persistentvolume/pv-es- configured
persistentvolume/pv-es- configured
configmap/fluentd-es-config-v0.1.1 created
serviceaccount/fluentd-es created
clusterrole.rbac.authorization.k8s.io/fluentd-es configured
clusterrolebinding.rbac.authorization.k8s.io/fluentd-es configured
daemonset.apps/fluentd-es-v2.0.2 created
deployment.apps/kibana-logging created
service/kibana-logging created
查看pv、pvc、pods
[root@k8s-master01 efk-static]# kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pv-es- 4Gi RWX Recycle Bound logging/elasticsearch-logging-elasticsearch-logging- es-storage-class 59m
pv-es- 4Gi RWX Recycle Available es-storage-class 59m
pv-es- 4Gi RWX Recycle Bound logging/elasticsearch-logging-elasticsearch-logging- es-storage-class 59m
[root@k8s-master01 efk-static]# kubectl get pvc -n logging
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
elasticsearch-logging-elasticsearch-logging- Bound pv-es- 4Gi RWX es-storage-class 1h
elasticsearch-logging-elasticsearch-logging- Bound pv-es- 4Gi RWX es-storage-class 1h
[root@k8s-master01 ~]# kubectl get pods -n logging
NAME READY STATUS RESTARTS AGE
elasticsearch-logging- / Running 3h
elasticsearch-logging- / Running 3h
fluentd-es-v2.0.4-5jqhw / Running 10m
fluentd-es-v2.0.4-fw5gk / Running 10m
fluentd-es-v2.0.4-hm2tc / Running 10m
fluentd-es-v2.0.4-nqqtm / Running 10m
fluentd-es-v2.0.4-r5fgh / Running 10m
kibana-logging--l6pvc / Running 3h
4、创建kibana的ingress
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: kibana
namespace: logging
annotations:
kubernetes.io/ingress.class: traefik
spec:
rules:
- host: kibana.net
http:
paths:
- backend:
serviceName: kibana-logging
servicePort:
访问kibana,创建index


赞助作者:

kubernetes实战(三):k8s v1.11.1 持久化EFK安装的更多相关文章
- 在Ubuntu上使用离线方式快速安装K8S v1.11.1
在Ubuntu上使用离线方式快速安装K8S v1.11.1 0.安装包文件下载 https://pan.baidu.com/s/1nmC94Uh-lIl0slLFeA1-qw v1.11.1 文件大小 ...
- Kubernetes实战(一):k8s v1.11.x v1.12.x 高可用安装
说明:部署的过程中请保证每个命令都有在相应的节点执行,并且执行成功,此文档已经帮助几十人(仅包含和我取得联系的)快速部署k8s高可用集群,文档不足之处也已更改,在部署过程中遇到问题请先检查是否遗忘某个 ...
- Kubernetes实战(二):k8s v1.11.1 prometheus traefik组件安装及集群测试
1.traefik traefik:HTTP层路由,官网:http://traefik.cn/,文档:https://docs.traefik.io/user-guide/kubernetes/ 功能 ...
- kubernetes实战(三十):CentOS 8 二进制 高可用 安装 k8s 1.17.x
1. 基本说明 本文章将演示CentOS 8二进制方式安装高可用k8s 1.17.x,相对于其他版本,二进制安装方式并无太大区别. 2. 基本环境配置 主机信息 192.168.1.19 k8s-ma ...
- CentOS 7.4 安装 K8S v1.11.0 集群所遇到的问题
0.引言 最近打算将现有项目的 Docker 部署到阿里云上面,但是之前是单机部署,现在阿里云上面有 3 台机器,所以想做一个 Docker 集群.之前考虑是用 Docker Swarm 来做这个事情 ...
- kubeadm安装kubernetes V1.11.1 集群
之前测试了离线环境下使用二进制方法安装配置Kubernetes集群的方法,安装的过程中听说 kubeadm 安装配置集群更加方便,因此试着折腾了一下.安装过程中,也有一些坑,相对来说操作上要比二进制方 ...
- kubernetes实战(十六):k8s高可用集群平滑升级 v1.11.x 到v1.12.x
1.基本概念 升级之后所有的containers会重启,因为hash值会变. 不可跨版本升级. 2.升级Master节点 当前版本 [root@k8s-master01 ~]# kubeadm ver ...
- kubernetes实战(二十六):kubeadm 安装 高可用 k8s v1.16.x dashboard 2.x
1.基本配置 基本配置.内核升级.基本服务安装参考https://www.cnblogs.com/dukuan/p/10278637.html,或者参考<再也不踩坑的Kubernetes实战指南 ...
- Kubernetes实战指南(三十四): 高可用安装K8s集群1.20.x
@ 目录 1. 安装说明 2. 节点规划 3. 基本配置 4. 内核配置 5. 基本组件安装 6. 高可用组件安装 7. 集群初始化 8. 高可用Master 9. 添加Node节点 10. Cali ...
随机推荐
- C++字符串类型和数字之间的转换
转载:http://www.cnblogs.com/luxiaoxun/archive/2012/08/03/2621803.html 1.字符串数字之间的转换 字符串---字符数组(1)string ...
- 【java 类加载的深入研究1】loadClass()的研究
1.开门见山 以前曾经看到过一个java的面试题,当时觉得此题很简单,可是自己把代码运行起来,可是结果并不是自己想象的那样.题目如下: class SingleTon { private static ...
- write solid code 零散(原文)
整理下目录,看了这个文件,幸好未删除. 以下是<write solid code>中的原文摘录. 1.How could I have prevented this bug? 2.How ...
- Linux /proc/loadavg(平均负载)
from : http://hi.baidu.com/mengyun8/blog/item/bd424531451b98e71a4cffc0.html 一.什么是系统平均负载(Load average ...
- MVC源码
http://aspnetwebstack.codeplex.com/ MVC源码
- 在(MRv1)中JobTracker工作方式
在 Hadoop MapReduce 中,JobTracker 具有两种不同的职责: 管理集群中的计算资源,这涉及到维护活动节点列表.可用和占用的 map 和 reduce slots 列表,以及依据 ...
- grep递归查找子目录
想要在各种文件里面找一个指定的文本,本来的方法太土了,在网上搜了一下,发现个好的方法,不过也有些问题.原文如下: 第一个,这个是看别人脚本的,配合find实现,-maxdepth指定深度,如果查找到底 ...
- linux系统socket通信编程2
一.概述 TCP(传输控制协议)和UDP(用户数据报协议是网络体系结构TCP/IP模型中传输层一层中的两个不同的通信协议. TCP:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流 ...
- Android MemInfo 各项的意义(转)
http://gdgzzch.blog.163.com/blog/static/37640452201371483147573/ http://stackoverflow.com/questions/ ...
- Python的反序列化漏洞
最近准备研究一下反序列化漏洞,但是Java代码看不懂,所以先找一个python的看起,毕竟这种漏洞在python.php中一样存在,等研究明白了基本原理后去看java的反序列化漏洞. python反序 ...