5.  AWS Kinesis Source


从 AWS Kinesis 接收数据。

5.1. AWS Kinesis Source Kamelet Description

5.1.1. 身份验证方法

在这个 Kamelet 中,您可以通过指定 useDefaultCredentialsProvider 选项并将其设置为 true 来避免使用显式静态凭证。

以下为 Default Credentials Provider 评估顺序如下:

  • Java 系统属性 - aws.accessKeyIdaws.secretKey.
  • 环境变量 - AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY
  • AWS STS 的 Web Identity Token。
  • 共享凭证和配置文件。
  • Amazon ECS 容器凭据 - 如果设置了环境变量 AWS_CONTAINER_CREDENTIALS_RELATIVE_URI,则从 Amazon ECS 加载。
  • Amazon EC2 实例配置集凭据。

您还可以通过将 useProfileCredentialsProvider 选项设置为 true,将 profileCredentialsName 设置为配置集名称来使用 Profile Credentials Provider。

只能使用其中一个 access key/secret 密钥或默认凭证提供程序

如需更多信息,请参阅 AWS 凭证文档

5.1.2. 普通消费者的使用示例

您可以直接使用流内容

- route:
    from:
      uri: "kamelet:aws-kinesis-source"
      parameters:
        useDefaultCredentialsProvider: true
        region: "eu-west-1"
        stream: "kamelets"
      steps:
        - to:
            uri: "kamelet:log-sink"

5.1.3. KCL Consumer 的使用示例

您可以使用 KCL 支持来使用流内容

- route:
    from:
      uri: "kamelet:aws-kinesis-source"
      parameters:
        stream: "kamelets"
        useDefaultCredentialsProvider: true
        region: "eu-west-1"
        asyncClient: true
        useKclConsumers: true
      steps:
      - to:
          uri: "kamelet:log-sink"
          parameters:
            showHeaders: true

启用 useKclConsumers 后,您不必直接处理分片迭代。所有功能都由 AWS Kinesis 客户端库和 KCL 层管理。

作为一端注意,您需要记住 KCL 使用者需要访问 AWS 的 DynamoDB 和 Cloudwatch 服务,因此它将在 hood 下创建客户端到这些服务,并使用它们。

5.2. 配置选项

下表总结了 aws-kinesis-source Kamelet 可用的选项:

Expand
属性名称描述类型默认示例

region *

AWS 区域

用于访问的 AWS 区域。

字符串

  

stream *

流名称

您要访问的 Kinesis 流。您指定的 Kinesis 流必须已经存在。

字符串

  

accessKey

访问密钥

从 AWS 获取的访问密钥。

字符串

  

asyncClient

async Client

如果我们希望 KinesisAsyncClient 实例设为 true。

布尔值

False

 

delay

delay

下一次轮询所选流前的毫秒数。

整数

500

 

kclDisableCloudwatchMetricsExport

KCL 禁用 Cloudwatch 指标导出

定义是否要使用 KCL Consumer,并禁用 CloudWatch Metrics Export

布尔值

False

 

overrideEndpoint

端点覆盖

选择这个选项来覆盖端点 URI。要使用这个选项,还必须为 uriEndpointOverride 选项提供 URI。

布尔值

False

 

profileCredentialsName

配置集凭证名称

如果使用配置集凭证供应商,此参数会设置配置集名称。

字符串

  

secretKey

机密密钥

从 AWS 获取的 secret 密钥。

字符串

  

sessionToken

会话令牌

当用户需要假定 IAM 角色时使用的 Amazon AWS Session Token。

字符串

  

uriEndpointOverride

覆盖 Endpoint URI

覆盖端点 URI。要使用这个选项,还必须选择 overrideEndpoint 选项。

字符串

  

useDefaultCredentialsProvider

默认凭证提供程序

如果为 true,则 Kinesis 客户端通过默认凭证供应商加载凭证。如果为 false,它将使用基本的身份验证方法(access key 和 secret key)。

布尔值

False

 

useKclConsumers

KCL Consumer

如果要把 KCL Consumer 设置为 true

布尔值

False

 

useProfileCredentialsProvider

配置集凭证供应商

设置 Kinesis 客户端是否应该预期通过配置集凭证供应商加载凭证。

布尔值

False

 

useSessionCredentials

会话凭证

设置 Kinesis 客户端是否应该预期使用 Session 凭证。这在用户需要假设 IAM 角色在 Kinesis 中执行操作时非常有用。

布尔值

False

 

* = 标记为星号的字段 是必需的

5.3. 依赖项

在运行时,aws-kinesis-source Kamelet 依赖于以下依赖项:

<dependencies>
  <dependency>
    <groupId>org.apache.camel.quarkus</groupId>
    <artifact>camel-quarkus-aws2-kinesis</artifact>
  </dependency>
  <dependency>
    <groupId>org.apache.camel.quarkus</groupId>
    <artifact>camel-quarkus-core</artifact>
  </dependency>
  <dependency>
    <groupId>org.apache.camel.quarkus</groupId>
    <artifact>camel-quarkus-kamelet</artifact>
  </dependency>
  <dependency>
    <groupId>org.apache.camel.kamelets</groupId>
    <artifact>camel-kamelets-utils</artifact>
    <version>{kamelets-utils-version}</version>
  </dependency>
</dependencies>

5.4. kamelets 源文件

https://github.com/apache/camel-kamelets/blob/4.14.x/kamelets/aws-kinesis-source.kamelet.yaml

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部