网络
Calico 下如何切换数据面到 eBPF
· ☕ 1 分钟
1. 环境准备 1.1 Calico eBPF 要求 系统要求 Ubuntu 18.04.4+ Red Hat v8.2 Linux kernel v5.3+ 如果 Calico 没有检测到兼容的内核,将会回退到标准模式。 每个节点的 /sys/fs/bpf 都需要挂载有 BPF 文件系统 Calico 版本不低于 3.13 1.2 升级内核 这里使用的是 CentOS 7 操作系统: 1 2 3 uname -rv 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 内核版本不满足要求,因此需要升级内核

在 Kubernetes 中如何给 NodePort 配置 NetworkPolicy
· ☕ 5 分钟
1. 需求背景 如上图,业务方需要隔离 namespae 的服务,禁止 bar 空间的负载访问,而允许用户从 Load Balancer (LB) 通过 NodePort 访问服务。可以很容易地写出一个网络策略: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: test-network-policy namespace: foo spec: podSelector: matchLabels: {} policyTypes: - Ingress ingress: - from: - ipBlock: cidr: 10.2.3.4/32 - namespaceSelector: matchExpressions: - key: region operator: NotIn values: - bar 然而

国内访问 GitHub 的若干方法
· ☕ 1 分钟
由于众所周知的原因,在国内的网络环境下,访问 Github 时,网络会阻断或者很慢。本文提供了若干访问方法。 1. 使用 Github Mirror 下载 直接在 GitHub 仓库前面拼接 Proxy 地址,不同的 Mirror 拼接方式可能有所不同。下面以拉取 https://github.com/shaowenchen/scripts 仓库为例。 https://ghproxy.chenshaowen.com 1 git clone https://github.com/shaowenchen/ops 2. 通过 Gitee 导入 GitHub 项目 可以参考文档: GitHu

在 Kubernetes 中如何获取客户端真实 IP
· ☕ 5 分钟
Kubernetes 依靠 kube-proxy 组件实现 Service 的通信与负载均衡。在这个过程中,由于使用了 SNAT 对源地址进行了转换,导致 Pod 中的服务拿不到真实的客户端 IP 地址信息。本篇主要解答了在 Kubernetes 集群中负载如何获取客户端真实 IP 地址这个问题。 1. 创建一个后端服务 1.1 服务选择 这里选择 containous/whoami 作为后端服务镜

Kubernetes网络权威指南:基础、原理与实践
· ☕ 1 分钟
作者: 杜军 出版社: 电子工业出版社 出版年: 2019-10 ISBN: 9787121373398 Notes: 网络是 Kubernetes 中不易掌握的一个难点。网络故障会直接影响现有的负载,通常是十分紧急的问题。而网络相关的知识相较于应用开发更底层,很多的细节,需要长期的积累。 书中相关的要点之前陆续都有所接触,通过阅读这