Ошибка Opensearch 2.17: NotSslRecordException: не запись SSL/TLSJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Ошибка Opensearch 2.17: NotSslRecordException: не запись SSL/TLS

Сообщение Anonymous »

Мы переносим один из наших проектов с Elasticsearch 7.1.1 на Opensearch 2.17.0. Я сталкиваюсь с ошибкой ниже при выполнении интеграционных тестов на моем локальном компьютере, поскольку тестовые примеры пытаются запустить контейнер докеров для вставки индексов. Сертификаты SSL не добавляются, поскольку мы хотим сохранить как можно минимальную конфигурацию при проверке миграции с помощью локальной настройки. Контейнер opensearch-node1 инициализируется, но не запускается и выдает ошибку.
Журналы ошибок контейнера docker:
22:39:24.430 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: [2024-11-11T17:09:24,429][INFO ][o.o.p.PluginsService ] [d29698dca672] PluginService:onIndexModule index:[.opensearch-sap-log-types-config/kCsJtTTNTdyyCfps0UUZDQ]
22:39:24.463 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: [2024-11-11T17:09:24,459][ERROR][o.o.h.n.s.SecureNetty4HttpServerTransport] [d29698dca672] Exception during establishing a SSL connection: io.netty.handler.ssl.NotSslRecordException: not an SSL/TLS record: 474554202f20485454502f312e310d0a557365722d4167656e743a204a6176612f31312e302e32330d0a486f73743a206c6f63616c686f73743a35303831340d0a4163636570743a20746578742f68746d6c2c20696d6167652f6769662c20696d6167652f6a7065672c202a3b20713d2e322c202a2f2a3b20713d2e320d0a436f6e6e656374696f6e3a206b6565702d616c6976650d0a0d0a
22:39:24.465 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: io.netty.handler.ssl.NotSslRecordException: not an SSL/TLS record: 474554202f20485454502f312e310d0a557365722d4167656e743a204a6176612f31312e302e32330d0a486f73743a206c6f63616c686f73743a35303831340d0a4163636570743a20746578742f68746d6c2c20696d6167652f6769662c20696d6167652f6a7065672c202a3b20713d2e322c202a2f2a3b20713d2e320d0a436f6e6e656374696f6e3a206b6565702d616c6976650d0a0d0a
22:39:24.466 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1312) ~[netty-handler-4.1.112.Final.jar:4.1.112.Final]
22:39:24.474 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1385) ~[netty-handler-4.1.112.Final.jar:4.1.112.Final]
22:39:24.475 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:530) ~[netty-codec-4.1.112.Final.jar:4.1.112.Final]
22:39:24.475 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:469) ~[netty-codec-4.1.112.Final.jar:4.1.112.Final]
22:39:24.475 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) ~[netty-codec-4.1.112.Final.jar:4.1.112.Final]
.
.
.
22:39:24.475 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: [2024-11-11T17:09:24,460][WARN ][o.o.h.AbstractHttpServerTransport] [d29698dca672] caught exception while handling client http traffic, closing connection Netty4HttpChannel{localAddress=/172.17.0.3:9200, remoteAddress=/172.17.0.1:55068}
22:39:24.475 [docker-java-stream--288341315] INFO com.company.proj1.integration.OpensearchAware - STDOUT: io.netty.handler.codec.DecoderException: io.netty.handler.ssl.NotSslRecordException: not an SSL/TLS record: 474554202f20485454502f312e310d0a557365722d4167656e743a204a6176612f31312e302e32330d0a486f73743a206c6f63616c686f73743a35303831340d0a4163636570743a20746578742f68746d6c2c20696d6167652f6769662c20696d6167652f6a7065672c202a3b20713d2e322c202a2f2a3b20713d2e320d0a436f6e6e656374696f6e3a206b6565702d616c6976650d0a0d0a


Я пробовал отключить все конфигурации Opensearch, связанные с безопасностью, но почему-то это не повлияло на ошибку.
docker-compose.yml:
version: '3'

services:

# docker build -t local_elastic .
# docker-compose up
opensearch-node1:
image: opensearchproject/opensearch:latest
container_name: opensearch-node1
environment:
- cluster.name=opensearch-cluster # Name the cluster
- node.name=opensearch-node1 # Name the node that will run in this container
- discovery.seed_hosts=opensearch-node1 # Nodes to look for when discovering the cluster
- "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m" # Set min and max JVM heap sizes to at least 50% of system RAM
- "DISABLE_INSTALL_DEMO_CONFIG=true" # Prevents execution of bundled demo script which installs demo certificates and security configurations to OpenSearch
- "DISABLE_SECURITY_PLUGIN=true" # Disables security plugin
#- plugins.security.ssl.transport.enabled=true
- plugins.security.ssl.http.enabled=false
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
cap_add:
- IPC_LOCK
volumes:
- opensearch-data1:/usr/share/opensearch/data
- ./opensearch.yml:/usr/share/opensearch/opensearch.yml
ports:
- 9200:9200
- 9600:9600
networks:
- opensearch-net # All of the containers will join the same Docker bridge network

opensearch-dashboards:
image: opensearchproject/opensearch-dashboards:latest
container_name: opensearch-dashboards
ports:
- 5601:5601 # Map host port 5601 to container port 5601
expose:
- "5601" # Expose port 5601 for web access to OpenSearch Dashboards
environment:
- 'OPENSEARCH_HOSTS=["http://opensearch-node1:9200"]'
- "DISABLE_SECURITY_DASHBOARDS_PLUGIN=true" # disables security dashboards plugin in OpenSearch Dashboards
networks:
- opensearch-net

volumes:
opensearch-data1:

networks:
opensearch-net:

А еще вот фрагмент кода из интеграционного теста, который пытается запустить контейнер:
private static final CustomOpenSearchContainer opensearchContainer;

static{
opensearchContainer = new CustomOpenSearchContainer().withLogConsumer(new Slf4jLogConsumer(log));
opensearchContainer.start();
setOpensearchAddress(opensearchContainer.getHttpHostAddress());
}

public static class CustomOpenSearchContainer extends GenericContainer {
@Override
protected void configure() {
Path dockerFilePath = Paths.get("src/integration-test/resources/docker/Dockerfile");
ImageFromDockerfile dockerImage = new ImageFromDockerfile().withDockerfile(dockerFilePath);

setImage(dockerImage);

log.info("Starting an opensearch container.");
//withNetworkAliases("opensearch-" + Base58.randomString(6));
withEnv("discovery.type", "single-node");
withEnv("OPENSEARCH_INITIAL_ADMIN_PASSWORD", "admin");
addExposedPorts(OPENSEARCH_DEFAULT_PORT);
setWaitStrategy(new HttpWaitStrategy()
.forPort(OPENSEARCH_DEFAULT_PORT)
.forStatusCodeMatching(response -> response == HTTP_OK)
.withStartupTimeout(Duration.ofMinutes(2)));
}

public String getHttpHostAddress() {
return getHost() + ":" + getMappedPort(9200);
}
}


opensearch.yml:
cluster.name: opensearch-cluster
node.name: opensearch-node1
path.data: /usr/share/opensearch/data
path.logs: /usr/share/opensearch/logs
network.host: 0.0.0.0
http.port: 9200

# SSL/TLS settings
#plugins.security.ssl.transport.enabled: false
#plugins.security.ssl.http.enabled: false
plugins.security.disabled: true

# Discovery settings
discovery.seed_hosts: ["opensearch-node1"]
cluster.initial_master_nodes: ["opensearch-node1"]


Подробнее здесь: https://stackoverflow.com/questions/791 ... tls-record
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»