自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

胡伟煌的博客

个人独立博客地址:www.huweihuang.com。容器云(Docker、Kubernetes等)相关生态技术研究。

  • 博客(106)
  • 收藏
  • 关注

原创 基于Docker及Kubernetes技术构建容器云(PaaS)平台概述

本文个人博客地址为:http://www.huweihuang.com/article/kubernetes/paas-based-on-docker&kubernetes/本文个人博客地址为:https://huweihuang.net/article/kubernetes/paas-based-on-docker&kubernetes/【编者的话】目前很多的容器云平台通过Doc...

2017-07-23 17:39:38 43176 1

原创 Kubernetes核心原理(一)之API Server

1. API Server简介k8s API Server提供了k8s各类资源对象(pod,RC,Service等)的增删改查及watch等HTTP Rest接口,是整个系统的数据总线和数据中心。kubernetes API Server的功能:提供了集群管理的REST API接口(包括认证授权、数据校验以及集群状态变更);提供其他模块之间的数据交互和通信的枢纽(其他模块通

2017-07-21 23:17:14 16302

原创 StorageClass

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/storage/storage-class.htmlStorageClass1. StorageClass概述StorageClass提供了一种描述存储类(class)的方法,不同的class可能会映射到不同的服务质量等级和备份策略或其他策略等。StorageClass 对象中包含...

2019-07-15 20:30:21 8376

原创 PersistentVolumeClaim

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/storage/persistent-volume-claim.htmlPersistentVolumeClaim1. PVC概述PersistentVolumeClaim(简称PVC)是用户存储的请求,PVC消耗PV的资源,可以请求特定的大小和访问模式,需要指定归属于某个Names...

2019-07-15 20:29:28 15792

原创 Dynamic Volume Provisioning

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/storage/dynamic-provisioning.htmlDynamic Volume ProvisioningDynamic volume provisioning允许用户按需自动创建存储卷,这种方式可以让用户不需要关心存储的复杂性和差别,又可以选择不同的存储类型。1. 开...

2019-07-15 20:27:01 1099

原创 csi-provisioner源码分析

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/develop/csi-provisioner.html本文主要分析csi-provisioner的源码,关于开发一个Dynamic Provisioner,具体可参考nfs-client-provisioner的源码分析1. Dynamic Provisioner1.1. Pr...

2019-07-15 20:25:10 1386

原创 12-Factor(要素)

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/paas/12-factor.html以下主要介绍PaaS平台设计架构中使用到的方法论,统称为12-Factor(要素)简介软件通常会作为一种服务来交付,即软件即服务(SaaS)。12-Factor原则为构建SaaS应用提供了以下的方法论:使用标准化流程自动配置,减少开发者的...

2019-07-15 20:23:09 1300 1

原创 kubelet源码分析(五)之 syncPod

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kubelet/syncPod.htmlkubelet源码分析(五)之 syncPod以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析kubelet中syncPod的部分。1. managePodLoopmanagePod...

2019-07-15 20:15:20 1982

原创 kubelet源码分析(四)之 syncLoopIteration

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kubelet/syncLoopIteration.htmlkubelet源码分析(四)之 syncLoopIteration以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析kubelet中syncLoopIteration部...

2019-07-15 20:14:14 1045

原创 kubelet源码分析(三)之 startKubelet

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kubelet/startKubelet.htmlkubelet源码分析(三)之 startKubelet以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析startKubelet,其中主要是kubelet.Run部分,该部分的...

2019-07-15 20:13:13 1119

原创 kubelet源码分析(二)之 NewMainKubelet

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kubelet/NewMainKubelet.htmlkubelet源码分析(二)之 NewMainKubelet以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析 https://github.com/kubernetes/ku...

2019-07-15 20:12:00 769

原创 kubelet源码分析(一)之 NewKubeletCommand

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kubelet/NewKubeletCommand.htmlkubelet源码分析(一)之 NewKubeletCommand以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析 https://github.com/kuberne...

2019-07-15 20:11:04 801

原创 kube-scheduler源码分析(六)之 preempt

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-scheduler/preempt.htmlkube-scheduler源码分析(六)之 preempt以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析调度中的抢占逻辑,当pod不适合任何节点的时候,可能pod会调度...

2019-07-15 20:09:36 824

原创 kube-scheduler源码分析(五)之 PrioritizeNodes

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-scheduler/PrioritizeNodes.htmlkube-scheduler源码分析(五)之 PrioritizeNodes以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析优选策略逻辑,即从预选的节点中选...

2019-07-15 20:08:23 429

原创 kube-scheduler源码分析(四)之 findNodesThatFit

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-scheduler/findNodesThatFit.htmlkube-scheduler源码分析(四)之 findNodesThatFit以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析调度逻辑中的预选策略,即第一...

2019-07-15 20:06:58 578

原创 kube-scheduler源码分析(三)之 scheduleOne

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-scheduler/scheduleOne.htmlkube-scheduler源码分析(三)之 scheduleOne以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析/pkg/scheduler/中调度的基本流程。...

2019-07-15 20:05:42 1010

原创 kube-scheduler源码分析(二)之 registerAlgorithmProvider

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-scheduler/registerAlgorithmProvider.htmlkube-scheduler源码分析(二)之 registerAlgorithmProvider以下代码分析基于 kubernetes v1.12.0 版本。此部...

2019-07-15 20:03:47 510

原创 kube-scheduler源码分析(一)之 NewSchedulerCommand

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-scheduler/NewSchedulerCommand.htmlkube-scheduler源码分析(一)之 NewSchedulerCommand以下代码分析基于 kubernetes v1.12.0 版本。scheduler的cmd代...

2019-07-15 20:02:29 506

原创 kube-controller-manager源码分析(三)之 Informer机制

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-controller-manager/sharedIndexInformer.htmlkube-controller-manager源码分析(三)之 Informer机制以下代码分析基于 kubernetes v1.12.0 版本。本文主要分...

2019-07-15 20:00:59 1490

原创 kube-controller-manager源码分析(二)之 DeploymentController

本文个人博客地址:https://www.huweihuang.com/kubernetes-notes/code-analysis/kube-controller-manager/deployment-controller.htmlkube-controller-manager源码分析(二)之 DeploymentController以下代码分析基于 kubernetes v1.12....

2019-07-15 19:57:13 764

原创 kube-controller-manager源码分析(一)之 NewControllerManagerCommand

kube-controller-manager源码分析(一)之 NewControllerManagerCommand以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析https://github.com/kubernetes/kubernetes/tree/v1.12.0/cmd/kube-controller-manager 部分的代码。本文主要分析 kube...

2019-07-15 19:55:32 824

原创 kube-apiserver源码分析(一)之 NewAPIServerCommand

kube-apiserver源码分析(一)之 NewAPIServerCommand以下代码分析基于 kubernetes v1.12.0 版本。本文主要分析kube-apiserver中cmd部分的代码,即NewAPIServerCommand相关的代码。更多具体的逻辑待后续文章分析。kube-apiserver的cmd部分目录代码结构如下:kube-apiserver├── ap...

2019-07-15 19:54:37 930

原创 Golang包管理工具(四)之go-modules的使用

本文个人博客地址:https://www.huweihuang.com/golang-notes/introduction/package/go-modules.html1. Go modules简介Go 1.11版本开始支持Go modules方式的依赖包管理功能,官网参考:https://github.com/golang/go/wiki/Modules。2. go mod的使用项...

2019-07-15 19:46:23 1778

原创 confd的使用

1. confd的部署以下Linux系统为例。下载confd的二进制文件,下载地址为:https://github.com/kelseyhightower/confd/releases。例如:# Download the binarywget https://github.com/kelseyhightower/confd/releases/download/v0.16.0/co...

2018-09-01 14:29:48 9827

原创 kubernetes存储详解

1. Volumes1.1. volume概述容器上的文件生命周期同容器的生命周期一致,即容器挂掉之后,容器将会以最初镜像中的文件系统内容启动,之前容器运行时产生的文件将会丢失。Pod的volume的生命周期同Pod的生命周期一致,当Pod被删除的时候,对应的volume才会被删除。即Pod中的容器重启时,之前的文件仍可以保存。容器中的进程看到的是由其 Docker 镜像和卷...

2018-09-01 14:10:20 4871

原创 nfs-client-provisioner源码分析

如果要开发一个Dynamic Provisioner,需要使用到the helper library。1. Dynamic Provisioner1.1. Provisioner Interface开发Dynamic Provisioner需要实现Provisioner接口,该接口有两个方法,分别是:Provision:创建存储资源,并且返回一个PV对象。Del...

2018-08-25 15:49:57 5285

原创 使用kubespary安装k8s集群

1. 环境准备1.1. 部署机器 以下机器为虚拟机 机器IP 主机名 角色 系统版本 备注 172.16.94.140 kube-master-0 k8s master Centos 4.17.14 内存:3G 172.16.94.141 kube-node-41 k8s node Centos 4.17....

2018-08-11 17:59:07 4769

原创 使用minikube快速部署k8s集群

以下内容基于Linux系统,特别为Ubuntu系统1. 安装kubectlcurl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/...

2018-08-08 12:36:49 7567 1

原创 安装Docker

1. CentOS 安装Docker 建议使用centos71.1. 安装Docker1.1.1. 卸载旧版本旧版本的Docker命名为docker或docker-engine,如果有安装旧版本,先卸载旧版本$ sudo yum remove docker \ docker-client \ ...

2018-08-08 12:17:05 764

原创 ansible的使用

1. 安装以centos为例。yum install -y ansible2. 配置默认配置目录在/etc/ansible/,主要有以下两个配置:ansible.cfg:ansible的配置文件hosts:配置ansible所连接的机器IP信息2.1. ansible.cfg2.2. hosts# This is the default a...

2018-07-26 10:31:12 1951

原创 Golang包管理工具(三)之dep的使用

更多golang包管理工具参考 - dep的使用 - glide的使用 - govendor的使用1. dep简介dep是一个golang项目的包管理工具,一般只需要2-3个命令就可以将go依赖包自动下载并归档到vendor的目录中。dep官网参考:https://github.com/golang/dep2. dep安装go get -u ...

2018-07-23 17:03:23 7164

原创 以太坊系列(二)之账户管理

1. 账户以太坊有两种账户类型:外部账户(EOA)合约账户所有账户的状态代表以太坊网络的状态,以太坊网络会和每一个区块一起更新,网络需要达成关于以太坊的共识。账户代表外部代理人的身份,账户运用非对称加密的私钥来签署交易,以便以太坊虚拟机可以安全验证交易发送者的身份。2. 钥匙文件(Keyfiles)每个账户都由一对密钥来定义,包括公钥和私钥。账户以地址为索引,地址由公...

2018-07-09 21:27:25 4648

原创 以太坊系列(一)之以太坊简介

1. 以太坊的介绍以太坊是一个开放的区块链平台,允许任何人在平台中建立和使用通过区块链技术运行的去中心化应用,同比特币一样,以太坊由全球范围的很多人共同创建,不受任何个人控制。2. 下一代区块链区块链技术是比特币的底层技术。在比特币中,分布式数据库被设想为一个账户余额表(总账),交易通过比特币的转移来实现个体之间无需信任基础的金融活动。以太坊试图实现一个总体上完全无需信任基础的智能...

2018-07-09 21:26:05 5533

原创 Kubernetes运维指南(一)之指定Node调度与隔离

1. NodeSelector1.1. 概念如果需要限制Pod到指定的Node上运行,则可以给Node打标签并给Pod配置NodeSelector。1.2. 使用方式1.2.1. 给Node打标签# get node的namekubectl get nodes# 设置Labelkubectl label nodes <node-name> &...

2018-07-01 17:15:24 5686

原创 区块链系列(八)之区块链介绍

1. 区块链简介1.1. 区块链的概念区块链是一个去中心化的分布式数据库,该数据库由一串使用密码学方法产生的数据区块有序链接而成,区块中包含有一定时间内产生的无法被篡改的数据记录信息。区块中包含了数据记录、当前区块根Hash、前一个区块根Hash、时间戳以及其他信息。数据记录的类型可以根据场景决定,比如为资产交易记录、资产发行记录等。从技术层面看,区块链是一个基于共识机制、去中...

2018-06-25 20:00:42 2192

原创 Kubernetes基本概念(四)之资源配额详解

1. 资源配额(ResourceQuota)ResourceQuota对象用来定义某个命名空间下所有资源的使用限额,其实包括:计算资源的配额存储资源的配额对象数量的配额如果集群的总容量小于命名空间的配额总额,可能会产生资源竞争。这时会按照先到先得来处理。 资源竞争和配额的更新都不会影响已经创建好的资源。1.1. 启动资源配额Kubernetes 的众多发行版本默认...

2018-06-21 11:12:54 5030 1

原创 MySQL常用命令

1. 系统管理1.1. 连接mysql格式: mysql -h主机地址 -u用户名 -p用户密码#连接本地mysql -h<localhost/127.0.0.1> -u用户名 -p用户密码#连接远程mysql -h<主机地址> -u用户名 -p用户密码#退出连接exit1.2. 备份数据库1.导出整个数据库导出文件默认是存...

2018-06-04 14:41:18 560

原创 Supervisor的使用

1. Supervisor简介Supervisord 是用 Python 实现的一款的进程管理工具,supervisord 要求管理的程序是非 daemon 程序,supervisord 会帮你把它转成 daemon 程序,因此如果用 supervisord 来管理进程,进程需要以非daemon的方式启动。 例如:管理nginx 的话,必须在 nginx 的配置文件里添加一行设置 daemo...

2018-05-29 16:05:16 32956 1

原创 Etcd的启动配置参数详解

目录:1. Etcd配置参数1.1. member flags1.2. clustering flags1.3. proxy flags1.4. security flags1.5. logging flags1.6. unsafe flags1.7. profiling flags1.8. auth flags1.9. experimental flags...

2018-05-07 15:32:06 16998

原创 etcdctl的使用[v3版本]

目录:1. etcdctl的安装2. etcdctl V33. etcdctl 常用命令3.1. 指定etcd集群3.2. 增删改查3.3. 集群状态3.4. 集群成员 etcdctl的v3版本与v2版本使用命令有所不同,本文介绍etcdctl v3版本的命令工具的使用方式。1. etcdctl的安装etcdctl的二进制文件可以在 git...

2018-05-07 14:57:55 94561

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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