胡伟煌

个人博客

[源码分析] kube-scheduler源码分析(一)之 NewSchedulerCommand

kube-scheduler源码分析(一)之 NewSchedulerCommand 以下代码分析基于 kubernetes v1.12.0 版本。 scheduler的cmd代码目录结构如下: 12345678910111213141516171819kube-scheduler├── BUILD├── OWNERS├── app # app的目录下主要为运行sc......

[源码分析] kube-controller-manager源码分析(三)之 Informer机制

kube-controller-manager源码分析(三)之 Informer机制 以下代码分析基于 kubernetes v1.12.0 版本。 本文主要分析k8s中各个核心组件经常使用到的Informer机制(即List-Watch)。该部分的代码主要位于client-go这个第三方包中。 此部分的逻辑主要位于/vendor/k8s.io/client-go/tools/cache......

[源码分析] kube-controller-manager源码分析(二)之 DeploymentController

kube-controller-manager源码分析(二)之 DeploymentController 以下代码分析基于 kubernetes v1.12.0 版本。 本文主要以deployment controller为例,分析该类controller的运行逻辑。此部分代码主要为位于pkg/controller/deployment。pkg/controller部分的代码包括了各种类......

[源码分析] 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 部分的代码。 本文主要分析 k......

[源码分析] kubelet源码分析(四)之 Pod的创建

kubelet源码分析(四)之 Pod的创建 以下代码分析基于 kubernetes v1.12.0 版本。 本文主要分析https://github.com/kubernetes/kubernetes/tree/v1.12.0/pkg/kubelet 部分的代码。 1. syncLoopIteration syncLoopIteration主要通过几种channel来对不同类型的事件进......

[源码分析] kubelet源码分析(三)之 RunKubelet

kubelet源码分析(三)之 RunKubelet 以下代码分析基于 kubernetes v1.12.0 版本。 本文主要分析 https://github.com/kubernetes/kubernetes/tree/v1.12.0/pkg/kubelet 部分的代码。 本文主要分析kubelet.Run的主要部分,对于kubelet所包含的各种manager的执行逻辑和pod的生......

[源码分析] kubelet源码分析(二)之 NewMainKubelet

kubelet源码分析(二)之 NewMainKubelet 以下代码分析基于 kubernetes v1.12.0 版本。 本文主要分析 https://github.com/kubernetes/kubernetes/tree/v1.12.0/pkg/kubelet 部分的代码。 1. NewMainKubelet NewMainKubelet主要用来初始化和构造一个kubelet结......

[源码分析] kubelet源码分析(一)之 NewKubeletCommand

kubelet源码分析(一)之 NewKubeletCommand 以下代码分析基于 kubernetes v1.12.0 版本。 本文主要分析 https://github.com/kubernetes/kubernetes/tree/v1.12.0/cmd/kubelet 部分的代码。 本文主要分析 kubernetes/cmd/kubelet部分,该部分主要涉及kubelet的参数......

[Ethereum] 以太坊系列(一)之以太坊介绍

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

[Ethereum] 以太坊系列(二)之账户管理

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