Blog

每天30分钟大数据2:HDFS基本概念

2019-01-20
Hadoop

HDFS即Hadoop Distributed File System的简称,是一个被设计为运行在廉价机器上的分布式文件系统,是Google分布式文件系统GFS的开源实现。

数据块(Data Blocks)是HDFS存储文件的最基本单元,HDFS通过分块存储的方式提高文件的读写性能以突破单机存储瓶颈,通过数据块的多副本冗余存储保证数据的可靠性。

...

Istio 1.0学习笔记(八):使用Helm在Kubernetes集群上部署Istio

2019-01-16
Istio

1.环境信息 #

本文将实践使用Heml在Kubernetes 1.13上安装Istio 1.0.5,具体的环境信息如下:

1helm version
2Client: &version.Version{SemVer:"v2.12.2", GitCommit:"7d2b0c73d734f6586ed222a567c5d103fed435be", GitTreeState:"clean"}
3Server: &version.Version{SemVer:"v2.12.2", GitCommit:"7d2b0c73d734f6586ed222a567c5d103fed435be", GitTreeState:"clean"}
4
5kubectl version
6Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.2", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:04:45Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
7Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.2", GitCommit:"cff46ab41ff0bb44d8584413b598ad8360ec1def", GitTreeState:"clean", BuildDate:"2019-01-10T23:28:14Z", GoVersion:"go1.11.4", Compiler:"gc", Platform:"linux/amd64"}

下载并解压缩istio的发布包:

...

Kubernetes Ingress实战(六):Bare metal环境下Kubernetes Ingress边缘节点的高可用,Ingress Controller使用hostNetwork

2018-12-13
Kubernetes

前面在Kubernetes Ingress实战(四):Bare metal环境下Kubernetes Ingress边缘节点的高可用Kubernetes Ingress实战(五):Bare metal环境下Kubernetes Ingress边缘节点的高可用(基于IPVS)中Bare metal环境下Kubernetes Ingress边缘节点的高可用的两种方法,都是基于externalIps来暴露nginx-ingress-controller的Service到集群外部的,前者的kube-proxy没有开启IPVS,后者的kube-proxy开启了IPVS。

...

使用kubeadm安装Kubernetes 1.13

2018-12-08
Kubernetes

kubeadm是Kubernetes官方提供的用于快速安装Kubernetes集群的工具,伴随Kubernetes每个版本的发布都会同步更新,kubeadm会对集群配置方面的一些实践做调整,通过实验kubeadm可以学习到Kubernetes官方在集群配置上一些新的最佳实践。

...

ChatOps:Hubot本地开发环境搭建

2018-12-05
Chatops

Hubot是Github开发并开源的chatbot,将其部署到运维环境中后,可通过编写自定义的脚本,将之前的web端、shell命令等人工进行的运维工作,通过聊天工具交给机器人来代替。

搭建hubot本地开发环境 #

安装Node.js:

下载Node.js LTS的Binary版本:https://nodejs.org/en/download/current/。将binary压缩包解压缩到安装目录NODE_INSTALL_PATH中。 设置环境变量NODE_HOME指向到解压缩后的目录,并设置PATH环境变量包含NODE_HOME

...

理解Go interface的两种底层实现:iface和eface

2018-11-06
Go

Go语言interface的运行时实现的源码位于$GOROOT/src/runtime/runtime2.go中。 在Go的不同版本中,interface的实现可能会有不同,但整体结构变化不大,本文基于Go 1.17。

1.两类接口的运行时实现 #

可以在runtime/runtime2.go中找到Go的接口类型变量在运行时的表示,如下是ifaceeface两个结构体:

...

Istio 1.0学习笔记(七):使用Istio对服务进行流量管理 - 控制Egress流量

2018-11-05
Istio

1.istio sidecar代理默认只处理集群内部的目标 #

先做一个测试,首先将default namespace开启sidecar代理的自动注入:

1kubectl label namespace default istio-injection=enabled

部署sleep示例应用:

1kubectl apply -f samples/sleep/sleep.yaml

sleep应用启动后,进入到容器内部,使用curl访问http://httpbin.org/uuid,出现404:

...

© 2024 青蛙小白