07 2021 档案
摘要:Metricbeat包的安装及简单使用 Metricbeat包的安装及简单使用 系统数据采集 Python -> ES -> Grafana metricbeat的安装 metricbeat -> logstash -> ES -> Grafana系统监控 Metricbeat解决的问题:手动写Py
阅读全文
摘要:Grafana的安装和读取ES数据 模拟es数据产生sjgtest.py import time import datetime from elasticsearch import Elasticsearch es = Elasticsearch(['http://elastic:sjgpwd@19
阅读全文
摘要:原理待补充: kafka依赖于zookeeper集群。 都是基于java 由于源码安装jdk 未声明bin下java 在各自server配置文件中声明 JAVA_HOME=/usr/local/jdk1.8.0_241 引入kafka缓存日志之ZK搭建 之前架构 Filebeat(多台) -> Lo
阅读全文
摘要:filebeat工作原理 ilebeat是本地文件的日志数据采集器。 作为服务器上的代理安装,Filebeat监视日志目录或特定日志文件,tail file,并将它们转发给Elasticsearch或Logstash进行索引、kafka 等。 filebeat单纯采集如果logstash sprun
阅读全文
摘要:Logstash工作原理 Logstash事件处理有三个阶段:inputs → filters → outputs。是一个接收,处理,转发日志的工具。支持系统日志,webserver日志,错误日志,应用日志,总之包括所有可以抛出来的日志类型。 如上图,Logstash的数据处理过程主要包括:Inpu
阅读全文
摘要:kibane安装及基础使用 Kibana的安装 Kibana包含前端展示、es操作简化 yum localinstall kibana-7.6.2-x86_64.rpm -y Kibana配置修改kibana.yml,连接es的用户名密码需要正确 server.port: 5601 server.h
阅读全文
摘要:Elasticsearch-基础介绍及索引原理分析 介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,
阅读全文
摘要:logstash logstash基于JRuby实现,可以跨平台运行在JVM上 优点: 主要的优点就是它的灵活性,这还主要因为它有很多插件。然后它清楚的文档已经直白的配置格式让它可以再多种场景下应用。这样的良性循环让我们可以在网上找到很多资源,几乎可以处理任何问题。 劣势: Logstash 致命的
阅读全文
摘要:ELK集群: 主机节点采用日志采集工具如filebeat,logstash等通过日志目录文件进行采集并简单过滤,传输到kafka集群做队列缓存,可以增加一层缓存,降低直接传输带来的延迟数据丢失等。kafka使用zookeeper进行存储。 logstash通过队列去kafka取对应的队列数据,进行过
阅读全文
摘要:吞吐量(TPS)、QPS、并发数、响应时间(RT)概念 开发的原因,需要对吞吐量(TPS)、QPS、并发数、响应时间(RT)几个概念做下了解,查自百度百科,记录如下:1. 响应时间(RT) 响应时间是指系统对请求作出响应的时间。直观上看,这个指标与人对软件性能的主观感受是非常一致的,因为它完整地记录
阅读全文
摘要:传统日志与kubernetes日志对比 传统服务 目录固定 重启不会丢失 不用关注标准与错误日志输出 容器服务 节点不固定 重启服务会漂移 需要关注标准与错误日志输出 日志文件重启会丢失 日志目录不固定 k8s中的日志处理 常见日志采集方案: 1.远程日志 将容器中日志直接写入远程kafka、es等
阅读全文
摘要:云计算模型 云计算的模型主要有三种。每种模型代表着云计算堆栈的一个独特部分。 基础设施即服务 (IaaS) 基础设施即服务有时缩写为 IaaS,包含云 IT 的基本构建块,通常提供对联网功能、计算机(虚拟或专用硬件)以及数据存储空间的访问。基础设施即服务提供最高等级的灵活性和对 IT 资源的管理控制
阅读全文
摘要:cicd的结合组件 需要代码仓库如gitlab、github。包构建工具Maven等,持续集成工具如jenkins,github/cicd。结合自己脚本实现重复式任务自动化。 传统服务发布流程: 提交代码到仓库使用maven工具构建包,发布到指定服务器上(正式测试等),调用脚本或ansible执行发
阅读全文
摘要:什么是ServiceMesh?什么是Istio? 微服务的一种概念,随着微服务的来临,衍生出一系列的问题,比如服务发现、负载均衡、路由、流量控制、服务间通讯的可靠性、微服务的监控等一系列的问题。使用api网关解决了以上的一部分问题,apiserver存在单点问题,实现起来随着后端服务的增多也会越来越
阅读全文
摘要:共享存储 docker默认是无状态,当有状态服务时需要用到共享存储 为什么需要共享存储: 1.最常见有状态服务,本地存储有些程序会把文件保存在服务器目录中,如果容器重新启停则会丢失。 2.如果使用volume将目录挂载到容器中,涉及到备份及高可用问题。如果宿主机出现问题则会造成不可用状态。 kube
阅读全文
摘要:kubelet 主要功能 Pod 管理 在 kubernetes 的设计中,最基本的管理单位是 pod,而不是 container。pod 是 kubernetes 在容器上的一层封装,由一组运行在同一主机的一个或者多个容器组成。如果把容器比喻成传统机器上的一个进程(它可以执行任务,对外提供某种功能
阅读全文
摘要:Namespace 集群的共享与隔离 语言中namespace概念 namespace核心作用隔离 以上是隔离的代码。namespace隔离的是: 1.资源对象的隔离:Service、Deployment、Pod 2.资源配额的隔离:Cpu、Memory 创建命名空间 kubectl create
阅读全文
摘要:定时任务迁移kubernetes 服务迁移步骤 1.安装好java 2.安装好maven 项目打包 mvn package 测试传参运行 java -cp cronjob-demo-1.0-SNAPSHOT.jar com.mooc.demo.cronjob。Main 编辑Dockfile FROM
阅读全文
摘要:ingress官方文档地址:http://docs.kubernetes.org.cn/ https://feisky.gitbooks.io/kubernetes/content/plugins/ingress.html 什么是 Ingress? 通常情况下,service和pod的IP仅可在集群
阅读全文
摘要:kubernetes访问场景 1.集群内部访问 2.集群内部访问外部 3.集群外部访问内部 1.集群内部访问 1.pod之间直接ip通讯(利用calico通过路由表经过三层将ip流量转发)由于容器之间ip并不固定不推荐使用ip直连 2.pod通过service-ip访问后端pod(service为虚
阅读全文
摘要:harbor架构 下载地址https://github.com/goharbor/harbor/ 高可用架构 解压压缩包 tar -xvf harbor-offline-installer-v1.10.3.tgz 进入harbor目录修改配置文件 执行sh install.sh安装harbor 通过
阅读全文
摘要:etcd安装 etcd 是基于 Raft 的分布式 key-value 存储系统,由 CoreOS 开发,常用于服务发现、共享配置以及并发控制(如 leader 选举、分布式锁等)。kubernetes 使用 etcd 存储所有运行数据。 本文档介绍部署一个三节点高可用 etcd 集群的步骤: 下载
阅读全文
摘要:1 架构 从etcd的架构图中我们可以看到,etcd主要分为四个部分。 HTTP Server: 用于处理用户发送的API请求以及其它etcd节点的同步与心跳信息请求。 Store:用于处理etcd支持的各类功能的事务,包括数据索引、节点状态变更、监控与反馈、事件处理与执行等等,是etcd对用户提供
阅读全文
摘要:概述 作为服务发现机制的基本功能,在集群内需要能够通过服务名对服务进行访问,那么就需要一个集群范围内的DNS服务来完成从服务名到ClusterIP的解析。 DNS服务在kubernetes中经历了三个阶段。 第一阶段,在kubernetes 1.2版本时,dns服务使用的是由SkyDNS提供的,由4
阅读全文
摘要:Flannel: 最成熟、最简单的选择 Calico: 性能好、灵活性最强,目前的企业级主流 Canal: 将Flannel提供的网络层与Calico的网络策略功能集成在一起。 Weave: 独有的功能,是对整个网络的简单加密,会增加网络开销 Kube-router: kube-router采用lv
阅读全文
摘要:kube-proxy 每台机器上都运行一个 kube-proxy 服务,它监听 API server 中 service 和 endpoint 的变化情况,并通过 iptables 等来为服务配置负载均衡(仅支持 TCP 和 UDP)。 kube-proxy 可以直接运行在物理机上,也可以以 sta
阅读全文
摘要:1.list-watch是什么 List-watch 是 K8S 统一的异步消息处理机制,保证了消息的实时性,可靠性,顺序性,性能等等,为声明式风格的API 奠定了良好的基础,它是优雅的通信方式,是 K8S 架构的精髓。 2. List-Watch 机制具体是什么样的 Etcd存储集群的数据信息,a
阅读全文
摘要:Controller Manager Controller Manager 由 kube-controller-manager 和 cloud-controller-manager 组成,是 Kubernetes 的大脑,它通过 apiserver 监控整个集群的状态,并确保集群处于预期的工作状态。
阅读全文
摘要:API Server kube-apiserver 是 Kubernetes 最重要的核心组件之一,主要提供以下的功能 提供集群管理的 REST API 接口,包括认证授权、数据校验以及集群状态变更等 提供其他模块之间的数据交互和通信的枢纽(其他模块通过 API Server 查询或修改数据,只有
阅读全文
摘要:三种安装方法: 1.kubeadm 2.kubespray 3.二进制安装 kubespray安装kubernetes集群 优点: 1.kuberspray对比kubeadm更加简洁内部集成了kubeadm与ansible 缺点: 1.全程自动化排错成本高 2.主节点也要装了工作节点,如不需要使用可
阅读全文
摘要:containerd概念: containerd主要是namebases与k8s docker不同 存放路径不一致 没有默认仓库 容器运行时: 2020年未kubernetes宣布不再支持docker docker由libcontainer及containerd组成将libcontainer捐赠给O
阅读全文
摘要:每个微服务通过 Docker 进行发布,随着业务的发展,系统中遍布着各种各样的容器。于是,容器的资源调度,部署运行,扩容缩容就是我们要面临的问题。 基于 Kubernetes 作为容器集群的管理平台被广泛应用,今天我们一起来看看 Kubernetes 的架构中有那些常用的组件以及运行原理。 Kube
阅读全文
摘要:了解kubertnetes kubernetses在古希腊语中意味着舵手的意思,docker把自己比作一条鲸鱼承载着各种集装箱货物在大海遨游。谷歌就要用kubernetes掌握这条鲸鱼带领着他的航行方向。 kubetnetes是一个open-source system 开源系统,是为了自动化,让我们
阅读全文
摘要:创建k8s User Account 使用openssl方法创建普通用户 准备工作 1 2 3 4 mkdir /root/pki/ 将k8s ca.pem ca-key.pem 证书拷贝到此目录 cp /opt/kubernetes/ssl/ca-key.pem /root/pki/ cp /op
阅读全文
摘要:kubernetes命令 kubectl get pod --all-namespaces查看pod节点 kubectl delete -n service/pods/deplay 删除指定内容 kubectl describe ingress -n name 查看nginx具体信息 kubectl
阅读全文