[caused by gssexception: invalid name provided( mechanism level: illegal character in realm name; one of :'/',':',''(600))]
以上是报错
这个是配置文件
krb5.conf :
```java
#Configuration snippets may be placed in this directory as well
#includedir /etc/krb5.conf.d/
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
dns_lookup_realm = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
pkinit_anchors = /etc/pki/tls/certs/ca-bundle.crt
default_realm = AXRZPT.COM
udp_preference_limit = 1
# default_ccache_name = KEYRING:persistent:%{uid}
[realms]
AXRZPT.COM = {
kdc = 192.168.10.2:80
admin_server = 192.168.10.2:749
}
[domain_realm]
.axrzpt.com = AXRZPT.COM
axrzpt.com = AXRZPT.COM
这个是代码 用的javaScript写的
```javascript
var JavaSystem = Java.type("java.lang.System");
var Properties = Java.type("java.util.Properties");
var ArrayList = Java.type("java.util.ArrayList");
var Duration = Java.type("java.time.Duration");
var JSONObject = Java.type("com.alibaba.fastjson.JSONObject");
var ConsumerRecord = Java.type("org.apache.kafka.clients.consumer.ConsumerRecord");
var ConsumerRecords = Java.type("org.apache.kafka.clients.consumer.ConsumerRecords");
var KafkaConsumer = Java.type("org.apache.kafka.clients.consumer.KafkaConsumer");
var keyDeserializer = "org.apache.kafka.common.serialization.StringDeserializer";
var valueDeserializer = "org.apache.kafka.common.serialization.StringDeserializer";
var kafkaHosts = "192.168.10.2:80 , 192.168.10.3:80 , 192.168.10.4:80";
var groupID = "";
var topic = "";
var timeoutMS = 200;
//krb5文件在服务器上的路径
var krb5Conf = "/etc/kafka/krb5.conf";
//jaas文件在服务器上的路径
var kafkaJaasConf = "/etc/kafka/jaas.conf";
var showRecordKey = false;
function run() {
try {
JavaSystem.setProperty("java.security.krb5.conf", krb5Conf);
JavaSystem.setProperty("java.security.auth.login.config", kafkaJaasConf);
var props = new Properties();
props.put("bootstrap.servers", kafkaHosts);
props.put("auto.offset.reset", "latest");
props.put("group.id", groupID);
props.put("enable.auto.commit", "true");
props.put("auto.commit.interval.ms", "1000");
props.put("key.deserializer", keyDeserializer);
props.put("value.deserializer", valueDeserializer);
props.put("security.protocol", "SASL_PLAINTEXT");
props.put("sasl.mechanism", "GSSAPI");
props.put("sasl.kerberos.service.name", "rzpt@AXRZPT.COM");
var consumer = new KafkaConsumer(props,keyDeserializer,valueDeserializer);
consumer.subscribe(Arrays.asList(topic));
logger.info(">>>KafkaConsumer start");
while (true) {
try {
var records = consumer.poll(Duration.ofMillis(timeoutMS));
logger.info(">>>ConsumerRecords count:" + records.count());
var keySet
for (var i = 0; i < records.size(); i++) {
record = records[i];
if (showRecordKey) {
var receivedData = new JSONObject();
receivedData.put("key", record.key());
receivedData.put("value", record.value());
receivedData.put("offset", Long.valueOf(record.offset()));
//excutes
logger.info(receivedData);
continue;
}
logger.info(record.value());
}
} catch (exp) {
logger.error("", exp);
} finally { }
}
} catch (exp) {
logger.error("", exp);
} finally {
if (consumer != null)
consumer.close();
}
}
把代码也发出来把,不然很难定位错误在哪里
你好楼主,我也碰到了这个问题,请问您最后是怎么解决的呢?