# @env-hopper/source-k8s 中文文档

规范地址：https://npmcn.com/package/%40env-hopper/source-k8s/

版本：2\.9\.3
npm 元数据更新时间：2026-11-13T03:25:03.813Z
中文译文更新时间：2026-11-13T21:32:33.277Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40env-hopper/source-k8s
原文对照：https://npmcn.com/package/%40env-hopper/source-k8s/?lang=original
项目主页：https://github.com/lislon/env-hopper
源码仓库：https://github.com/lislon/env-hopper

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：114 kB，25 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=16
- 运行依赖：1 个
- peer 依赖：@env-hopper/backend-core ^2\.9\.3
- 首次发布：2026-10-20T03:32:42.046Z
- 最新版本发布：2026-11-13T03:25:03.475Z
- 近 30 天下载量：3055（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：18（近 12 个月 18 个）

## 中文简介

从Kubernetes集群读取工作量和入侵

## 安装

```sh
npm install @env-hopper/source-k8s
```

也可以使用：`pnpm add @env-hopper/source-k8s`、`yarn add @env-hopper/source-k8s`、`bun add @env-hopper/source-k8s`

## README

# @env-phopper/ source-k8s (英语)

从Kubernetes集群读取部署和入侵,然后返回为 plain records (namespace, name, 图像, 标签, 复制品, 主机). 没有 绘制它自己的地图:需要保存哪些工作量以及它们对你的目录的意义 被呼叫者传入.

该船还:

-   一个保持记录流畅的监视器(列表,然后从列表中查看) 资源version,在410上重新列名,并用备份重试;
-   健康检查员 `@env-hopper/backend-core` 健康检查 运行.

## 安装

```bash
npm install @env-hopper/source-k8s @env-hopper/backend-core @kubernetes/client-node@^0.22.3
```

`@env-hopper/backend-core` 是同伴依赖,用于健康检查器 类型。 客户职能预计 `@kubernetes/client-node` 0.22 API (英语).

## 使用量

```ts
import { KubeConfig } from '@kubernetes/client-node'
import { createK8sSource, createK8sWatcher, k8sClientsFromKubeConfig, watchFromKubeConfig } from '@env-hopper/source-k8s'

const kc = new KubeConfig()
kc.loadFromDefault()
const { apps, networking } = k8sClientsFromKubeConfig(kc)

// One-off read
const source = createK8sSource({ cluster: 'production', apps, networking })
const workloads = await source.listWorkloads()
const ingresses = await source.listIngresses()

// Kept current
const watcher = createK8sWatcher({
  cluster: 'production',
  apps,
  networking,
  watch: watchFromKubeConfig(kc),
  keepWorkload: (w) => w.namespace !== 'kube-system',
  onChange: (change) => console.log(change.kind, change.type, change.record.name),
})
watcher.start()
```

## 短寿符

当 API 服务器取出一个过期的符号( 从您所显示的云中 ) 身份,比如, 包入KubeConfig, 所以每个请求都要求当前一个:

```ts
import { cachedToken, withBearerToken } from '@env-hopper/source-k8s'

const token = cachedToken(async () => ({ token: await mintToken(), expiresAt: new Date(Date.now() + 15 * 60_000) }), { refreshBeforeMs: 5 * 60_000 })
const authed = withBearerToken(kc, token)
const { apps, networking } = k8sClientsFromKubeConfig(authed)
const watch = watchFromKubeConfig(authed)
```

`cachedToken` 薄荷薄荷一次,再用这个符号直到 `refreshBeforeMs` 在此之前 `expiresAt`;同时调用者共享一分薄荷,失败的薄荷被重审 下一个电话.

## 健康检查

```ts
import { runCheck } from '@env-hopper/backend-core'
import { k8sReadinessChecker } from '@env-hopper/source-k8s'

const result = await runCheck(k8sReadinessChecker, {
  cluster: 'production',
  namespace: 'shop',
  name: 'checkout',
  apps, // from k8sClientsFromKubeConfig(kc)
})
```

-   `replicas === 0`数字 : `unknown` (缩放后,未断出)
-   `readyReplicas === replicas`数字 : `healthy`
-   `0 < readyReplicas < replicas`数字 : `degraded`
-   `readyReplicas === 0`数字 : `down`

## 许可证

麻省理工学院

## 常见问题

### @env-hopper/source-k8s 是什么？

从Kubernetes集群读取工作量和入侵

### 如何安装 @env-hopper/source-k8s？

在项目目录运行 npm install @env-hopper/source-k8s，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@env-hopper/backend-core（^2\.9\.3）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @env-hopper/source-k8s 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @env-hopper/source-k8s 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @env-hopper/source-k8s 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=16。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @env-hopper/source-k8s 可以商用吗？

@env-hopper/source-k8s 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @env-hopper/source-k8s 的下载量有多少？

根据 npm 官方下载统计，@env-hopper/source-k8s 在 2026/10/14 – 2026/11/12 这 30 天内被下载 3,055 次，日均约 102 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @env-hopper/source-k8s 还在维护吗？

最新版本 2\.9\.3 发布于 2026/11/13（今天）；至今共发布 18 个版本，其中过去 12 个月发布了 18 个；首次发布于 2026/10/20。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

