第 20 章 Service Interconnect 参考
20.1. 参考
20.1.1. skupper 概念
20.1.1.1. 站点概念
站点是运行应用程序负载的 网络中的 一个位置。workload.html站点通过 链接 加入。
站点与一个平台和一个网络相关联。每个站点都有零个或多个工作负载,以及零个或多个链接。
站点 在多个平台上 操作 .一个站点(site)对应于平台实例中的一个命名空间。站点可以添加到网络中,并动态从网络中删除。
每个站点都有一个 Skupper 路由器,它负责与本地工作负载通信,并将流量转发到远程站点中的路由器。
20.1.1.2. 工作负载概念
工作负载是在平台上运行的一组进程。platform.html进程是 pod、容器或系统进程。站点中的 工作负载 使用 连接器 作为 网络上的 服务公开。
一个平台有零个或多个工作负载。站点也具有零个或多个工作负载。每个工作负载都有零个或多个进程,以及零个或多个 连接器。
工作负载通过提供应用的其他部分的网络接口(如 API)来实施应用的一部分。工作负载可以是客户端和服务器。
在 Kubernetes 中,工作负载是 Deployment、StatefulSet 或 DaemonSet。在 Docker 或 Podman 上,工作负载是一组容器。在 Linux 上,工作负载是一组系统进程。
20.1.1.3. 平台概念
平台是用于运行 应用程序工作负载的 系统。平台主机 站点。skupper 支持 Kubernetes、Docker、Podman 和 Linux。网络中的每个站点都可以在任何受支持的平台上运行。
平台为相关工作负载和资源提供命名空间。skupper 使用命名空间在平台的一个实例上托管多个独立站点。一个平台中的每个站点都可以属于不同的应用程序网络。
一个平台有零个或多个命名空间。每个命名空间都与零个或多个工作负载关联。命名空间可以与站点关联。
20.1.1.4. 网络概念
网络是由 链接 加入的一组 站点。Skupper 网络也称为应用程序网络或虚拟应用程序网络(VAN)。
网络具有一个或多个站点。每个站点仅属于一个网络。
网络中的每个站点都可以向网络中的其他站点公开服务。反过来,网络中的每个站点都可以访问这些公开的服务。每个网络都用于一个分布式应用程序。这提供了与其他应用程序和网络隔离。
20.1.1.5. 链接概念
链接是 站点 间通信的频道。包含应用程序连接和请求的链接。组链接站点构成 网络。
要创建到远程站点的链接,远程站点必须启用 链接访问。链接访问提供了接受链接的外部访问点。
站点有零个或多个链接。每个链接都有一个主机、端口和 TLS 凭据,用于进行相互 TLS 连接到远程站点。此外,一个站点具有零个或多个链接访问。通常,每个站点都只需要一个。每个链接访问都有一个主机、端口和 TLS 凭据,用于公开接受来自远程站点的连接的 TLS 端点。
两个方向链接间的应用程序连接和请求流。链接站点可以与网络中的任何其他站点通信,即使它没有直接链接。可以动态添加和删除链接。
您可以使用 访问令牌 来安全地交换创建链接所需的连接详情。
20.1.1.6. 访问令牌概念
访问令牌是一个简短的凭证,用于创建 链接。访问令牌包含对应 访问权限权限的 URL 和机密代码。
访问令牌由访问权限授权发出。授予零个或多个令牌的问题。令牌被重新考虑链接。
访问令牌具有有限的 redemptions 和 limited lifespans。默认情况下,它们只能被重新考虑一次,并在发出 15 分钟后过期。您可以通过配置访问权限授权来设置自定义限制。
- 希望接受链接(站点 1)的站点将创建一个访问权限授权。
- 它使用访问授权来发布对应的访问令牌并将其传送到远程站点(站点 2)。
- 站点 2 将访问令牌提交到站点 1 以供重新设计。
- 如果令牌有效,则站点 1 将向站点 2 发送创建站点 1 的链接所需的 TLS 主机、端口和凭证。
20.1.1.7. 侦听器概念
侦听器将本地连接端点绑定到 远程站点 中的 连接器。监听器和连接器使用 路由密钥 匹配。
站点有零个或更多监听程序。每个监听器都有一个关联的连接端点和路由密钥。连接端点会公开主机和端口,以接受来自本地客户端的连接。路由键是一个字符串标识符,它将监听程序绑定到远程站点中的连接器。
在 Kubernetes 上,侦听器 作为服务 实施。在 Docker、Podman 和 Linux 上,它是绑定到本地网络接口的侦听套接字。
skupper 路由器将跨网络的客户端连接从监听程序转发到具有匹配路由密钥的连接器。然后,连接器将客户端连接转发到工作负载服务器。
20.1.1.8. 连接器概念
连接器将本地 工作负载 绑定到 远程站点 中的 监听程序。监听器和连接器使用 路由密钥 匹配。
站点有零个或多个连接器。每个连接器都有关联的工作负载和路由密钥。工作负载可以指定为 Kubernetes pod 选择器,或者指定为本地网络服务的主机和端口。路由键是一个字符串标识符,它将连接器绑定到远程站点中的监听程序。
在 Kubernetes 上,通常使用 pod 选择器来指定工作负载。https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/在 Docker、Podman 和 Linux 上,它使用主机和端口来指定。
skupper 路由器将跨网络的客户端连接从监听程序转发到具有匹配路由密钥的连接器。然后,连接器将客户端连接转发到工作负载服务器。
20.1.1.9. 路由密钥概念
路由键有零个或多个监听器,以及零个或多个连接器。当服务至少有一个监听程序和一个连接器,与路由键匹配时,会在应用程序网络上公开服务。
20.1.1.10. 应用程序概念
应用程序是一组协同工作 的组件。Skupper 网络 专用于一个应用程序。
应用程序具有一个或多个组件。
20.1.1.11. 组件概念
组件是 应用程序 的逻辑部分。每个组件都有一组实现应用程序目标的职责。组件提供和需要 接口,如 REST API 或数据库监听程序。组件由 工作负载 实施。
应用程序具有一个或多个组件。每个组件提供并需要零个或多个接口。每个组件都由零个或多个工作负载实现。
20.1.2. skupper 资源
20.1.2.1. 站点资源
站点是运行应用程序负载的网络中的一个位置。站点通过 链接 加入。
Site 资源是站点配置的基础。它是其命名空间中所有 Skupper 资源的父项。每个命名空间只能有一个活跃的 Site 资源。
例子
最小站点:
apiVersion: skupper.io/v2alpha1 kind: Site metadata: name: east namespace: hello-world-east
apiVersion: skupper.io/v2alpha1
kind: Site
metadata:
name: east
namespace: hello-world-east
配置为接受链接的站点:
apiVersion: skupper.io/v2alpha1 kind: Site metadata: name: west namespace: hello-world-west spec: linkAccess: default
apiVersion: skupper.io/v2alpha1
kind: Site
metadata:
name: west
namespace: hello-world-west
spec:
linkAccess: default
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
linkAccess Type: 字符串
为来自远程站点的链接配置外部访问。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
HA Type: boolean
为高可用性(HA)配置站点。HA 站点有两个活跃的路由器。
请注意,Skupper 路由器是无状态的,它们会在失败后重启。这已提供高级别的可用性。启用 HA 进一步,并减少重启导致的停机时间窗口。
- default
- 假的 Updatable:: True 查看: 高可用性
defaultIssuer Type: 字符串
包含用于从令牌生成证书的签名 CA 的 Kubernetes secret 名称。如果没有指定 secret,则会生成 secret。
如果没有设置一个特定的签发者,则 AccessGrant 和 RouterAccess 会使用这个签发者。
- default
- skupper-site-ca
- updatable
- true 还会看到: 路由器 TLS、Kubernetes TLS secret
Edge Type: boolean
将站点配置为以边缘模式运行。Edge 站点无法接受来自远程站点的链接。
Edge 模式可帮助您将网络扩展到大量站点。但是,对于具有 16 个或更少站点的网络,没有好处。
目前,边缘站点也无法启用 HA。
- default
- false 另请参阅: 大网络
ServiceAccount Type: 字符串
运行 Skupper 路由器的 Kubernetes 服务帐户名称。如果没有指定服务帐户,则会生成服务帐户。
- default
- generated
另请参阅: Kubernetes 服务帐户
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
-
routerDataConnections
:设置路由器链接到其他路由器时使用的数据连接数量。+ Default: Computed 基于路由器 worker 线程的数量。最低 2。 -
routerLogging
:设置路由器日志级别。+ 默认:info
.Choices:info
,warning
,error
.
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:此资源的输出资源已创建。 -
运行
:至少一个路由器 pod 正在运行。 -
已解析
:用于链接访问的主机名或 IP 地址。 -
Ready
:网站可供使用。所有其他条件都为 true。
另请参阅: 资源状态、Kubernetes 条件
defaultIssuer Type: 字符串
包含活跃默认签名 CA 的 Kubernetes secret 名称。
另请参阅: 路由器 TLS、Kubernetes TLS secret
端点 类型: 数组
连接端点的数组。每个项目都有一个名称、主机、端口和组。
这包括用于链接访问的连接端点。
20.1.2.2. 链接资源
Link 资源指定远程连接端点和 TLS 凭证,以建立与远程站点的 mutual TLS 连接。要创建活动链接,远程站点必须首先启用 链接访问。链接访问提供了接受链接的外部访问点。
通常不会直接创建链接。反之,您可以使用 访问令牌 获取链接。
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
端点 类型: 数组
连接端点的数组。每个项目都有一个名称、主机、端口和组。
Cost Type: integer
通过链接发送流量的路由成本。
- default
- 1 另请参阅: 负载均衡
tlsCredentials Type: 字符串
用于 mutual TLS 路由器到路由器通信的证书捆绑包名称。该捆绑包包含客户端证书和密钥以及可信服务器证书(通常是 CA)。
在 Kubernetes 上,该值是当前命名空间中的 Secret 名称。
在 Docker、Podman 和 Linux 上,值是当前命名空间中的 input/certs/
下的目录名称。
另请参阅: 路由器 TLS、Kubernetes TLS secret、系统 TLS 凭证
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
remoteSiteId Type: string
链接的站点的唯一 ID。
remoteSiteName Type: 字符串
链接到的站点的名称。
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:链接配置已应用到路由器。 -
操作
:到远程站点的链接处于活跃状态。 -
Ready
:链接可以使用。所有其他条件都为 true。
另请参阅: 资源状态、Kubernetes 条件
20.1.2.3. 侦听器资源
侦听器将本地连接端点绑定到 远程站点 中的 连接器。监听器和连接器通过路由密钥匹配。
Listener 资源指定接受本地客户端连接的主机和端口。要公开多端口服务,请使用同一主机值创建多个监听程序。
例子
站点 West 中的监听程序用于 site East 中的 Hello World 后端服务:
apiVersion: skupper.io/v2alpha1 kind: Listener metadata: name: backend namespace: hello-world-west spec: routingKey: backend host: backend port: 8080
apiVersion: skupper.io/v2alpha1
kind: Listener
metadata:
name: backend
namespace: hello-world-west
spec:
routingKey: backend
host: backend
port: 8080
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
routingKey Type: string
用于将流量路由到连接器的标识符。要在远程站点中启用连接到服务,本地监听程序和远程连接器必须具有匹配的路由密钥。
- updatable
- true 另请参阅: 路由密钥概念
主机 类型: 字符串
本地监听程序的主机名或 IP 地址。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- updatable
- True
端口类型: 整数
本地监听器的端口。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- updatable
- True
exposePodsByName Type: boolean
如果为 true,请将每个 pod 公开为单个服务。
- default
- 另请见: 单个 pod 服务
tlsCredentials Type: 字符串
用于安全客户端到路由器通信的 TLS 证书捆绑包的名称。该捆绑包包含服务器证书和密钥。它选择性地包括 mutual TLS 的可信客户端证书(通常是 CA)。
在 Kubernetes 上,该值是当前命名空间中的 Secret 名称。在 Docker、Podman 和 Linux 上,值是当前命名空间中的 input/certs/
下的目录名称。
另请参阅: 应用程序 TLS、Kubernetes TLS secret、系统 TLS 凭证
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
-
Observer
:设置用于生成流量指标的协议观察程序。+ Default:auto
.Choices:auto
,none
,http1
,http2
.
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
hasMatchingConnector Type: boolean
如果至少有一个连接器带有匹配的路由密钥(通常在远程站点中)。
- default
- false 另请参阅: 路由密钥概念
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:侦听器配置已应用到路由器。 -
匹配
:至少有一个与这个监听程序对应的连接器。 -
Ready
:侦听器可供使用。所有其他条件都为 true。
另请参阅: 资源状态、Kubernetes 条件
20.1.2.4. 连接器资源
连接器将本地工作负载绑定到 远程站点 中的 监听程序。监听器和连接器通过路由密钥匹配。
在 Kubernetes 上,Connector 资源具有一个选择器和端口,用于指定工作负载 pod。
在 Docker、Podman 和 Linux 上,Connector 资源具有一个主机和端口,用于指定本地服务器。另外,Kubernetes 也可以使用主机和端口。
例子
Hello World 后端服务站点东部的连接器:
apiVersion: skupper.io/v2alpha1 kind: Connector metadata: name: backend namespace: hello-world-east spec: routingKey: backend selector: app=backend port: 8080
apiVersion: skupper.io/v2alpha1
kind: Connector
metadata:
name: backend
namespace: hello-world-east
spec:
routingKey: backend
selector: app=backend
port: 8080
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
routingKey Type: string
用于将流量路由到连接器的标识符。要将本地工作负载公开给远程站点,远程监听程序和本地连接器必须具有匹配的路由密钥。
- updatable
- true 另请参阅: 路由密钥概念
端口类型: 整数
要连接的目标服务器上的端口。
- updatable
- True
选择器 类型: 字符串
用于指定目标服务器 pod 的 Kubernetes 标签选择器。它使用 < ;label-name>=<label-value>
; 语法。
在 Kubernetes 上,需要 选择器
或主机
。
- updatable
- true 还会看到: Kubernetes 标签选择器
主机 类型: 字符串
服务器的主机名或 IP 地址。这是指定目标服务器的 选择器
的替代选择。
在 Kubernetes 上,需要 选择器
或主机
。
在 Docker、Podman 或 Linux 上,需要 host
。
- updatable
- True
includeNotReadyPods Type: boolean
如果为 true,请将服务器 pod 包含在 NotReady
状态。
- default
- False
exposePodsByName Type: boolean
如果为 true,请将每个 pod 公开为单个服务。
- default
- 另请见: 单个 pod 服务
tlsCredentials Type: 字符串
用于安全路由器到服务器通信的 TLS 证书捆绑包名称。该捆绑包包含可信服务器证书(通常是 CA)。它选择性地包括 mutual TLS 的客户端证书和密钥。
在 Kubernetes 上,该值是当前命名空间中的 Secret 名称。在 Docker、Podman 和 Linux 上,值是当前命名空间中的 input/certs/
下的目录名称。
另请参阅: 应用程序 TLS、Kubernetes TLS secret、系统 TLS 凭证
useClientCert Type: boolean
连接时发送客户端证书,以启用 mutual TLS。
- default
- false 另请参阅: 应用程序 TLS
verifyHostname Type: boolean
如果为 true,要求连接的服务器的主机名与服务器证书中的主机名匹配。
- default
- false 另请参阅: 应用程序 TLS
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
hasMatchingListener Type: boolean
如果至少有一个监听程序具有匹配的路由密钥(通常在远程站点中)。
- default
- false 另请参阅: 路由密钥概念
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:连接器配置已应用到路由器。 -
匹配
:至少有一个与这个连接器对应的监听程序。 -
Ready
:连接器可供使用。所有其他条件都为 true。
20.1.2.5. 站点资源
selectedPods Type: array
站点是运行应用程序负载的网络中的一个位置。站点通过 链接 加入。
Site 资源是站点配置的基础。它是其命名空间中所有 Skupper 资源的父项。每个命名空间只能有一个活跃的 Site 资源。
例子
最小站点:
apiVersion: skupper.io/v2alpha1 kind: Site metadata: name: east namespace: hello-world-east
apiVersion: skupper.io/v2alpha1
kind: Site
metadata:
name: east
namespace: hello-world-east
配置为接受链接的站点:
apiVersion: skupper.io/v2alpha1 kind: Site metadata: name: west namespace: hello-world-west spec: linkAccess: default
apiVersion: skupper.io/v2alpha1
kind: Site
metadata:
name: west
namespace: hello-world-west
spec:
linkAccess: default
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
linkAccess Type: 字符串
为来自远程站点的链接配置外部访问。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
HA Type: boolean
为高可用性(HA)配置站点。HA 站点有两个活跃的路由器。
请注意,Skupper 路由器是无状态的,它们会在失败后重启。这已提供高级别的可用性。启用 HA 进一步,并减少重启导致的停机时间窗口。
- default
- 假的 Updatable:: True 查看: 高可用性
defaultIssuer Type: 字符串
包含用于从令牌生成证书的签名 CA 的 Kubernetes secret 名称。如果没有指定 secret,则会生成 secret。
如果没有设置一个特定的签发者,则 AccessGrant 和 RouterAccess 会使用这个签发者。
- default
- skupper-site-ca
- updatable
- true 还会看到: 路由器 TLS、Kubernetes TLS secret
Edge Type: boolean
将站点配置为以边缘模式运行。Edge 站点无法接受来自远程站点的链接。
Edge 模式可帮助您将网络扩展到大量站点。但是,对于具有 16 个或更少站点的网络,没有好处。
目前,边缘站点也无法启用 HA。
- default
- false 另请参阅: 大网络
ServiceAccount Type: 字符串
运行 Skupper 路由器的 Kubernetes 服务帐户名称。如果没有指定服务帐户,则会生成服务帐户。
- default
- generated
另请参阅: Kubernetes 服务帐户
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
-
routerDataConnections
:设置路由器链接到其他路由器时使用的数据连接数量。+ Default: Computed 基于路由器 worker 线程的数量。最低 2。 -
routerLogging
:设置路由器日志级别。+ 默认:info
.Choices:info
,warning
,error
.
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:此资源的输出资源已创建。 -
运行
:至少一个路由器 pod 正在运行。 -
已解析
:用于链接访问的主机名或 IP 地址。 -
Ready
:网站可供使用。所有其他条件都为 true。
另请参阅: 资源状态、Kubernetes 条件
defaultIssuer Type: 字符串
包含活跃默认签名 CA 的 Kubernetes secret 名称。
另请参阅: 路由器 TLS、Kubernetes TLS secret
端点 类型: 数组
连接端点的数组。每个项目都有一个名称、主机、端口和组。
这包括用于链接访问的连接端点。
20.1.2.6. 链接资源
Link 资源指定远程连接端点和 TLS 凭证,以建立与远程站点的 mutual TLS 连接。要创建活动链接,远程站点必须首先启用 链接访问。链接访问提供了接受链接的外部访问点。
通常不会直接创建链接。反之,您可以使用 访问令牌 获取链接。
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
端点 类型: 数组
连接端点的数组。每个项目都有一个名称、主机、端口和组。
Cost Type: integer
通过链接发送流量的路由成本。
- default
- 1 另请参阅: 负载均衡
tlsCredentials Type: 字符串
用于 mutual TLS 路由器到路由器通信的证书捆绑包名称。该捆绑包包含客户端证书和密钥以及可信服务器证书(通常是 CA)。
在 Kubernetes 上,该值是当前命名空间中的 Secret 名称。
在 Docker、Podman 和 Linux 上,值是当前命名空间中的 input/certs/
下的目录名称。
另请参阅: 路由器 TLS、Kubernetes TLS secret、系统 TLS 凭证
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
remoteSiteId Type: string
链接的站点的唯一 ID。
remoteSiteName Type: 字符串
链接到的站点的名称。
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:链接配置已应用到路由器。 -
操作
:到远程站点的链接处于活跃状态。 -
Ready
:链接可以使用。所有其他条件都为 true。
另请参阅: 资源状态、Kubernetes 条件
20.1.2.7. AccessGrant 资源
重新利用访问令牌重新指向本地站点的权限。远程站点可以使用包含授权 URL 和 secret 代码的令牌来获取由授权的证书颁发机构(CA)签名的证书,以及有限数量的红色。
资源状态的代码
、url
和 ca
属性用于从授权生成访问令牌。
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
redemptionsAllowed Type: integer
可以重新考虑此授权的访问令牌的次数。
- default
- 1
expirationWindow Type: 字符串(持续时间)
可以重新考虑此授权的访问令牌的时间周期。
- default
- 15m
Code Type: 字符串
用于验证为重新设计而提交的访问令牌的 secret 代码。
如果没有设置,则会生成一个值并放在 代码
status 属性中。
issuer Type: string
在此授权重新设计令牌时用于生成证书的 Kubernetes secret 名称。
如果没有设置,则使用 Site rsource 上的 defaultIssuer
。
另请参阅: 路由器 TLS、Kubernetes TLS secret
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
redemptions Type: integer
重新考虑此授权的令牌的次数。
expirationTime Type: string (date-time)
授权过期的时间。
URL Type: 字符串
此授权的 token-redemption 服务的 URL。
CA Type: 字符串
此授权的 token-redemption 服务的可信服务器证书。
Code Type: 字符串
用于验证为重新设计而提交的访问令牌的 secret 代码。
- default
- generated
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
processed
: 控制器已接受授权。 -
已解决
:授权服务可用于处理此授权的令牌。 -
Ready
:授权可供使用。所有其他条件都为 true。
另请参阅: 资源状态、Kubernetes 条件
20.1.2.8. accessToken 资源
用于创建链接的简短凭证。访问令牌包含对应访问权限的 URL 和 secret 代码。
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
URL Type: 字符串
远程站点上授权服务的 URL。
Code Type: 字符串
提交重新设计时用来验证令牌的 secret 代码。
CA Type: 字符串
远程站点上授权服务的可信服务器证书。
linkCost 类型: 整数
创建链接时要使用的链接成本。
- default
- 1 另请参阅: 负载均衡
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
重新考虑 类型: 布尔值
如果令牌已被重新考虑,则为 true。重新考虑令牌后,它就无法再次使用。
- default
- False
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
Re considered
: 令牌已交换给一个链接。
另请参阅: 资源状态、Kubernetes 条件
20.1.2.9. 侦听器资源
侦听器将本地连接端点绑定到 远程站点 中的 连接器。监听器和连接器通过路由密钥匹配。
Listener 资源指定接受本地客户端连接的主机和端口。要公开多端口服务,请使用同一主机值创建多个监听程序。
例子
站点 West 中的监听程序用于 site East 中的 Hello World 后端服务:
apiVersion: skupper.io/v2alpha1 kind: Listener metadata: name: backend namespace: hello-world-west spec: routingKey: backend host: backend port: 8080
apiVersion: skupper.io/v2alpha1
kind: Listener
metadata:
name: backend
namespace: hello-world-west
spec:
routingKey: backend
host: backend
port: 8080
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
routingKey Type: string
用于将流量路由到连接器的标识符。要在远程站点中启用连接到服务,本地监听程序和远程连接器必须具有匹配的路由密钥。
- updatable
- true 另请参阅: 路由密钥概念
主机 类型: 字符串
本地监听程序的主机名或 IP 地址。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- updatable
- True
端口类型: 整数
本地监听器的端口。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- updatable
- True
exposePodsByName Type: boolean
如果为 true,请将每个 pod 公开为单个服务。
- default
- 另请见: 单个 pod 服务
tlsCredentials Type: 字符串
用于安全客户端到路由器通信的 TLS 证书捆绑包的名称。该捆绑包包含服务器证书和密钥。它选择性地包括 mutual TLS 的可信客户端证书(通常是 CA)。
在 Kubernetes 上,该值是当前命名空间中的 Secret 名称。在 Docker、Podman 和 Linux 上,值是当前命名空间中的 input/certs/
下的目录名称。
另请参阅: 应用程序 TLS、Kubernetes TLS secret、系统 TLS 凭证
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
-
Observer
:设置用于生成流量指标的协议观察程序。+ Default:auto
.Choices:auto
,none
,http1
,http2
.
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
hasMatchingConnector Type: boolean
如果至少有一个连接器带有匹配的路由密钥(通常在远程站点中)。
- default
- false 另请参阅: 路由密钥概念
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:侦听器配置已应用到路由器。 -
匹配
:至少有一个与这个监听程序对应的连接器。 -
Ready
:侦听器可供使用。所有其他条件都为 true。
另请参阅: 资源状态、Kubernetes 条件
20.1.2.10. 连接器资源
连接器将本地工作负载绑定到 远程站点 中的 监听程序。监听器和连接器通过路由密钥匹配。
在 Kubernetes 上,Connector 资源具有一个选择器和端口,用于指定工作负载 pod。
在 Docker、Podman 和 Linux 上,Connector 资源具有一个主机和端口,用于指定本地服务器。另外,Kubernetes 也可以使用主机和端口。
例子
Hello World 后端服务站点东部的连接器:
apiVersion: skupper.io/v2alpha1 kind: Connector metadata: name: backend namespace: hello-world-east spec: routingKey: backend selector: app=backend port: 8080
apiVersion: skupper.io/v2alpha1
kind: Connector
metadata:
name: backend
namespace: hello-world-east
spec:
routingKey: backend
selector: app=backend
port: 8080
Name Type: string
资源名称。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
routingKey Type: string
用于将流量路由到连接器的标识符。要将本地工作负载公开给远程站点,远程监听程序和本地连接器必须具有匹配的路由密钥。
- updatable
- true 另请参阅: 路由密钥概念
端口类型: 整数
要连接的目标服务器上的端口。
- updatable
- True
选择器 类型: 字符串
用于指定目标服务器 pod 的 Kubernetes 标签选择器。它使用 < ;label-name>=<label-value>
; 语法。
在 Kubernetes 上,需要 选择器
或主机
。
- updatable
- true 还会看到: Kubernetes 标签选择器
主机 类型: 字符串
服务器的主机名或 IP 地址。这是指定目标服务器的 选择器
的替代选择。
在 Kubernetes 上,需要 选择器
或主机
。
在 Docker、Podman 或 Linux 上,需要 host
。
- updatable
- True
includeNotReadyPods Type: boolean
如果为 true,请将服务器 pod 包含在 NotReady
状态。
- default
- False
exposePodsByName Type: boolean
如果为 true,请将每个 pod 公开为单个服务。
- default
- 另请见: 单个 pod 服务
tlsCredentials Type: 字符串
用于安全路由器到服务器通信的 TLS 证书捆绑包名称。该捆绑包包含可信服务器证书(通常是 CA)。它选择性地包括 mutual TLS 的客户端证书和密钥。
在 Kubernetes 上,该值是当前命名空间中的 Secret 名称。在 Docker、Podman 和 Linux 上,值是当前命名空间中的 input/certs/
下的目录名称。
另请参阅: 应用程序 TLS、Kubernetes TLS secret、系统 TLS 凭证
useClientCert Type: boolean
连接时发送客户端证书,以启用 mutual TLS。
- default
- false 另请参阅: 应用程序 TLS
verifyHostname Type: boolean
如果为 true,要求连接的服务器的主机名与服务器证书中的主机名匹配。
- default
- false 另请参阅: 应用程序 TLS
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
Message Type: 字符串
人类可读的状态消息。此处报告错误消息。
另请参阅: 资源状态
hasMatchingListener Type: boolean
如果至少有一个监听程序具有匹配的路由密钥(通常在远程站点中)。
- default
- false 另请参阅: 路由密钥概念
conditions Type: array
一组指定条件,用于描述资源的当前状态。
-
配置
:连接器配置已应用到路由器。 -
匹配
:至少有一个与这个连接器对应的监听程序。 -
Ready
:连接器可供使用。所有其他条件都为 true。
20.1.2.11. AttachedConnector 资源
selectedPods Type: array
peer 命名空间中的连接器。
Name Type: string
资源名称。
名称必须与站点命名空间中关联的 AttachedConnectorBinding 资源相同。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
siteNamespace Type: 字符串
定义此连接器应附加到的命名空间的名称。
端口类型: 整数
要连接的目标服务器上的端口。
- updatable
- True
选择器 类型: 字符串
用于指定目标服务器 pod 的 Kubernetes 标签选择器。它使用 < ;label-name>=<label-value>
; 语法。
在 Kubernetes 上,需要 选择器
或主机
。
- updatable
- true 还会看到: Kubernetes 标签选择器
includeNotReadyPods Type: boolean
如果为 true,请将服务器 pod 包含在 NotReady
状态。
- default
- False
tlsCredentials Type: 字符串
用于安全路由器到服务器通信的 TLS 证书捆绑包名称。该捆绑包包含可信服务器证书(通常是 CA)。它选择性地包括 mutual TLS 的客户端证书和密钥。
在 Kubernetes 上,该值是当前命名空间中的 Secret 名称。在 Docker、Podman 和 Linux 上,值是当前命名空间中的 input/certs/
下的目录名称。
另请参阅: 应用程序 TLS、Kubernetes TLS secret、系统 TLS 凭证
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
conditions Type: array
一组指定条件,用于描述资源的当前状态。
另请参阅: 资源状态、Kubernetes 条件
20.1.2.12. AttachedConnectorBinding 资源
selectedPods Type: array
绑定到对等命名空间中的附加连接器。
Name Type: string
资源名称。
名称必须与连接器命名空间中的关联 AttachedConnector 资源的名称相同。
另请参阅: Kubernetes 对象名称
命名空间 类型: 字符串
资源的命名空间。
另请参阅: 平台概念、Kubernetes 命名空间、系统命名空间
connectorNamespace Type: 字符串
关联的 AttachedConnector 所在的命名空间的名称。
routingKey Type: string
用于将流量路由到连接器的标识符。要将本地工作负载公开给远程站点,远程监听程序和本地连接器必须具有匹配的路由密钥。
- updatable
- true 另请参阅: 路由密钥概念
exposePodsByName Type: boolean
如果为 true,请将每个 pod 公开为单个服务。
- default
- 另请见: 单个 pod 服务
设置 类型: 对象
包含额外设置的映射。每个映射条目都有一个字符串名称和一个字符串值。
通常,我们建议不要从默认值更改设置。
另请参阅 :资源设置
Status Type: 字符串
资源的当前状态。
-
Pending
: 资源正在处理。 -
错误
:处理资源时出错。如需更多信息,请参阅消息
。 -
Ready
:资源可供使用。
另请参阅: 资源状态
hasMatchingListener Type: boolean
如果至少有一个监听程序具有匹配的路由密钥(通常在远程站点中)。
- default
- false 另请参阅: 路由密钥概念
conditions Type: array
一组指定条件,用于描述资源的当前状态。
另请参阅: 资源状态、Kubernetes 条件
20.1.3. skupper 命令
20.1.4. CLI Group:站点操作
20.1.4.1. 使用站点
20.1.4.1.1. 站点命令
skupper site [subcommand] [options]
skupper site [subcommand] [options]
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
命令 | 描述 |
---|---|
创建站点 | |
更改站点设置 | |
删除站点 | |
显示站点的状态 | |
生成 Site 资源 |
20.1.4.1.2. site create 命令
skupper site create <name> [options]
skupper site create <name> [options]
创建站点。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | Ready |
例子
Create a site skupper site create west Create a site that can accept links from remote sites skupper site create west --enable-link-access
# Create a site
$ skupper site create west
Waiting for status...
Site "west" is ready.
# Create a site that can accept links from remote sites
$ skupper site create west --enable-link-access
主要选项
<name> 必需
Skupper 站点选择的名称。此名称显示在控制台和 CLI 输出中。
另请参阅: Kubernetes 对象名称
--enable-link-access 频繁使用
允许从外部访问远程站点的链接。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
--link-access-type
为来自远程站点的链接配置外部访问。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
- default
- default
- Choices:: default
-
使用默认链接访问。在 OpenShift 上,默认是
路由
。对于其他 Kubernetes 类别,默认值为loadbalancer
。 - route
- 使用 OpenShift 路由。仅限 OpenShift。
- LoadBalancer
- 使用 Kubernetes 负载均衡器。仅 Kubernetes。
- platform:: Kubernetes Updatable
- True See also: Site link
--enable-ha
为高可用性(HA)配置站点。HA 站点有两个活跃的路由器。
请注意,Skupper 路由器是无状态的,它们会在失败后重启。这已提供高级别的可用性。启用 HA 进一步,并减少重启导致的停机时间窗口。
- default
- false Platforms:: Kubernetes Updatable:: True 查看: 高可用性
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes 另请参见: 持续时间格式
--wait
在退出前等待给定状态。
- default
- ready
- Choices:: none
- 不要等待。
- 配置
- 等待配置被应用。
- ready
- 等待资源准备就绪。
- 平台
- Kubernetes 还会看到: 资源状态
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
错误
站点资源已存在
已经为命名空间定义了站点资源。
20.1.4.1.3. 站点更新命令
skupper site update [name] [options]
skupper site update [name] [options]
更改站点设置。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | Ready |
例子
Update the current site to accept links skupper site update --enable-link-access Update multiple settings skupper site update --enable-link-access --enable-ha
# Update the current site to accept links
$ skupper site update --enable-link-access
Waiting for status...
Site "west" is ready.
# Update multiple settings
$ skupper site update --enable-link-access --enable-ha
主要选项
[name] optional
站点资源的名称。
如果没有指定,则名称是与当前命名空间关联的站点的名称。
另请参阅: Kubernetes 对象名称
--enable-link-access 频繁使用
允许从外部访问远程站点的链接。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
--link-access-type
为来自远程站点的链接配置外部访问。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
- default
- default
- Choices:: default
-
使用默认链接访问。在 OpenShift 上,默认是
路由
。对于其他 Kubernetes 类别,默认值为loadbalancer
。 - route
- 使用 OpenShift 路由。仅限 OpenShift。
- LoadBalancer
- 使用 Kubernetes 负载均衡器。仅 Kubernetes。
- platform:: Kubernetes Updatable
- True See also: Site link
--enable-ha
为高可用性(HA)配置站点。HA 站点有两个活跃的路由器。
请注意,Skupper 路由器是无状态的,它们会在失败后重启。这已提供高级别的可用性。启用 HA 进一步,并减少重启导致的停机时间窗口。
- default
- false Platforms:: Kubernetes Updatable:: True 查看: 高可用性
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
--wait
在退出前等待给定状态。
- default
- ready
- Choices:: none
- 不要等待
- 配置
- 配置
- ready
- Ready
- 平台
- Kubernetes 还会看到: 资源状态
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
错误
不存在站点资源
没有可以更新的现有 Skupper 站点资源。
20.1.4.1.4. site delete 命令
skupper site delete [name] [options]
skupper site delete [name] [options]
删除站点。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 删除 |
例子
Delete the current site skupper site delete Delete the current site and all of its associated Skupper resources skupper site delete --all
# Delete the current site
$ skupper site delete
Waiting for deletion...
Site "west" is deleted.
# Delete the current site and all of its associated Skupper resources
$ skupper site delete --all
主要选项
[name] optional
站点资源的名称。
如果没有指定,则名称是与当前命名空间关联的站点的名称。
另请参阅: Kubernetes 对象名称
--all 常用
另外,删除与当前命名空间中的站点关联的所有 Skupper 资源。
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
--wait
等待删除完成,然后退出。
- default
- true Platforms:: Kubernetes
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
错误
不存在站点资源
没有要删除的现有 Skupper 站点资源。
20.1.4.1.5. 站点状态命令
skupper site status [name] [options]
skupper site status [name] [options]
显示站点的状态。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Show the status of the current site skupper site status
# Show the status of the current site
$ skupper site status
Name: west
Status: Ready
Message: -
主要选项
[name] optional
站点资源的名称。
如果没有指定,则名称是与当前命名空间关联的站点的名称。
另请参阅: Kubernetes 对象名称
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes 另请参见: 持续时间格式
--output
以结构化输出格式将状态打印到控制台。
- Choices
- JSON:: Produce JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.4.1.6. 站点生成命令
skupper site generate <name> [options]
skupper site generate <name> [options]
生成 Site 资源。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Generate a Site resource and print it to the console skupper site generate west --enable-link-access Generate a Site resource and direct the output to a file skupper site generate east > east.yaml
# Generate a Site resource and print it to the console
$ skupper site generate west --enable-link-access
apiVersion: skupper.io/v2alpha1
kind: Site
metadata:
name: west
spec:
linkAccess: default
# Generate a Site resource and direct the output to a file
$ skupper site generate east > east.yaml
主要选项
<name> 必需
要生成的资源名称。
另请参阅: Kubernetes 对象名称
--enable-link-access 频繁使用
允许从外部访问远程站点的链接。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
--output
选择输出格式。
- default
- yaml
- Choices:: json
- 生成 JSON 输出
- yaml
- 生成 YAML 输出
--link-access-type
为来自远程站点的链接配置外部访问。
站点和链接是创建应用程序网络的基础。在简单的双站点网络中,至少其中一个站点必须启用链接访问权限。
- default
- default
- Choices:: default
-
使用默认链接访问。在 OpenShift 上,默认是
路由
。对于其他 Kubernetes 类别,默认值为loadbalancer
。 - route
- 使用 OpenShift 路由。仅限 OpenShift。
- LoadBalancer
- 使用 Kubernetes 负载均衡器。仅 Kubernetes。
- platform:: Kubernetes Updatable
- True See also: Site link
--enable-ha
为高可用性(HA)配置站点。HA 站点有两个活跃的路由器。
请注意,Skupper 路由器是无状态的,它们会在失败后重启。这已提供高级别的可用性。启用 HA 进一步,并减少重启导致的停机时间窗口。
- default
- false Platforms:: Kubernetes Updatable:: True 查看: 高可用性
全局选项
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.5. CLI 组:站点链接
20.1.5.1. 使用令牌
20.1.5.1.1. 令牌命令
skupper token [subcommand] [options]
skupper token [subcommand] [options]
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
命令 | 描述 |
---|---|
签发指向当前站点的链接的令牌文件 | |
重新定义令牌文件,以创建到远程站点的链接 |
20.1.5.1.2. 令牌问题命令
skupper token issue <file> [options]
skupper token issue <file> [options]
发出一个令牌文件,以重新定义到当前站点的链接。
此命令首先创建一个访问权限授权,以发出令牌。
发布令牌需要一个启用了链接访问权限的站点。在生成令牌前,命令会等待站点进入 ready 状态。
字段 | value |
---|---|
平台 | Kubernetes |
等待 | Ready |
例子
Issue an access token skupper token issue ~/token.yaml Issue an access token with non-default limits skupper token issue ~/token.yaml --expiration-window 24h --redemptions-allowed 3 Issue a token using an existing access grant skupper token issue ~/token.yaml --grant west-1
# Issue an access token
$ skupper token issue ~/token.yaml
Waiting for status...
Access grant "west-6bfn6" is ready.
Token file /home/fritz/token.yaml created.
Transfer this file to a remote site. At the remote site,
create a link to this site using the 'skupper token
redeem' command:
$ skupper token redeem <file>
The token expires after 1 use or after 15 minutes.
# Issue an access token with non-default limits
$ skupper token issue ~/token.yaml --expiration-window 24h --redemptions-allowed 3
# Issue a token using an existing access grant
$ skupper token issue ~/token.yaml --grant west-1
主要选项
<file> 必需
要创建的令牌文件的名称。
- 平台
- Kubernetes、Docker、Podman、Linux
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes、Docker、Podman、Linux
--expiration-window
可以重新考虑此授权的访问令牌的时间周期。
- default
- 15m
- 平台
- Kubernetes、Docker、Podman、Linux
--redemptions-allowed
可以重新考虑此授权的访问令牌的次数。
- default
- 1 platform:: Kubernetes、Docker、Podman、Linux
--grant advanced
使用 named 权限授权,而不是创建新权限。
- 平台
- Kubernetes、Docker、Podman、Linux
全局选项
--context global
设置 kubeconfig 上下文。
另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
- 平台
- Kubernetes、Docker、Podman、Linux 还会看到: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
- 平台
- Kubernetes、Docker、Podman、Linux 还了解:平台( 平台)概念
--help global
显示帮助并退出。
- 平台
- Kubernetes、Docker、Podman、Linux
错误
未启用链接访问
此站点上的链接访问当前还未启用。您可以使用 "skupper site update --enable-link-access" 来启用它。
20.1.5.1.3. token redeem 命令
skupper token redeem <file> [options]
skupper token redeem <file> [options]
重新定义令牌文件,以创建到远程站点的链接。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Redeem an access token skupper token redeem ~/token.yaml
# Redeem an access token
$ skupper token redeem ~/token.yaml
Waiting for status...
Link "west-6bfn6" is active.
You can now safely delete /home/fritz/token.yaml.
主要选项
<file> 必需
要使用的令牌文件的名称。
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
--link-cost
创建链接时要使用的链接成本。
- default
- 1 另请参阅: 负载均衡
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.5.2. 使用链接
20.1.5.2.1. link 命令
skupper link [subcommand] [options]
skupper link [subcommand] [options]
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
命令 | 描述 |
---|---|
更改链路设置 | |
删除链接 | |
在当前站点中显示链接状态 | |
生成一个在远程站点中使用的 Link 资源 |
20.1.5.2.2. link update 命令
skupper link update <name> [options]
skupper link update <name> [options]
更改链路设置。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | Ready |
例子
Change the link cost skupper link update west-6bfn6 --cost 10
# Change the link cost
$ skupper link update west-6bfn6 --cost 10
Waiting for status...
Link "west-6bfn6" is ready.
主要选项
<name> 必需
要更新的资源的名称。
另请参阅: Kubernetes 对象名称
--cost
通过链接发送流量的路由成本。
- default
- 1 另请参阅: 负载均衡
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
--wait
在退出前等待给定状态。
- default
- ready
- Choices:: none
- 不要等待
- 配置
- 配置
- ready
- Ready
- 平台
- Kubernetes 还会看到: 资源状态
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.5.2.3. link delete 命令
skupper link delete <name> [options]
skupper link delete <name> [options]
删除链接。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 删除 |
例子
Delete a link skupper link delete west-6bfn6
# Delete a link
$ skupper link delete west-6bfn6
Waiting for deletion...
Link "west-6bfn6" is deleted.
主要选项
<name> 必需
要删除的资源的名称。
另请参阅: Kubernetes 对象名称
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
--wait
等待删除完成,然后退出。
- default
- true Platforms:: Kubernetes
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.5.2.4. link status 命令
skupper link status [name] [options]
skupper link status [name] [options]
在当前站点中显示链接状态。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Show the status of all links in the current site skupper link status Show the status of one link skupper link status west-6bfn6
# Show the status of all links in the current site
$ skupper link status
NAME STATUS COST
west-6bfn6 Ready 1
south-ac619 Error 10
Links from remote sites:
<none>
# Show the status of one link
$ skupper link status west-6bfn6
Name: west-6bfn6
Status: Ready
Message: <none>
Cost: 1
主要选项
[name] optional
可选的资源名称。如果设置,则 status 命令仅报告指定资源的状态。
另请参阅: Kubernetes 对象名称
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes 另请参见: 持续时间格式
--output
以结构化输出格式将状态打印到控制台。
- Choices
- JSON:: Produce JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.5.2.5. link generate 命令
skupper link generate [name] [options]
skupper link generate [name] [options]
生成一个链接资源,以便在远程站点中使用。
生成链接需要启用链接访问的站点。在生成链接前,命令会等待站点进入 ready 状态。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 站点资源就绪 |
例子
Generate a Link resource and print it to the console skupper link generate Generate a Link resource and direct the output to a file skupper link generate > link.yaml
# Generate a Link resource and print it to the console
$ skupper link generate
apiVersion: skupper.io/v2alpha1
kind: Link
metadata:
name: south-ac619
spec:
endpoints:
- group: skupper-router-1
host: 10.97.161.185
name: inter-router
port: "55671"
- group: skupper-router-1
host: 10.97.161.185
name: edge
port: "45671"
tlsCredentials: south-ac619
---
apiVersion: v1
kind: Secret
type: kubernetes.io/tls
metadata:
name: south-ac619
data:
ca.crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURKekNDQWcrZ0F3SUJB [...]
tls.crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURORENDQWh5Z0F3SUJ [...]
tls.key: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0N [...]
# Generate a Link resource and direct the output to a file
$ skupper link generate > link.yaml
主要选项
[name] optional
要生成的资源名称。如果未提供任何名称,则会生成名称。
另请参阅: Kubernetes 对象名称
--cost
通过链接发送流量的路由成本。
- default
- 1 另请参阅: 负载均衡
--output
选择输出格式。
- default
- yaml
- Choices:: json
- 生成 JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6. CLI 组:服务公开
20.1.6.1. 使用 Listener
20.1.6.1.1. listener 命令
skupper listener [subcommand] [options]
skupper listener [subcommand] [options]
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
命令 | 描述 |
---|---|
创建监听程序 | |
更新监听程序 | |
删除监听程序 | |
在当前站点中显示监听程序的状态 | |
生成 Listener 资源 |
20.1.6.1.2. listener create 命令
skupper listener create <name> <port> [options]
skupper listener create <name> <port> [options]
创建监听程序。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 配置 |
例子
Create a listener for a database skupper listener create database 5432 Set the routing key and host explicitly skupper listener create backend 8080 --routing-key be1 --host apiserver
# Create a listener for a database
$ skupper listener create database 5432
Waiting for status...
Listener "database" is configured.
# Set the routing key and host explicitly
$ skupper listener create backend 8080 --routing-key be1 --host apiserver
主要选项
<name> 必需
要创建的资源的名称。
如果没有指定--routing-key 和 --host 选项,则 name 是默认路由密钥和
host
。
另请参阅: Kubernetes 对象名称
<port> 必需
本地监听器的端口。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- updatable
- True
--routing-key 常用
用于将流量路由到连接器的标识符。要在远程站点中启用连接到服务,本地监听程序和远程连接器必须具有匹配的路由密钥。
- default
- name 值
- updatable
- True
--host 常用
本地监听程序的主机名或 IP 地址。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- default
- name 值
- updatable
- True
--wait
在退出前等待给定状态。
- default
- ready
- Choices:: none
- 不要等待。
- 配置
- 等待配置被应用。
- ready
- 等待资源准备就绪。
- 平台
- Kubernetes 还会看到: 资源状态
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes 另请参见: 持续时间格式
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.1.3. 监听器更新命令
skupper listener update <name> [options]
skupper listener update <name> [options]
更新监听程序。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 配置 |
例子
Change the host and port skupper listener update database --host mysql --port 3306 Change the routing key skupper listener update backend --routing-key be2
# Change the host and port
$ skupper listener update database --host mysql --port 3306
Waiting for status...
Listener "database" is configured.
# Change the routing key
$ skupper listener update backend --routing-key be2
主要选项
<name> 必需
要更新的资源的名称。
另请参阅: Kubernetes 对象名称
--host 常用
本地监听程序的主机名或 IP 地址。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- default
- name 值
- updatable
- True
--port 经常使用
本地监听器的端口。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- updatable
- True
--routing-key 常用
用于将流量路由到连接器的标识符。要在远程站点中启用连接到服务,本地监听程序和远程连接器必须具有匹配的路由密钥。
- default
- name 值
- updatable
- True
--wait
在退出前等待给定状态。
- default
- ready
- Choices:: none
- 不要等待
- 配置
- 配置
- ready
- Ready
- 平台
- Kubernetes 还会看到: 资源状态
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.1.4. listener delete 命令
skupper listener delete <name> [options]
skupper listener delete <name> [options]
删除监听程序。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 删除 |
例子
Delete a listener skupper listener delete database
# Delete a listener
$ skupper listener delete database
Waiting for deletion...
Listener "database" is deleted.
主要选项
<name> 必需
要删除的资源的名称。
另请参阅: Kubernetes 对象名称
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
--wait
等待删除完成,然后退出。
- default
- true Platforms:: Kubernetes
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.1.5. 监听器状态命令
skupper listener status [name] [options]
skupper listener status [name] [options]
在当前站点中显示监听程序的状态。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Show the status of all listeners in the current site skupper listener status Show the status of one listener skupper listener status backend
# Show the status of all listeners in the current site
$ skupper listener status
NAME STATUS ROUTING-KEY HOST PORT CONNECTORS
backend Ready backend backend 8080 true
database Ready database database 5432 true
# Show the status of one listener
$ skupper listener status backend
Name: backend
Status: Ready
Message: <none>
Routing key: backend
Host: backend
Port: 8080
Has matching connectors: true
主要选项
[name] optional
可选的资源名称。如果设置,则 status 命令仅报告指定资源的状态。
另请参阅: Kubernetes 对象名称
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes 另请参见: 持续时间格式
--output
以结构化输出格式将状态打印到控制台。
- Choices
- JSON:: Produce JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.1.6. listener generate 命令
skupper listener generate <name> <port> [options]
skupper listener generate <name> <port> [options]
生成 Listener 资源。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Generate a Listener resource and print it to the console skupper listener generate backend 8080 Generate a Listener resource and direct the output to a file skupper listener generate backend 8080 > backend.yaml
# Generate a Listener resource and print it to the console
$ skupper listener generate backend 8080
apiVersion: skupper.io/v2alpha1
kind: Listener
metadata:
name: backend
spec:
routingKey: backend
port: 8080
host: backend
# Generate a Listener resource and direct the output to a file
$ skupper listener generate backend 8080 > backend.yaml
主要选项
<name> 必需
要生成的资源名称。
另请参阅: Kubernetes 对象名称
<port> 必需
本地监听器的端口。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- updatable
- True
--routing-key 常用
用于将流量路由到连接器的标识符。要在远程站点中启用连接到服务,本地监听程序和远程连接器必须具有匹配的路由密钥。
- default
- name 值
- updatable
- True
--host 常用
本地监听程序的主机名或 IP 地址。此站点上的客户端使用侦听器主机和端口来建立与远程服务的连接。
- default
- name 值
- updatable
- True
--wait
在退出前等待给定状态。
- default
- 配置
- Choices:: none
- 不要等待
- 配置
- 配置
- ready
- Ready
--output
选择输出格式。
- default
- yaml
- Choices:: json
- 生成 JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.2. 使用 Connector
20.1.6.2.1. connector 命令
skupper connector [subcommand] [options]
skupper connector [subcommand] [options]
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
命令 | 描述 |
---|---|
创建连接器 | |
更新连接器 | |
删除连接器 | |
在当前站点中显示连接器的状态 | |
生成 Connector 资源 |
20.1.6.2.2. connector create 命令
skupper connector create <name> <port> [options]
skupper connector create <name> <port> [options]
创建连接器。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 配置 |
例子
Create a connector for a database skupper connector create database 5432 Set the routing key and selector explicitly skupper connector create backend 8080 --routing-key be1 --selector app=be1 Use the workload option to select pods skupper connector create backend 8080 --workload deployment/backend
# Create a connector for a database
$ skupper connector create database 5432
Waiting for status...
Connector "database" is configured.
# Set the routing key and selector explicitly
$ skupper connector create backend 8080 --routing-key be1 --selector app=be1
# Use the workload option to select pods
$ skupper connector create backend 8080 --workload deployment/backend
主要选项
<name> 必需
要创建的资源的名称。
如果没有指定-- routing-key
选项,则 name 是默认路由密钥。在 Kubernetes 上,如果没有指定- selector
和- workload
选项,名称定义默认节点选择器。
另请参阅: Kubernetes 对象名称
<port> 必需
要连接的目标服务器上的端口。
- updatable
- True
--routing-key 常用
用于将流量路由到连接器的标识符。要将本地工作负载公开给远程站点,远程监听程序和本地连接器必须具有匹配的路由密钥。
- default
- name 值
- updatable
- True
--workload常使用
标识工作负载的 Kubernetes 资源名称。它使用 & lt;resource-type>/<resource-name
> 语法,并解析为等同的 pod 选择器。
这是设置- selector 或-
host 选项
的替代选择。
- 平台
- Kubernetes 另请参见: Kubernetes 工作负载
--selector
用于指定目标服务器 pod 的 Kubernetes 标签选择器。它使用 < ;label-name>=<label-value>
; 语法。
这是设置-- workload
或-- host
选项的替代选择。
- default
- app=[value-of-name]
- platform:: Kubernetes Updatable
- true 还会看到: Kubernetes 标签选择器
--host
服务器的主机名或 IP 地址。这是指定目标服务器的 选择器
的替代选择。
这是设置- selector 或-
- workload 选项
的替代选择。
- default
-
在 Kubernetes 上:名称 + on Docker, Podman, 和 Linux:
localhost
- updatable
- True
--wait
在退出前等待给定状态。
- default
- ready
- Choices:: none
- 不要等待。
- 配置
- 等待配置被应用。
- ready
- 等待资源准备就绪。
- 平台
- Kubernetes 还会看到: 资源状态
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes 另请参见: 持续时间格式
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.2.3. 连接器更新命令
skupper connector update <name> <port> [options]
skupper connector update <name> <port> [options]
更新连接器。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 配置 |
例子
Change the workload and port skupper connector update database --workload deployment/mysql --port 3306 Change the routing key skupper connector update backend --routing-key be2
# Change the workload and port
$ skupper connector update database --workload deployment/mysql --port 3306
Waiting for status...
Connector "database" is configured.
# Change the routing key
$ skupper connector update backend --routing-key be2
主要选项
<name> 必需
要更新的资源的名称。
另请参阅: Kubernetes 对象名称
<port> 必需
要连接的目标服务器上的端口。
- updatable
- True
--routing-key 常用
用于将流量路由到连接器的标识符。要将本地工作负载公开给远程站点,远程监听程序和本地连接器必须具有匹配的路由密钥。
- default
- name 值
- updatable
- True
--workload常使用
标识工作负载的 Kubernetes 资源名称。它使用 & lt;resource-type>/<resource-name
> 语法,并解析为等同的 pod 选择器。
这是设置- selector 或-
host 选项
的替代选择。
- 平台
- Kubernetes 另请参见: Kubernetes 工作负载
--selector
用于指定目标服务器 pod 的 Kubernetes 标签选择器。它使用 < ;label-name>=<label-value>
; 语法。
这是设置-- workload
或-- host
选项的替代选择。
- default
- app=[value-of-name]
- platform:: Kubernetes Updatable
- true 还会看到: Kubernetes 标签选择器
--host
服务器的主机名或 IP 地址。这是指定目标服务器的 选择器
的替代选择。
这是设置- selector 或-
- workload 选项
的替代选择。
- default
-
在 Kubernetes 上:名称 + on Docker, Podman, 和 Linux:
localhost
- updatable
- True
--wait
在退出前等待给定状态。
- default
- ready
- Choices:: none
- 不要等待
- 配置
- 配置
- ready
- Ready
- 平台
- Kubernetes 还会看到: 资源状态
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.2.4. connector delete 命令
skupper connector delete <name> [options]
skupper connector delete <name> [options]
删除连接器。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
等待 | 删除 |
例子
Delete a connector skupper connector delete database
# Delete a connector
$ skupper connector delete database
Waiting for deletion...
Connector "database" is deleted.
主要选项
<name> 必需
要删除的资源的名称。
另请参阅: Kubernetes 对象名称
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes
--wait
等待删除完成,然后退出。
- default
- true Platforms:: Kubernetes
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.2.5. 连接器状态命令
skupper connector status [name] [options]
skupper connector status [name] [options]
在当前站点中显示连接器的状态。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Show the status of all connectors in the current site skupper connector status Show the status of one connector skupper connector status backend
# Show the status of all connectors in the current site
$ skupper connector status
NAME STATUS ROUTING-KEY SELECTOR HOST PORT LISTENERS
backend Ready backend app=backend <none> 8080 true
database Ready database app=postgresql <none> 5432 true
# Show the status of one connector
$ skupper connector status backend
Name: backend
Status: Ready
Message: <none>
Routing key: backend
Selector: app=backend
Host: <none>
Port: 8080
Has matching listeners: 1
主要选项
[name] optional
可选的资源名称。如果设置,则 status 命令仅报告指定资源的状态。
另请参阅: Kubernetes 对象名称
--timeout
如果在给定时间段内操作未完成,则引发错误。
- default
- 60s
- 平台
- Kubernetes 另请参见: 持续时间格式
--output
以结构化输出格式将状态打印到控制台。
- Choices
- JSON:: Produce JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.6.2.6. connector generate 命令
skupper connector generate <name> <port> [options]
skupper connector generate <name> <port> [options]
生成 Connector 资源。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Generate a Connector resource and print it to the console skupper connector generate backend 8080 Generate a Connector resource and direct the output to a file skupper connector generate backend 8080 > backend.yaml
# Generate a Connector resource and print it to the console
$ skupper connector generate backend 8080
apiVersion: skupper.io/v2alpha1
kind: Connector
metadata:
name: backend
spec:
routingKey: backend
port: 8080
selector: app=backend
# Generate a Connector resource and direct the output to a file
$ skupper connector generate backend 8080 > backend.yaml
主要选项
<name> 必需
要生成的资源名称。
另请参阅: Kubernetes 对象名称
<port> 必需
要连接的目标服务器上的端口。
- updatable
- True
--routing-key 常用
用于将流量路由到连接器的标识符。要将本地工作负载公开给远程站点,远程监听程序和本地连接器必须具有匹配的路由密钥。
- default
- name 值
- updatable
- True
--workload常使用
标识工作负载的 Kubernetes 资源名称。它使用 & lt;resource-type>/<resource-name
> 语法,并解析为等同的 pod 选择器。
这是设置- selector 或-
host 选项
的替代选择。
- 平台
- Kubernetes 另请参见: Kubernetes 工作负载
--selector
用于指定目标服务器 pod 的 Kubernetes 标签选择器。它使用 < ;label-name>=<label-value>
; 语法。
这是设置-- workload
或-- host
选项的替代选择。
- default
- app=[value-of-name]
- platform:: Kubernetes Updatable
- true 还会看到: Kubernetes 标签选择器
--host
服务器的主机名或 IP 地址。这是指定目标服务器的 选择器
的替代选择。
这是设置- selector 或-
- workload 选项
的替代选择。
- default
-
在 Kubernetes 上:名称 + on Docker, Podman, 和 Linux:
localhost
- updatable
- True
--wait
在退出前等待给定状态。
- default
- 配置
- Choices:: none
- 不要等待
- 配置
- 配置
- ready
- Ready
--output
选择输出格式。
- default
- yaml
- Choices:: json
- 生成 JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。
20.1.7. CLI 组:其他操作
20.1.7.1. 使用版本
20.1.7.1.1. version 命令
skupper version [options]
skupper version [options]
显示 Skupper 组件的版本。
字段 | value |
---|---|
平台 | Kubernetes、Docker、Podman、Linux |
例子
Show component versions skupper version Show version details in YAML format skupper version --output yaml
# Show component versions
$ skupper version
COMPONENT VERSION
cli 2.0.0
controller 2.0.0
router 3.0.0
# Show version details in YAML format
$ skupper version --output yaml
components:
cli:
version: 2.0.0
controller:
version: 2.0.0
images:
controller:
name: quay.io/skupper/controller:2.0.0
digest: sha256:663d97f86ff3fcce27a3842cd2b3a8e32af791598a46d815c07b0aec07505f55
router:
version: 3.0.0
images:
router:
name: quay.io/skupper/router:3.0.0
digest: sha256:dc5e27385a1e110dd2db1903ba7ec3e0d50b57f742aa02d7dd0a7b1b68c34394
kube-adaptor:
name: quay.io/skupper/kube-adaptor:2.0.0
digest: sha256:4dc24bb3d605ed3fcec2f8ef7d45ca883d9d87b278bfedd5fcca74281d617a5e
主要选项
--output
生成详细的结构化输出。
- Choices
- JSON:: Produce JSON 输出
- yaml
- 生成 YAML 输出
全局选项
--context global
设置 kubeconfig 上下文。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--kubeconfig global
设置 kubeconfig 文件的路径。
- 平台
- Kubernetes 另请参阅: Kubernetes kubeconfigs
--namespace global
设置当前命名空间。
另请参阅: Kubernetes 命名空间、系统命名空间
--platform global
设置 Skupper 平台。
- default
- kubernetes
- Choices:: kubernetes
- Kubernetes
- docker
- Docker
- podman
- Podman
- linux
- Linux
另请参阅: 平台概念
--help global
显示帮助并退出。