浮生若梦,为欢几何?

已过了立冬,却没想象中的那么冷。

忽闻堂弟打算去河南,而且后天就走。

一瞬间感觉生活有点梦幻,惶惶然又脱离了掌控。

又想到今年找到的新工作,梦幻般的待遇,不限量的三餐供应,窗明几净的落地窗工位,这一切都像是在做梦。

iptables 及 docker 容器网络分析

本文仅针对 ipv4 网络

本文先介绍 iptables 的基本概念及常用命令,然后分析 docker/podman 是如何利用 iptables 和 Linux 虚拟网络接口实现的单机容器网络。

iptables 提供了包过滤、NAT 以及其他的包处理能力,iptables 应用最多的两个场景是 firewall 和 NAT

脚踏实地,仰望星空

本文可能充斥着学生型思维,请谨慎阅读…

最近看了些前辈们的博客,很多是在计算机行业工作几十年的前辈,还有许嵩的文章。

我更深刻地认识到了一件事:我当下的很多文章,都能看得出我在很认真的思考、总结,但是总是有很明显的稚嫩的感觉在里面——我自认为这是「学生型思维」。

secrets 管理工具 Vault 的介绍、安装及使用

Vault 是 hashicorp 推出的 secrets 管理、加密即服务与权限管理工具。它的功能简介如下:

  1. secrets 管理:支持保存各种自定义信息、自动生成各类密钥,vault 自动生成的密钥还能自动轮转(rotate)
  2. 认证方式:支持接入各大云厂商的账号体系(比如阿里云RAM子账号体系)或者 LDAP 等进行身份验证,不需要创建额外的账号体系。
  3. 权限管理:通过 policy,可以设定非常细致的 ACL 权限。
  4. 密钥引擎:也支持接管各大云厂商的账号体系(比如阿里云RAM子账号体系),实现 API Key 的自动轮转。
  5. 支持接入 kubernetes rbac 认证体系,通过 serviceaccount+role 为每个 Pod 单独配置认证角色。
  • 支持通过 sidecar/init-container 将 secrets 注入到 pod 中,或者通过 k8s operator 将 vault 数据同步到 k8s secrets 中

在使用 Vault 之前,我们是以携程开源的 Apollo 作为微服务的分布式配置中心。

QEMU/KVM 虚拟化环境的搭建与使用

QEMU/KVM 有一定的使用门槛,本文假设你已经拥有基础的虚拟化相关知识,最好是已经有 virtualbox 或 vmware workstation 的使用经验。

虚拟机(Virtual Machine)是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。它的主要用途有:

  1. 测试、尝鲜新的操作系统。
  2. 快速创建完全隔离的沙箱环境,用于运行某些不安全的或者敏感的文件/程序。
  3. 云服务商或企业会通过服务器虚拟化,提升服务器的利用率。
  4. 虚拟机可以创建快照跟备份,系统环境可以随时还原到旧的快照,也能方便地拷贝给他人。

而 QEMU/KVM 则是目前最流行的企业级虚拟化技术,它基于 Linux 内核提供的 KVM 模块,结构精简, 性能损失小,而且开源免费,因此成了大部分企业的首选虚拟化方案。

目前各大云厂商的虚拟化方案,新的服务器实例基本都是用的 KVM 技术。即使是起步最早,一直重度使用 Xen 的 AWS,从 EC2 C5 开始就改用了基于 KVM 定制的 Nitro 虚拟化技术。

但是 KVM 作为一个企业级的底层虚拟化技术,却没有对桌面使用做深入的优化,因此如果想把它当成桌面虚拟化软件来使用,替代掉VirtualBox/VMware Workstation, 有一定难度。