0

我制作了一个简单的 python 文件,它想在 Livy 中提交。Livy 目前正在模式下运行。local另外我在 livy.conf 文件中提到了以下属性。

Property name: livy.file.local-dir-whitelist, 
value "/usr/local/livy/scripts"

我的文件保存在以下路径“/usr/local/livy/scripts”中

import json, pprint, requests, textwrap
host = 'http://localhost:8998'
data = {'kind': 'spark'}
headers = {'Content-Type': 'application/json'}
r = requests.post(host + '/sessions', data=json.dumps(data), headers=headers)
r.json()

我使用curl如下方式提交它:

curl -X POST --data '{"file": "/usr/local/livy/scripts/pi.py"}' -H "Content-Type: application/json" 10.140.178.24:8999/batches

它给了我以下错误:

requirement failed: Local path /usr/local/livy/scripts/pi.py cannot be added to user sessions.

我的 Ubuntu 系统只有以下内容:

a)Spark
b)Livy
c)Java

我在这里做错了什么?

4

2 回答 2

0

对于第一次使用livy孵化模式的人,请检查模板文件是否已重命名并.template在中剥离livy.conf.template。然后确保其中存在以下配置。

livy.spark.master = local
livy.file.local-dir-whitelist = /path/to/script/folder/

请确保它forward slash出现在路径的尽头

然后按以下方式编写url

Python:

curl -v -X POST --data '{"file": "/path/to/script/folder/name-of-python-file.py"}' -H "Content-Type: application/json" localhost:8998/batches

注意:它不会接受相对路径,需要在其中定义整个绝对路径。

于 2017-10-24T09:45:56.477 回答
-1

curl -X POST --data '{"file": "/usr/local/livy/scripts/pi.py"}' -H "Content-Type: application/json" 10.140.178.24:8999/batches {"id ":2,"state":"starting","log":[]}

于 2018-06-07T09:25:53.590 回答