zhouxi | 发布于 2018-09-18 08:17:20 | 阅读量 155 |
发布于 2018-09-18 08:17:20 |
#### 使用kubeadm 搭建k8s 集群的时候遇到一个坑 >kube-proxy 启用ipvs 的时候,开启node port,网络用的calico bgp 出现以下问题: 3个节点A,B,C pod被调度到 B上开起node port 30000 发现: 1.A->B:30000 通 2.A-A:30000 通 3.A-C:30000 不通 * 调试iptables 发现: B响应给C
继续阅读
zhouxi | 发布于 2018-09-14 15:24:17 | 阅读量 126 |
发布于 2018-09-14 15:24:17 |
## 调试iptables > 最近研究calico 和 ipvs,无奈规则复杂,看着头疼,发现可以使用一下方式调试,特意记下,方便了解iptables运行原理 * 是用raw表进行调试 ![](https://upload.wikimedia.org/wikipedia/commons/3/37/Netfilter-packet-flow.svg) * 方式 ```bash iptabl
继续阅读
zhouxi | 发布于 2018-08-06 07:32:36 | 阅读量 79 |
发布于 2018-08-06 07:32:36 |
>在分布式环境中有一个很重要的东西,那就是共识算法,它是区块链的灵魂,通过他来觉得定不同节点之间谁说了算,谁有记账权利。 ##POS共识算法   股权权益证明(Proof of Stack 简称PoS),基本概念为:在PoS中,原始持币人是实现定好的,铸造的过程是基于持币人每个节点(Node)谁有更多加密货币数量,他们就有更大的机会记账下一个区块并获得奖励。PoS算法是针对PoW算法的缺点的改
继续阅读
zhouxi | 发布于 2018-07-30 06:33:17 | 阅读量 336 |
发布于 2018-07-30 06:33:17 |
> 最近遇到一件奇怪的事,跑的了几天的java 程序会莫名其妙的挂掉,查看gc日志正常,查看系统日志也没有出现oom,后来通过 `dmesg` 查看发现被系统的 OOM Killer 给搞死了。 ```bash [26157170.309212] Out of memory: Kill process 15732 (java) score 715 or sacrifice child [2615
继续阅读
zhouxi | 发布于 2018-07-27 09:53:30 | 阅读量 68 |
发布于 2018-07-27 09:53:30 |
> k8s 一般在生产环境需要启用HA方案,即指定多个API-Server,然后通过`-advertise-address`暴露其地址,如下 ```bash ExecStart=/opt/bin/kube-apiserver \ --admission-control=NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolum
继续阅读
zhouxi | 发布于 2018-07-18 06:43:00 | 阅读量 214 |
发布于 2018-07-18 06:43:00 |
### ELK 也玩了一段时间,顶住了每周9T的日志量,这玩意相对比较成熟,社区也很活跃,很多问题都能找到解决办法,下面就常用做了一些整理。 #### ELK 经典架构 ![](/api/file/getImage?fileId=5b4edc6af0937c1949000192) #### 调优整理 * 锁住内存 > 避免使用虚拟内存,防止内存的换入换出,影响性能 启用es配置:boots
继续阅读
zhouxi | 发布于 2018-07-16 10:20:28 | 阅读量 127 |
发布于 2018-07-16 10:20:28 |

### 相对比特币两次sha256算法,以太坊的pow算法显然要复杂得多,该算法与cpu无关,和内存却有很大关系,下面那看看ETHASH到底是个什么。 ### 基本形式 > RAND(h, n) <= M / d 这里M表示一个极大的数,比如2^256-1;d表示Header成员Difficulty。RAND()是一个概念函数,它代表了一系列复杂的运算,并最终产生一个类似随机的数。这个函数包括两个基本入参:h是Header的哈希值(Header.HashNoNonce()),n表示Header成员Nonce。整个关系式可以大致理解为,在最大不超过M的范围内,以某个方式试图找到一个数,如果这个数符合条件(<=M/d),那么就认为Seal()成功。 我们可以先定性的验证一个推论:

继续阅读
zhouxi | 发布于 2018-07-13 07:26:08 | 阅读量 60 |
发布于 2018-07-13 07:26:08 |
### 比特币中没有账户身份的概念,那么不同用户之间怎么收发比特币呢。那就要引入比特币地址概念。 ### 比特币中地址其实就是一个特殊处理过方便人阅读的公钥,公钥是全网公开的,然后私钥保存在自己手中,掌握了私钥就掌握了账户中所有比特币,可以这样说私钥就是比特币,所以要妥善保管自己的私钥。 ### 比特币地址生成算法 > 先利用椭圆加密算法(ecc)来产生比特币的私钥和公钥,由私钥是可以计算出公钥
继续阅读
zhouxi | 发布于 2018-07-12 03:36:26 | 阅读量 81 |
发布于 2018-07-12 03:36:26 |

1.区块链是什么

  区块链是一种数据的记录的方式,就像平常使用的Excel表格,Word文档一样,按照一定的格式将我们的数据存储在电脑上。与传统的记录格式不同的是,区块链是将产生的数据按照一定的时间间隔,分成一个个的数据块记录,然后再根据数据块的先后关联串联起来,也就是区块链
  区块链是一整套技术组合的代表,在这一组合技术的配合下才能焕发出惊人的能力。区块链系统有很多种,但是无

继续阅读
zhouxi | 发布于 2018-07-11 09:20:47 | 阅读量 371 |
发布于 2018-07-11 09:20:47 |
## 在生产环境中如何使用calico * 原则 * 1.同一个主机上的容器直接走宿主机网桥 * 2.同一机架上的容器访问只走TOR交换机 * 3.不同机架上容器访问走核心交换机 #### 网络拓扑图如下 https://docs.projectcalico.org/images/l3-fabric-diagrams-as-rack-l3-spine.png![](/api/fi
继续阅读