自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Docker填坑大全

1. docker报【Error response from daemon: Error running DeviceCreate (createSnapDevice) dm_task_run failed】错 解决办法: # systemctl stop docker.service # ...

2019-11-18 14:45:47 60 0

转载 MapReduce的核心运行机制

正文 概述 一个完整的 MapReduce 程序在分布式运行时有两类实例进程: 1、MRAppMaster:负责整个程序的过程调度及状态协调 2、Yarnchild:负责 map 阶段的整个数据处理流程 3、Yarnchild:负责 reduce 阶段的整个数据处理流程 以上两个阶段...

2019-07-20 11:40:26 48 0

原创 MapReduce与YARN调度图

首先让我们来重温一下 hadoop 的四大组件: HDFS:分布式存储系统 MapReduce:分布式计算系统 YARN:hadoop 的资源调度系统 Common:以上三大组件的底层支撑组件,主要提供基础工具包和 RPC 框架等 MapReduce 是一个分布式运算程序的编程框架,是用...

2019-07-20 11:26:51 34 0

原创 MapReduce相关问题思考

1、Shuffle的定义是什么? 每个map task都有一个内存缓冲区,存储着map的输出结果,当缓冲区快满的时候需要将缓冲区的数据以一个临时文件的方式存放到磁盘,当整个map task结束后再对磁盘中这个map task产生的所有临时文件做合并,生成最终的正式输出文件,然后等待reduce ...

2019-07-20 11:18:00 51 0

转载 Zookeeper的ZAB协议与Paxos协议区别

一、联系 1. 两者构建的系统都有一个Leader角色,Leader进程负责协调多个Follower进程的运行 2. Leader进程都会等待超过半数的Follower进程做出正确的分亏后,才会将一个提案进行提交 3. 在ZAB协议中每个Proposal中都包含一个epoch值,用来代表当前的Le...

2019-07-19 14:37:10 207 0

原创 HDFS简单介绍

一.HDFS产出背景及定义 1>.HDFS产生背景   随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理磁盘中,但是不方便维护和管理,迫切需求一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS只是分布式文件管理系统中的一种。 2>...

2019-07-16 14:53:45 34 0

转载 如何落地全球最大 Kubernetes 生产集群(摘抄)

鲍永成 京东基础架构部技术总监, DevOps 标准核心编写专家 前言 JDOS 就是京东数据中心操作系统,随着数据中心规模不断的扩大,我们需要对数据中心做综合的考虑。所以一开始就先说数据中心的层面,大家知道数据中心里面有服务器、网络、基础软件,还有就是部署业务系统。 ...

2019-03-11 16:24:41 203 0

转载 redis连接超时原因(tcp_backlog)

TCP中backlog简介 Linux内核为每个TCP服务器程序维护两条backlog队列,一条是TCP层的未连接队列,一条是应用层的已连接队列,分别对应net.ipv4.tcp_max_syn_backlog和net.core.somaxconn两个内核参数。 一个客户端连接在完成TCP 3...

2019-03-11 16:12:33 2297 0

转载 经典案例复盘——运维专家讲述如何实现K8S落地(摘抄)

以下是运满满K8s容器化进程记录,摘抄一下,方便以后查阅。 背景介绍 运满满自开始微服务改造以来,线上线下已有数千个微服务的 Java 实例在运行中。这些 Java 实例部署在数百台云服务器或虚机上,除少数访问量较高的关键应用外,大部分实例均混合部署。 这些实例的管理,采用自研平台结合开源软...

2019-03-07 11:22:44 182 0

转载 Vmstat命令详解

一、前言 vmstat命令:用来获得有关进程、虚存、页面交换空间及CPU活动的信息。这些信息反映了系统的负载情况 二、虚拟内存运行原理 在系统中运行的每个进程都需要使用到内存,但不是每个进程都需要每时每刻使用系统分配的内存空间。当系统运行所需内存超过实际的物理内存,内核会释放某些进程所占用但...

2019-02-28 16:28:56 52 1

原创 Kubernetes StatefulSet 详解

StatefulSet 作为 Controller 为 Pod 提供唯一的标识。它可以保证部署和 scale 的顺序。 使用案例参考:kubernetes contrib - statefulsets,其中包含zookeeper和kakfa的statefulset设置和使用说明。 Statef...

2019-02-15 17:43:56 1022 1

转载 Kafka文件的存储机制

同一个topic下有多个不同的partition,每个partition为一个目录,partition命名的规则是topic的名称加上一个序号,序号从0开始。 每一个partition目录下的文件被平均切割成大小相等(默认一个文件是500兆,可以手动去设置)的数据文件, 每一个数据文件都...

2019-02-01 16:06:53 68 0

转载 Kubernetes traefik Ingress

Ingress简介 如果你还不了解,ingress是什么,可以先看下我翻译的Kubernetes官网上ingress的介绍Kubernetes Ingress解析。 理解Ingress 简单的说,ingress就是从kubernetes集群外访问集群的入口,将用户的URL请求转发到不同的se...

2019-01-31 19:18:03 110 0

转载 kafka中partition和消费者对应关系

1个partition只能被同组的一个consumer消费,同组的consumer则起到均衡效果 消费者多于partition topic: test 只有一个partition 创建一个topic——test, bin/kafka-topics.sh --create --zookeep...

2019-01-31 11:32:48 110 0

转载 Kafka运维填坑

前提: 只针对Kafka 0.9.0.1版本; 说是运维,其实偏重于问题解决; 大部分解决方案都是google而来, 我只是作了次搬运工; 有些问题的解决方案未必一定是通用的, 若应用到线上请慎重; 如有疏漏之处, 欢迎大家批评指正; 列表: Replica无法从leader同步消息 ...

2019-01-31 09:38:47 317 0

转载 在 Kubernetes 上搭建 EFK 日志收集系统

Kubernetes 中比较流行的日志收集解决方案是 Elasticsearch、Fluentd 和 Kibana(EFK)技术栈,也是官方现在比较推荐的一种方案。 Elasticsearch 是一个实时的、分布式的可扩展的搜索引擎,允许进行全文、结构化搜索,它通常用于索引和搜索大量日志数据,也...

2019-01-28 18:20:46 341 0

转载 Kubernetes 服务发布方式详解

在Kubernetes中有几种不同的方式发布应用,所以为了让应用在升级期间依然平稳提供服务,选择一个正确的发布策略就非常重要了。 选择正确的部署策略是要依赖于我们的业务需求的,下面我们列出了一些可能会使用到的策略: 重建(recreate):停止旧版本部署新版本 滚动更新(rol...

2019-01-28 18:18:03 225 0

转载 Grafana 在 Kubernetes 中的使用

安装 grafana 是一个可视化面板,有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器,支持 Graphite、zabbix、InfluxDB、Prometheus、OpenTSDB、Elasticsearch 等作为数据源,比 Prometheus 自带的图表展示功能强大太多,...

2019-01-25 17:26:41 2324 3

转载 使用 Prometheus 监控 Kubernetes 集群应用

上一节我们和大家介绍了Prometheus的数据指标是通过一个公开的 HTTP(S) 数据接口获取到的,我们不需要单独安装监控的 agent,只需要暴露一个 metrics 接口,Prometheus 就会定期去拉取数据;对于一些普通的 HTTP 服务,我们完全可以直接重用这个服务,添加一个/me...

2019-01-24 18:04:48 296 0

转载 理解 kubernetes 亲和性调度

一般情况下我们部署的 Pod 是通过集群的自动调度策略来选择节点的,默认情况下调度器考虑的是资源足够,并且负载尽量平均,但是有的时候我们需要能够更加细粒度的去控制 Pod 的调度,比如我们内部的一些服务 gitlab 之类的也是跑在Kubernetes集群上的,我们就不希望对外的一些服务和内部的服...

2019-01-24 16:07:56 115 0

转载 Dockerfile 最佳实践(如何最小化docker镜像)

Docker官方关于Dockerfile最佳实践原文链接地址:https://docs.docker.com/develop/develop-images/dockerfile_best-practices/ Docker可以通过从Dockerfile包含所有命令的文本文件中读取指令自动构建镜像...

2019-01-24 14:51:43 859 0

转载 外部服务发现之 ingress(二)

上节课给大家展示了traefik的安装使用以及简单的ingress的配置方法,这节课我们来学习一下 ingress tls 以及 path 路径在 ingress 对象中的使用方法。 TLS 认证 在现在大部分场景下面我们都会使用 https 来访问我们的服务,这节课我们将使用一个自签名的证书...

2019-01-24 14:22:40 181 0

转载 外部服务发现之 ingress(一)

上节课我们学习了在Kubernetes集群内部使用kube-dns实现服务发现的功能,那么我们部署在Kubernetes集群中的应用如何暴露给外部的用户使用呢?我们知道前面我们使用 NodePort 和 LoadBlancer 类型的 Service 可以实现把应用暴露给外部用户使用,除此之外,K...

2019-01-24 10:20:46 536 0

转载 集群内部服务发现之 DNS

前面我们给大家讲解了Service的用法,我们可以通过 Service 生成的ClusterIP(VIP)来访问 Pod 提供的服务,但是在使用的时候还有一个问题:我们怎么知道某个应用的 VIP 呢?比如我们有两个应用,一个是 api 应用,一个是 db 应用,两个应用都是通过Deployment...

2019-01-24 09:55:32 327 0

转载 kubernetes 持久化存储(二)

前面的课程中我们学习了 PV 和 PVC 的使用方法,但是前面的 PV 都是静态的,什么意思?就是我要使用的一个 PVC 的话就必须手动去创建一个 PV,我们也说过这种方式在很大程度上并不能满足我们的需求,比如我们有一个应用需要对存储的并发度要求比较高,而另外一个应用对读写速度又要求比较高,特别是...

2019-01-23 17:30:25 171 0

转载 kubernetes 持久化存储(一)

概念 PV 的全称是:PersistentVolume(持久化卷),是对底层的共享存储的一种抽象,PV 由管理员进行创建和配置,它和具体的底层的共享存储技术的实现方式有关,比如 Ceph、GlusterFS、NFS 等,都是通过插件机制完成与共享存储的对接。 PVC 的全称是:Persiste...

2019-01-23 17:06:38 364 0

转载 Kubernetes Pod 工作流

我们知道Pod是Kubernetes中最小的调度单元,平时我们操作Pod的时间也是最多的,那么你知道Pod是怎样被创建出来的吗?知道他的工作流程吗? 组件之间的通信 我们知道在Kubernetes集群中apiserver是整个集群的控制入口,etcd在集群中充当数据库的作用,只有apiserv...

2019-01-23 14:46:29 134 0

转载 Docker-- Docker storage driver 概述

概述 Docker 配置的时候有一个很重要的配置项就是 storage driver选项,本篇博客详细介绍下storage driver这一配置项的相关内容。 背景 首先是 storage driver出现的原因。我们知道容器的存储大致有两种,一种是在容器外的,比如 volume,不会随着容...

2019-01-10 10:49:12 212 0

转载 Prometheus监控 - 简介、架构及基本环境配置

Overview Prometheus是一个开源的系统监控和报警的工具包,最初由SoundCloud发布。 Features Prometheus的主要特点是: 多维数据模型(有metric名称和键值对确定的时间序列) 灵活的查询语言 不依赖分布式存储 通过pull方式采集时间序列,...

2019-01-04 16:26:19 1352 0

转载 深入学习Redis(5):集群

前言 在前面的文章中,已经介绍了Redis的几种高可用技术:持久化、主从复制和哨兵,但这些方案仍有不足,其中最主要的问题是存储能力受单机限制,以及无法实现写操作的负载均衡。 Redis集群解决了上述问题,实现了较为完善的高可用方案。本文将详细介绍集群,主要内容包括:集群的作用;集群的搭建方法及...

2019-01-02 16:45:20 55 0

转载 深入学习Redis(3):主从复制

前言 在Redis的持久化中曾提到,Redis高可用的方案包括持久化、主从复制(及读写分离)、哨兵和集群。其中持久化侧重解决的是Redis数据的单机备份问题(从内存到硬盘的备份);而主从复制则侧重解决数据的多机热备。此外,主从复制还可以实现负载均衡和故障恢复。 这篇文章中,将详细介绍Redis...

2019-01-02 16:37:03 45 0

转载 深入学习Redis(2):RDB和AOF持久化

前言 本文将先说明上述几种技术分别解决了Redis高可用的什么问题;然后详细介绍Redis的持久化技术,主要是RDB和AOF两种持久化方案;在介绍RDB和AOF方案时,不仅介绍其作用及操作方法,同时介绍持久化实现的一些原理细节及需要注意的问题。最后,介绍在实际使用中,持久化方案的选择,以及经常遇...

2019-01-02 15:14:41 39 0

转载 深入学习Redis(1):Redis内存模型

Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分。   我们使用Redis时,会接触Redis的5种对象类型:字符串、哈希、列表、集合、有序集合。丰富的类型是Redis相对于Memcached等的一大优势。在了解...

2019-01-02 14:12:25 86 0

转载 深入学习Redis(4):哨兵

我们曾提到,Redis主从复制的作用有数据热备、负载均衡、故障恢复等;但主从复制存在的一个问题是故障恢复无法自动化。本文将要介绍的哨兵,它基于Redis主从复制,主要作用便是解决主节点故障恢复的自动化问题,进一步提高系统的高可用性。   注:本文内容基于Redis 3.0版本。   一、作...

2019-01-02 10:47:56 37 0

转载 Linux性能监控分析命令—vmstat命令详解

一、vmstat介绍 语法格式: vmstat [-V] [-n] [-S unit] [delay [count]]               -V prints version.               -n causes the headers not to be reprint...

2018-12-28 17:24:35 30 0

原创 Redis的RDB和AOF对比介绍

RDB的优缺点 RDB的优点: · RDB是一个紧凑压缩的二进制文件,代表Redis在某个时间点上的数据快照。非常适用于备份,全量复制等场景。比如每6小时执行bgsave备份, 并把RDB文件拷贝到远程机器或者文件系统中(如hdfs),用于灾难恢复。 · Redis加载RDB恢复数据远远快于...

2018-12-28 16:47:56 310 0

原创 calico设置IPIP模式

Configuring IP-in-IP If your network fabric performs source/destination address checks and drops traffic when those addresses are not recognized, it...

2018-12-20 18:48:30 2538 0

转载 Ansible系列(五):各种变量定义方式和变量引用

1.1 ansible facts facts组件是用来收集被管理节点信息的,使用setup模块可以获取这些信息。 ansible-doc -s setup - name: Gathers facts about remote hosts 以下是某次收集的信息示例。...

2018-12-17 15:07:19 295 0

转载 Ansible 添加免密登陆

第一步:将需要登陆主机得公钥添加到known_hosts ssh-keyscan 192.168.77.129 192.168.77.130 >> /root/.ssh/known_hosts 还可以使用下列简单办法: ssh在首次连接出现检查keys 的提示...

2018-12-12 18:59:23 438 0

转载 kafka server部署配置优化

1.kafka高性能的特点及条件 kafka是一个高吞吐量分布式消息系统,并且提供了持久化。其高性能的有两个重要特点:(1)利用了磁盘连续读写性能远远高于随机读写的特点;(2)并发,将一个topic拆分多个partition。 要充分发挥kafka的性能,就需要满足这两个条件。linkedin的...

2018-12-08 14:50:14 50 0

提示
确定要删除当前文章?
取消 删除