복붙노트

[HADOOP] (모든 솔루션을 시도한 후) 호스트 OS에서 샌드 박스에서 카프카 액세스

HADOOP

(모든 솔루션을 시도한 후) 호스트 OS에서 샌드 박스에서 카프카 액세스

나에게 멍청한 놈 Cnsider. 내가 스택 오버 플로우의 모든 문제를 읽고 하루 동안 시도했지만 해결책은 나에게 클릭하지 마십시오있다. (I 스택 오버 플로우에 동일한 문제에서 모든 가능성을 시도하기 때문에 -) 내 설정과 코드에 특별히 제발 도와주세요

이건 내 Producer.properties 파일입니다

이건 내 server.properties 파일입니다

이것은 내 코드입니다

Properties props = new Properties();
props.put("metadata.broker.list", "sandbox.hortonworks.com:9093");
//props.put("zk.connect", "sandbox.hortonworks.com:2181");
props.put("serializer.class", "kafka.serializer.StringEncoder");
props.put("request.required.acks", "1");

KeyedMessage<String, String> data = new KeyedMessage<String, String> (topic1,"ccccccccc");


System.out.println(data);
producer.send(data);

이것은 이클립스 출력

KeyedMessage(tweeter,null,ccccccccc)
kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries.

해결법

  1. ==============================

    1.@Samhash, 내 이해 advertised.host.name에 따라 로컬 컴퓨터에서 ping 할 수있는 IP 주소 여야합니다. 로컬 컴퓨터에, 나는 sandbox.hortonworks.com이 이해 될 것이다 그렇게 생각하지 않습니다 또는 당신은 당신의 로컬 컴퓨터에서이 호스트에 대한 항목을 만들 수 있습니다. 당신을 위해 작동하는지 알려 주시기 바랍니다.

    @Samhash, 내 이해 advertised.host.name에 따라 로컬 컴퓨터에서 ping 할 수있는 IP 주소 여야합니다. 로컬 컴퓨터에, 나는 sandbox.hortonworks.com이 이해 될 것이다 그렇게 생각하지 않습니다 또는 당신은 당신의 로컬 컴퓨터에서이 호스트에 대한 항목을 만들 수 있습니다. 당신을 위해 작동하는지 알려 주시기 바랍니다.

  2. ==============================

    2.잘 히트와 트레일 전략에 드디어 문제를 붙 잡았다.

    잘 히트와 트레일 전략에 드디어 문제를 붙 잡았다.

    server.properties 파일에 4 개 속성이 있습니다 포트, host.name, 광고 호스트 이름 및 보급 포트

    그리고 Producer.properties 파일에서 1 개 부동산 metadata.broker.list

    broker.list가 advertised.host.name:advertised.port와 동일합니다 있는지 확인

    광고 호스트 이름이 주어지면 그 영향을주지 않는 host.name 속성을 주석으로 처리합니다.

    나는 단순히 ifconfig를 명령을 사용하여 내 샌드 박스의 IP를 가지고 다음 두 속성에서 9092 포트와 IP하고 일한 넣어.

  3. from https://stackoverflow.com/questions/32602107/accessing-kafka-in-sandbox-from-host-os-after-trying-every-solution by cc-by-sa and MIT license