使用ExecuteScript处理器和(J)python在NiFi中创建一个MinIO Bucket
NiFi中的5 S3相关处理器无法创建Minio存储桶使用ExecuteScript处理器和(J)python在NiFi中创建一个MinIO Bucket,python,amazon-s3,apache-nifi,minio,Python,Amazon S3,Apache Nifi,Minio,NiFi中的5 S3相关处理器无法创建Minio存储桶 列表3 Puts3对象 删除对象 获取对象 标记3对象 因此,我尝试使用ExecuteScript处理器并导入其内部 为了做到这一点,我在CentOS机器上安装了pip3,并安装了minio(它安装在/usr/local/lib/python3.6/site软件包中) 然后在我的ExecuteProcessor中设置以下配置: 脚本引擎:python 脚本文件:未设置值 脚本正文: 从minio导入minio 从minio.error导
- 列表3
- Puts3对象
- 删除对象
- 获取对象
- 标记3对象
/usr/local/lib/python3.6/site软件包中)
然后在我的ExecuteProcessor中设置以下配置:
脚本引擎:python
脚本文件:未设置值
脚本正文:
从minio导入minio
从minio.error导入(ResponseError、bucketalreadyownedbyou、,
布克塔尔雷德(存在)
minioClient=Minio(“Minio”,
访问\u key='XXXX',
机密密钥(key='XXXX')
模块目录:/usr/local/lib/python3.6/site-packages/
但我总是犯这个错误
第1行中没有名为内置的模块
完全错误:
ExecuteScript[id=3a3e689a-0170-1000-fa4d-b0874062b8cc]ExecuteScript[id=3a3e689a-0170-1000-fa4d-b0874062b8cc]由于javax而无法处理。脚本异常:导入错误:第1行中没有名为内置的模块;回滚会话:org.apache.nifi.processor.exception.ProcessException:javax.script.ScriptException:ImportError:第1行中没有名为builtins的模块
假设1:
据我所知,NiFi使用Jython,然后不能使用与C相关的Python模块,我无法确认minio py是其中之一,但这似乎是最相关的原因
有什么我遗漏的吗 切换到ExecuteStreamCommand processor以python(而不是jython)或任何其他语言运行代码,但使用此方法无法访问flowfile属性或内容