在kubernetes里部署MetalLB

Kubernetes 没有为裸机集群提供网络负载均衡器(LoadBalancer 类型的服务)的实现。 Kubernetes 附带的网络负载均衡器的实现都是调用各种 IaaS 平台(GCP、AWS、Azure…)的代码。 如果您没有在受支持的 IaaS 平台(GCP、AWS、Azure…)上运行,LoadBalancers 在创建时将无限期地保持在“pending”状态。

MetalLB 是一个负载均衡器,专门解决裸金属 Kubernetes 集群中无法使用 LoadBalancer 类型服务的痛点。MetalLB 使用标准化的路由协议,以便裸金属 Kubernetes 集群上的外部服务也尽可能地工作。即 MetalLB 能够帮助你在裸金属 Kubernetes 集群中创建 LoadBalancer 类型的 Kubernetes 服务。

GitHub在七夕搞事情?

如果你在七夕(没错就是2021年8月14日)的这一天刚好加班,又想推送代码到Github,你就会遇到这个问题:remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.,这个提示大致意思是:2021年8月13日起Github将不再支持密码验证的方式Push,请将密码换成token令牌进行访问。

Redis无密码被别人上了以后

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。

Redis因配置不当可以未授权访问。攻击者无需认证访问到内部数据,可导致敏感信息泄露,也可以恶意执行flushall来清空所有数据。 攻击者可通过EVAL执行lua代码,或通过数据备份功能往磁盘写入后门文件。

如果Redis以root身份运行,可以给root账户写入SSH公钥文件,直接通过SSH登录受害服务器。

使用 buildx 构建多平台 Docker 镜像

在工作和生活中,我们可能经常需要将某个程序跑在不同的 CPU 架构上,比如让某些不可描述的软件运行在树莓派或嵌入式路由器设备上。特别是 Docker 席卷全球之后,我们可以轻松地在 ARM 设备上通过容器部署各种好玩的应用,而不用在意各种系统的差异性。

但是想要跨平台构建 Docker 镜像可不是一件轻松的活,要么到不同 CPU 架构的系统上全部构建一遍,要么就得在当前系统上通过虚拟化技术模拟不同的 CPU 架构,最后可能还要想办法合并镜像,费力不讨好。

不过值得庆幸的是,Docker 19.03 引入了一个新的实验性插件,该插件使得跨平台构建 Docker 镜像比以往更加容易了。在介绍这个新特性之前,我们先来了解一下跨 CPU 架构构建程序的基础知识。

搭建高可用Etcd集群

本文中我们将探索如何配置一个启用TLS的3节点Etcd集群。

Etcd是云原生生态中最受欢迎的开源项目之一,它是云原生计算基金会(CNCF)孵化的项目,目前已经成为Kubernetes基础架构的核心构件。

Etcd集群采用raft算法选举Leader, 最小raft集群需要3个参与者,所以一个Etcd集群最少需要3台虚拟机.