2017-01-19 1 views
0

Ich versuche, das Python-Confluent-Kafka-Paket mit Pip installieren. Ich versuche dies auf einer aws ec2-Instanz, die Amazon Linux (Version Amazon Linux AMI Release 2016.09) läuft. Ich bin einfach tun:libsasl Abhängigkeitsprobleme bei der Installation von librdkafka1 über yum auf Aws Linux-Maschine

pip install pip install confluent-kafka 

Dies jedoch erzeugt den folgenden Fehler:

In file included from confluent_kafka/src/confluent_kafka.c:17:0: 
confluent_kafka/src/confluent_kafka.h:21:32: fatal error: librdkafka/rdkafka.h: No such file or directory 
#include <librdkafka/rdkafka.h> 
           ^
compilation terminated. 
error: command 'gcc' failed with exit status 1 

Um dies zu beheben, habe ich zwei Dinge:

1) folgte den Anweisungen auf this page und fügte hinzu, die Datei /etc/yum.repos.d/confluent.repo mit dem Inhalt:

[Confluent.dist] 
name=Confluent repository (dist) 
baseurl=http://packages.confluent.io/rpm/3.0/6 
gpgcheck=1 
gpgkey=http://packages.confluent.io/rpm/3.0/archive.key 
enabled=1 

[Confluent] 
name=Confluent repository 
baseurl=http://packages.confluent.io/rpm/3.0 
gpgcheck=1 
gpgkey=http://packages.confluent.io/rpm/3.0/archive.key 
enabled=1 

2) versucht die librdkafka Bibliothek mit diesem Befehl zu installieren:

sudo yum clean all 
sudo yum install -y librdkafka1 librdkafka-devel 

Yum diesen Fehler jedoch spucken:

Error: Package: librdkafka1-0.9.1_confluent3.0.1-1.el7.x86_64 (Confluent.dist) 
     Requires: openssl-libs 
Error: Package: librdkafka1-0.9.1_confluent3.0.1-1.el7.x86_64 (Confluent.dist) 
     Requires: libsasl2.so.3()(64bit) 

Nach some googling, habe ich versucht:

sudo ln /usr/lib64/libsasl2.so.2 /usr/lib64/libsasl2.so.3 

Dies hatte keine Wirkung. Ich habe versucht, ein yum upgrade und das hat das Problem auch nicht gelöst. Nach viel Googeln ist this kafka user group post das einzige remote hilfreiche Ding, das ich finden kann, aber es enthält leider keine Lösung für das Problem.

Ich möchte wirklich kafka python auf dieser Instanz laufen und laufen lassen, so dass alle Vorschläge sehr geschätzt werden.

Antwort

3

Amazon Linux 2.016,19 scheint auf RHEL basieren 6, so werden Sie RHEL 6 Yum Repo Confluent verweisen müssen, wie in Confluent docs beschrieben, und zwar durch die folgenden /etc/yum.repos.d/confluent schreiben:

[Confluent.dist] 
name=Confluent repository (dist) 
baseurl=http://packages.confluent.io/rpm/3.1/6 
gpgcheck=1 
gpgkey=http://packages.confluent.io/rpm/3.1/archive.key 
enabled=1 

[Confluent] 
name=Confluent repository 
baseurl=http://packages.confluent.io/rpm/3.1 
gpgcheck=1 
gpgkey=http://packages.confluent.io/rpm/3.1/archive.key 
enabled=1 

Gefolgt von:

$ sudo yum clean all 
$ sudo yum install gcc librdkafka1 librdkafka-devel cyrus-sasl-devel openssl-libs python-devel 
$ pip install confluent-kafka (possibly in a virtualenv) 
+0

Nun, ich werde verdammt sein, das hat funktioniert! Ich hätte in meiner Frage erwähnen sollen, dass ich die confluent.repo-Datei erstellt und den Text unter "RHEL/Centos/Oracle 6" kopiert habe. Ich folgte den Dokumenten auf dieser Seite: http://docs.confluent.io/3.0.0/installation.html#rpm-packages-via-yum, die für konfluente 3.0.0 sind. Die Dokumente auf der Seite, die Sie verlinkt haben, sind für 3.1.1. Also war die richtige Lösung, die richtige Version von confluent zu verwenden. Ich aktualisiere meine Frage mit dieser Information und Sie können Ihre Antwort aktualisieren, so dass es klarer ist, dass die konfluente Version das Problem war. –

+0

hm sprach zu früh. Ich habe gerade eine Neuinstallation von Confluent-Plattform-2.11 mit dem 3.1.1 U/min Repo versucht und bekomme eine Reihe von PYCURL FEHLER 22 - "Die angeforderte URL zurückgegeben Fehler: 404 nicht gefunden" Fehler. Wenn ich die confluent.repo-Datei auf die URLs von 3.0 richte, wird sie jedoch problemlos installiert. Außer für librdkafka1, das nur mit den 3.1 URLs funktioniert. > _ < –

+0

veröffentlichte zweite Frage für die zweite Ausgabe: http://StackOverflow.com/Questions/41774633/trying-to-install-confluent-platform-kafka-3-1-1-on-aws-linux-using- Yum-Getti –

Verwandte Themen