我使用控制台脚本与使用sasl保护的Kafka进行通信时遇到问题.Kafka用sasl保护,监听器是SASL_PLAINTEXT,机制是PLAIN.
我做了什么:我尝试使用一个kafka脚本列出一些数据:
bin/kafka-consumer-groups.sh --bootstrap-server(address)--list
但是我得到" WARN Bootstrap broker(地址)已断开连接(org.apache.kafka.clients.NetworkClient) "并且命令失败,这是可以理解的,因为它是用sasl保护的.
所以我尝试了如何在该命令中添加客户端用户名/密码.首先,我尝试运行kafka-console-consumer脚本,我使用--command-config添加必要的文件.我很快发现我不能直接添加jaas文件,我需要使用.properties文件,所以我做到了.
我的属性文件(请记住括号表示"删失"数据,我不能在这里放置所有真实数据):
bin/kafka-consumer-groups.sh --bootstrap-server (address) --list
Run Code Online (Sandbox Code Playgroud)
我的jaas文件:
WARN Bootstrap broker (address) disconnected (org.apache.kafka.clients.NetworkClient)
Run Code Online (Sandbox Code Playgroud)
这个jaas文件适用于我的标准java应用程序.
但是,当我尝试运行kafka-consumer-groups脚本或kafka-console-consumer时,我收到此错误:
bootstrap.servers=(address)
zookeeper.connect=127.0.0.1:2181
zookeeper.connection.timeout.ms=6000
sasl.jaas.config=(path)/consumer_jaas.conf
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
group.id=(group)
Run Code Online (Sandbox Code Playgroud)
这个jaas文件是我在java应用程序中使用的文件的直接副本,它与kafka通信并且它可以工作,但是在这里,使用控制台工具,它只是不起作用.我试着寻找解决方案,但我找不到任何有用的东西.
谁能帮我这个?
我正在 docker 实例中运行 docker,并尝试在该实例上构建 docker 映像。然而,在构建过程中,一切都取决于pipe install
命令。我的基本映像是 nvidia/cuda:10.1-base-ubuntu16.04。
这是我尝试在 Dockerfile 中运行的命令
python -m pip --no-cache-dir --default-timeout=1000 install -U jupyter \
jupyter_contrib_nbextensions \
jupytext -vvv &&\
Run Code Online (Sandbox Code Playgroud)
这里有详细的日志
Collecting jupyter
1 location(s) to search for versions of jupyter:
* https://pypi.org/simple/jupyter/
Getting page https://pypi.org/simple/jupyter/
Found index url https://pypi.org/simple
Starting new HTTPS connection (1): pypi.org:443
https://pypi.org:443 "GET /simple/jupyter/ HTTP/1.1" 200 496
Analyzing links from page https://pypi.org/simple/jupyter/
Found link https://files.pythonhosted.org/packages/83/df/0f5dd132200728a86190397e1ea87cd76244e42d39ec5e88efd25b2abd7e/jupyter-1.0.0-py2.py3-none-any.whl#sha256=5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78 (from https://pypi.org/simple/jupyter/), version: 1.0.0
Found link https://files.pythonhosted.org/packages/c9/a9/371d0b8fe37dd231cf4b2cff0a9f0f25e98f3a73c3771742444be27f2944/jupyter-1.0.0.tar.gz#sha256=d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f (from https://pypi.org/simple/jupyter/), version: 1.0.0
Found link …
Run Code Online (Sandbox Code Playgroud) 我正在尝试在App Engine Flexible上运行Airflow Webserver,但是要使其正常工作,我需要安装一个GCS存储桶。我正在使用自定义运行时。我这样做的原因是为了获得App Engine与IAP一起提供的安全端点。
我的app.yaml是一个带有服务名称,env和运行时的简单文件。我的Dockerfile是很多apt-get install
s,在CMD中有gcsfuse挂载和运行气流Web服务器,这没什么大不了的。
尝试在App Engine中使用gcsfuse时出现的错误是:
daemonize.Run: readFromProcess: sub-process: mountWithArgs: mountWithConn: Mount: mount: running fusermount: exit status 1
stderr:
fusermount: fuse device not found, try 'modprobe fuse' first
Run Code Online (Sandbox Code Playgroud)
我知道Google Composer存在,但对于我的需求来说太贵了。因此,我更喜欢在GAE上使用调度程序和Web服务器创建一个VM,共享一个GCS存储桶,类似于Composer提供的功能,但是没有HA以及我想运行的简单东西的所有疯狂费用。
我正在App Engine中进行搜索,到目前为止,由于某种原因,我找到的所有答案都提到了GKE。
我知道这是一个特权问题,但是在App Engine中,我看不到任何设置特权的选项,这样做的方式将非常有帮助。
甚至可以在App Engine上做我想做的事吗?