胡伟煌

个人博客

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

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

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

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

[Blockchain] 区块链系列(八)之区块链介绍

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

[Blockchain] 区块链系列(六)之比特币交易

1. 比特币交易简介 比特币交易是比特币系统最重要的部分,本质是数据结构,数据结构中含有比特币交易参与者价值转移的相关信息。比特币区块链是一本全球复制记账总账簿,每个比特币交易即账簿上公开的一页转账记录。 2. 比特币交易的生命周期 创建比特币交易,通过一个或多个签名加密,签名标志了该比特币的使用许可。 交易广播到比特币网络中,每个节点进行验证,并进行广播,直到该交易被大多数节点接收。 比......

[Blockchain] 区块链系列(四)之密钥和地址

1. 比特币密钥 比特币的所有权是通过数字密钥、比特币地址和数字签名来确定的,数字密钥不存在网络中,而由用户生成,存储在一个文件或简单的数据库中,一般称之为钱包。 比特币交易都需要一个有效的签名才会被存储到区块链中,只有有效的密钥才能产生有效的数字签名,因此拥有密钥副本就拥有了该账户的比特币控制权。 密钥是成对出现的,由公钥和私钥组成。公钥类似银行账号,私钥类似支票签名。在比特币交易环节, ......

[Kubernetes] kubernetes资源配额详解

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

[Kubernetes] 使用kubespray安装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.14 内存:3G 172.16.94.142 kube-n......

[Kubernetes] 使用minikube安装k8s集群

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

[Docker] 安装Docker

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

[Kubernetes] kubernetes指定节点调度与隔离

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