云原生爱好者周刊:这款支持全平台的 Podman Desktop 值得一试

1,192 阅读6分钟

开源项目推荐

Podman Desktop Companion

Podman 桌面客户端,支持 macOS、Windows 和 Linux 平台,后端支持原生 Podman(仅支持 Linux)、Podman Machine、Lima(仅支持 macOS)以及 WSL(仅支持 Windows),还兼容 Docker API,功能比较强大。

xpid

类似于 Nmap,不过 xpid 是用来扫描进程的,支持扫描所有容器进程、eBPF 进程、隐藏进程等。

xpid [flags] -o [output] <query>

Investigate all pids
  xpid

Investigate pid 1
  xpid 1

Investigate pids 1-10 in table view
  xpid -o table 1-10

Find all container processes on a system
  xpid -c

Find all container processes between pids 100-200 in the color formatter
  xpid -c -o color 100-200

Find all processes running with eBPF programs as JSON
  xpid --ebpf -o json <pid-query>

Find all processes between specific values
  xpid <flags> +100      # Search pids up to 100
  xpid <flags> 100-2000  # Search pids between 100-2000 
  xpid <flags> 65000+    # Search pids 65000 or above

Find all "hidden" processes on a system
  # Looks for chdir, opendir, and dent in /proc
  xpid -x <pid-query>

VolSync

VolSync 是一个 Kubernetes Operator,用来在集群内部(或者跨集群)异步复制存储卷(PV)的数据,地层使用的是 Rclone、Restic 和 Rsync,无视后端存储的类型,任何存储类型皆可复制。

Scheduler Plugins

Kubernetes 的调度器除了内置的插件外,社区还提供了一系列比较受欢迎的插件,这个仓库提供的调度插件已经在部分大公司被广泛使用,可靠性比较高。

ssh no ports

这个项目比较有意思,服务端无需开放任何端口,客户端都可以通过 SSH 登录该设备。

Inspektor Gadget

Inspektor Gadget 可以当作 Kubernetes 集群调试检测工具箱,提供了各种用来检测和调试的参数。它会使用内核中的 BPF 辅助程序监控来自用户空间程序的系统调用相关事件,并展示给用户。

$ kubectl gadget --help
Collection of gadgets for Kubernetes developers

Usage:
  kubectl-gadget [command]

Available Commands:
  advise      Recommend system configurations based on collected information
  audit       Audit a subsystem
  completion  generate the autocompletion script for the specified shell
  deploy      Deploy Inspektor Gadget on the cluster
  help        Help about any command
  profile     Profile different subsystems
  snapshot    Take a snapshot of a subsystem and print it
  top         Gather, sort and periodically report events according to a given criteria
  trace       Trace and print system events
  traceloop   Get strace-like logs of a pod from the past
  undeploy    Undeploy Inspektor Gadget from cluster
  version     Show version

...

Fleet

Fleet 是一款新的 Rust 编译工具,编译速度比 Cargo 快 5 倍。

RedisInsight

RedisInsight 是 Redis 官方出品的 Redis GUI 管理工具,它可以对 Redis 的内存、连接数、命中率以及正常运行时间进行监控,并且可以在界面上使用 CLI 和连接的 Redis 进行交互。

podman-login

这是红帽开源的专门用来登录 OCI 镜像仓库的 GitHub Action。使用方法很简单,例如:

name: Log in to ghcr.io
on:
  push:

env:
  REGISTRY_USER: ${{ github.actor }}
  REGISTRY_PASSWORD: ${{ github.token }}
  IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }}

jobs:
  login:
    name: Log in to GitHub Container Registry
    runs-on: ubuntu-20.04
    steps:
      - name: Log in to ghcr.io
        uses: redhat-actions/podman-login@v1
        with:
          username: ${{ env.REGISTRY_USER }}
          password: ${{ env.REGISTRY_PASSWORD }}
          registry: ${{ env.IMAGE_REGISTRY }}

  # Now you can push images, and pull private ones, from ghcr.io.

电子书推荐

设计数据密集型应用 - 中文翻译

现今,尤其是在互联网领域,大多数应用都属于数据密集型应用。本书从底层数据结构到顶层架构设计,将数据系统设计中的精髓娓娓道来。其中的宝贵经验无论是对架构师、DBA、还是后端工程师、甚至产品经理都会有帮助。

这也是一本深入浅出的书,讲述概念的来龙去脉而不是卖弄定义,介绍事物发展演化历程而不是事实堆砌,将复杂的概念讲述的浅显易懂,但又直击本质不失深度。每章最后的引用质量非常好,是深入学习各个主题的绝佳索引。

AWK 程序设计语言 - 中文翻译

Awk 是一门特殊的编程语言, 它非常适合处理机械化的数据处理工作,经常只需要一两行便可搞定复杂的数据处理工作。本书的第一目标是告诉读者 Awk 是什么,以及如何高效地使用它来处理数据。

文章推荐

追踪 Cilium 中的间歇性故障

为分布式系统开发应用是非常有挑战性的,因为在不同可用区或地区的不同节点上,网络堆栈可能有多处都出现了错误。Kubernetes 是个双刃剑,既会放大挑战,同时也会为我们提供更好的工具,帮助我们从多个角度收集所需信息,快速定位问题所在。

使用 Open Policy Agent 加固 Kubernetes 集群安全

对于大多数组织来说,内置的 Kubernetes 安全功能并不足以对其集群中运行的工作负载执行更加细化的规则和策略,所以就需要 OPA 和 Gatekeeper 这样的项目来帮助 Kubernetes 集群实现更高级别的安全性。

中科金财区块链平台容器化最佳实践

本文分享了中科金财基于 KubeSphere 融合区块链技术二次开发改造的经验。

云原生动态

OpenFunction 成为 CNCF 沙箱项目

2022 年 4 月 27 日,青云科技容器团队开源的函数即服务(FaaS: Function-as-a-Service)项目 OpenFunction 顺利通过了云原生计算基金会 CNCF 技术监督委员会(TOC)的投票,正式进入 CNCF 沙箱(Sandbox)托管。这就意味着 OpenFunction 得到了云原生开源社区的认可,同时通过进入 Sandbox 可以进一步保障项目的中立性,开发者以及合作伙伴等都可以参与项目建设,共同打造新一代开源函数计算平台。

Notification Manager 2.0.0 发布

Notification Manager 是 KubeSphere 可观测团队开源的一款 Kubernetes 平台上的多租户通知管理系统,其从 Alertmanager 接收告警消息,并根据告警消息的租户标签(如 namespace)将告警消息发送到对应的通知渠道。

日前,Notification Manager 2.0.0 正式发布,该版本为您带来了许多值得关注的功能,包括新增飞书通知、通知路由、通知静默、自定义模板增强等。

Kubernetes 1.24 发布

Kubernetes 1.24 发布,这是 2022 年的第一个版本!

此版本包含 46 个增强功能:14 个增强功能已升级为稳定版,15 个增强功能正在进入测试阶段,13 个增强功能正在进入 alpha。此外,两个功能已被弃用,两个功能已被删除:

  • Dockershim 从 kubelet 中移除
  • Beta API 默认关闭
  • 签署发布工件
  • OpenAPI v3
  • 存储容量和卷扩展普遍可用
  • 卷扩展增加了对调整现有持久卷大小的支持
  • 非抢占优先于稳定
  • 存储插件迁移
  • gRPC 探针升级到 Beta
  • Kubelet 凭证提供者毕业至 Beta
  • Alpha 中的上下文日志记录
  • 避免 IP 分配给服务的冲突
  • ClusterIP 可以分配一个服务
  • 从 Kubelet 中删除动态 Kubelet 配置
  • CNI 版本相关的重大更改

Istio 已申请成为 CNCF 项目

Istio 项目宣布加入云原生计算基金会(CNCF)。在 Istio 指导委员会的支持下,谷歌已经提交了 Istio 加入 CNCF 的申请提案。

自2017 年 5 月 Google、IBM 和 Lyft 推出 Istio 0.1 到现在已经快 5 年了。第一个版本为服务网格设定了标准:流量管理、策略执行和可观察性,由工作负载旁边的 sidecar 提供支持。根据最近的 CNCF 调查,我们很自豪能成为最受欢迎的服务网格,并期待与 CNCF 社区围绕网络和服务网格展开更密切的合作。

开源之夏 2022 重磅来袭!欢迎报名 KubeSphere 社区项目!

“开源之夏(英文简称 OSPP)”是中科院软件所“开源软件供应链点亮计划”指导下的系列暑期活动,由软件所与 openEuler 社区共同主办。

开源之夏是一项主要面向高校学生的暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展。活动联合各大开源社区,针对重要开源软件的开发与维护提供项目,并向全球高校学生开放报名。

本次活动,KubeSphere 社区共提交了 6 个开发类项目课题,涉及 KubeSphere、KubeKey、KubeEye、OpenFunction 等开源项目。

本文由博客一文多发平台 OpenWrite 发布!