如何在AWS上部署Apache StreamPipes并通过AWS IAM实现自定义用户认证
在AWS上部署Apache StreamPipes并配置IAM自定义用户认证方案
一、AWS环境基础部署流程
你可以基于官方提供的Kubernetes Helm包,在AWS EKS服务上完成部署,步骤如下:
- 前置环境准备:创建符合资源要求的EKS集群,工作节点建议选用t3.large及以上规格的EC2实例,单集群最少准备2个工作节点满足组件调度要求;本地完成
kubectl、helm工具安装,且配置好EKS集群的访问凭证。 - 加载StreamPipes Helm仓库:执行命令
helm repo add streampipes https://apache.jfrog.io/artifactory/streampipes-helm/ && helm repo update,同步最新的官方部署包。 - 自定义部署配置:根据业务需要调整values.yaml配置项,如需持久化存储可提前创建EBS/EFS存储类并在配置中关联,也可调整各组件的资源配额、副本数。
- 执行部署:运行
helm install streampipes streampipes/streampipes启动部署,等待所有Pod状态变为Running后,可通过配置LoadBalancer类型Service或者Ingress对外开放平台访问入口。
如果你的业务规模较小,也可以直接在EC2实例上通过Docker Compose方式部署,直接拉取官方Docker镜像启动对应组件即可,无需搭建K8s集群。
二、基于AWS IAM的自定义用户认证配置
StreamPipes支持OIDC认证模式,你可以通过对接AWS IAM的OIDC身份提供商能力实现自定义认证,配置步骤如下:
- 进入AWS IAM控制台创建OIDC类型的身份提供商,提供商URL填写你的StreamPipes服务访问域名,受众字段填写自定义标识如
streampipes-aws-login。 - 为需要登录StreamPipes的用户/角色配置IAM权限,信任实体设置为刚才创建的OIDC提供商,限制仅允许来自StreamPipes域名的认证请求。
- 修改StreamPipes的安全配置:如果你是Helm部署,直接修改values.yaml中的security配置段,开启OIDC认证,填写OIDC issuer地址为AWS IAM OIDC提供商地址,client ID为之前设置的受众标识,开启IAM角色同步开关。
- 权限映射配置:登录StreamPipes管理后台,将IAM用户/角色的ARN和平台内置的管理员、普通用户等角色绑定,用户后续通过AWS IAM身份认证后即可自动获取对应平台操作权限。
补充说明:如果采用EC2直接部署的模式,需要给EC2实例绑定具备IAM只读访问权限的实例角色,确保StreamPipes可以正常拉取IAM用户信息完成认证校验。
内容的提问来源于stack exchange,提问作者Nitin
相关产品推荐
相关产品推荐

