Kubernetes 官方文档终于新增了关于多租户的最佳实践,虽然 Kubernetes 没有最终用户或租户的概念,但提供了多种功能来实现不同的租户需求,感兴趣的小伙伴可以参考一下。
开源项目推荐
Prometheus 架构演进之路
这个 PPT 使用精美的插图展示了 Prometheus 项目的发展历程。
Pulsar
Pulsar 是基于 eBPF 的高度模块化的物联网运行期安全代理框架。这名字和 Apache Pulsar 撞衫了吧~~
Epimetheus
Prometheus 的 Fork 版本,使用 FrostDB 作为时序数据库。FrostDB 是比较新的列式数据库。
tproxy
这个工具可以用来分析 MySQL 连接池以及常规的 gRPC,当然也可以用来分析任何 TCP 连接。
pg_timetable
pg_timetable 是 PostgreSQL 的高级作业调度器,与传统的作业调度系统不同,它完全由数据库驱动,并提供了一些比较新颖的概念,支持执行 PostgreSQL 命令和系统应用的命令。例如:
-- Run public.my_func() at 00:05 every day in August:
SELECT timetable.add_job('execute-func', '5 0 * 8 *', 'SELECT public.my_func()');
-- Run VACUUM at minute 23 past every 2nd hour from 0 through 20 every day:
SELECT timetable.add_job('run-vacuum', '23 0-20/2 * * *', 'VACUUM');
-- Refresh materialized view every 2 hours:
SELECT timetable.add_job('refresh-matview', '@every 2 hours',
'REFRESH MATERIALIZED VIEW public.mat_view');
-- Clear log table after pg_timetable restart:
SELECT timetable.add_job('clear-log', '@reboot', 'TRUNCATE public.log');
-- Reindex at midnight on Sundays with reindexdb utility:
-- using default database under default user (no command line arguments)
SELECT timetable.add_job('reindex-job', '0 0 * * 7', 'reindexdb', job_kind := 'PROGRAM');
-- specifying target database and tables, and be verbose
SELECT timetable.add_job('reindex-job', '0 0 * * 7', 'reindexdb',
'["--table=foo", "--dbname=postgres", "--verbose"]'::jsonb, 'PROGRAM');
-- passing password using environment variable through bash shell
SELECT timetable.add_job('reindex-job', '0 0 * * 7', 'bash',
'["-c", "PGPASSWORD=5m3R7K4754p4m reindexdb -U postgres -h 192.168.0.221 -v'::jsonb,
'PROGRAM');
文章推荐
使用 Vcluster 来减少 Kubernetes 集群的分散性
相信大家都会遇到这样的苦恼,随着项目的不断增多,开发与测试环境会越来越多,Kubernetes 集群也会越来越多,而且每个集群版本都不一致,支持的开源生态的组件版本也不一致,最终会导致集群资源利用率低下,大大增加了集群的复杂性。本文尝试使用 Vcluster 来解决这个问题。
将 NestJS 的报错信息暴露为 Prometheus 的 Metrics
这篇文章对如何收集 NestJS 报错信息并将其暴露为 Prometheus 指标进行了非常深入的研究。
基于 CoreDNS 和 K8s 构建云原生场景下的企业级 DNS
CoreDNS 是一个出色的云原生开源 DNS 服务器,提供 K8s 服务发现和DNS服务器功能。KubeSphere 是一个开源的容器云管理平台,提供全生命周期的 K8s 容器应用管理。结合 KubeSphere 和 CoreDNS,可以搭建一个云原生的企业 DNS 系统,实现统一配置,监控运维、弹性伸缩。
基于云原生的私有化 PaaS 平台交付实践
本文将解读如何利用云原生解决私有化交付中的问题,进而打造一个 PaaS 平台,提升业务平台的复用性。
云原生动态
云原生 Meetup 广州站报名开启
今年下半年的第一站 Meetup,KubeSphere 社区将走进广州市,与 SOFAStack 社区联合组织。
活动时间:2022 年 8 月 6 日 14:00——18:00
活动地点:广东省广州市海珠区阅江西路 88 号阿里中心(广州)北塔 4F 万松书院
Cilium 1.12 发布
日前,Cilium 1.12 正式发布。该版本主要变化如下:
- 具有可选 Sidecar 的 Kubernetes 原生服务网格
- 完全兼容的入口控制器
- ClusterMesh 增强功能包括服务亲和性
- Egress Gateway 和对外部工作负载的额外支持
- Cilium Tetragon 发布
- 其他增强功能——额外的网络可见性控制、将 Cilium 作为非特权容器运行的能力、 pod CIDR 的动态分配、IPv4/IPv6 NAT、AWS ENI 前缀委托等等。
Kubernetes Cluster API 集成了持续模糊测试
在过去的几个月里,Ada Logics的团队一直致力于将持续模糊测试集成到Kubernetes 集群 API项目中。这是一项专注于改善 Cluster API 的安全状况并确保 Cluster API 用户持续获得良好体验的努力。模糊测试集成涉及在 OSS-Fuzz 项目中注册 Cluster API 并开发一组模糊器,将代码覆盖率提升到成熟水平。
API 平台 Kreya 将 REST 支持添加到以 gRPC 为中心的解决方案中
API 平台 Kreya 现在支持 REST,并在 7 月 11 日推出的最新 1.8 版本中提供了新的专业和企业产品。该工具最初是为支持 gRPC 而开发的。
REST 操作包括目录设置、环境和模板,以及对身份验证的支持。
除了推出对 REST 的支持外,Kreya 团队还推出了它的第一个付费功能:脚本和测试。
OSTIF 对 Argo 的审核已完成
开源技术改进基金很高兴报告又一次安全审计的结果,这次是 Argo 项目。Argo 项目是一组使用 Kubernetes 完成工作的工具。经审核的 Argo 的主要组成部分是:
- Argo Workflows – 容器原生工作流引擎
- Argo CD – 声明式 GitOps 持续交付
- Argo Events – 基于事件的依赖管理器
研究结果导致了 26 个安全问题,包括 1 个严重错误和 4 个高度严重错误已得到修复。最重要的发现是 ArgoCD 中的 XSS 注入允许攻击者在 UI 中执行 javascript 代码,可能允许攻击者对 Kubernetes 集群进行管理员控制。
本文由博客一文多发平台 OpenWrite 发布!