我正在学习 Kubernetes 并尝试部署 ElasticSearch 和 Kibana。在 ElasticSearch v8 中。 https 是默认值。
我尝试为这样的文档建立索引
var settings = new ConnectionSettings(new Uri("https://localhost:9200"))
.BasicAuthentication("elastic", "0fjaNokbmHSeS4kXeFV")
.DefaultIndex("people")
.RequestTimeout(TimeSpan.FromSeconds(300));
var client = new ElasticClient(settings);
var person = new Person
{
Id = 1,
FirstName = "Abc",
LastName = "Abc"
};
var indexResponse = client.IndexDocument(person);
if (!indexResponse.IsValid)
{
var debugInfo = indexResponse.DebugInformation;
var error = indexResponse.OriginalException;
}
但这不起作用。即使我也可以使用此凭据浏览 https://localhost:9200 elastic/0fjaNokbmHSeS4kXeFV
我尝试为我的入口添加 https 并将服务调用到 IndexDocument,但它也不起作用。
有人遇到过这个问题吗?可以帮我运行一下吗?
NEST 抛出的异常
从 PUT 上不成功的 () 低级调用构建的无效 NEST 响应:/platforms/_doc/1
---> Elasticsearch.Net.PipelineException:由于产品检查调用不成功,客户端无法验证服务器是否为 Elasticsearch。如果服务器运行不受支持的产品,某些功能可能不兼容。 ---> System.Net.Http.HttpRequestException: 无法建立 SSL 连接,请参阅内部异常。 ---> System.Security.Authentication.AuthenticationException:根据验证过程,远程证书无效:RemoteCertificateNameMismatch、RemoteCertificateChainErrors 在 System.Net.Security.SslStream.SendAuthResetSignal(ProtocolToken 消息,ExceptionDispatchInfo 异常) 在 System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter 适配器,布尔值 receiveFirst,字节 [] reAuthenticationData,布尔值 isApm) 在 System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(布尔异步,流流,SslClientAuthenticationOptions sslOptions,CancellationToken取消令牌) --- 内部异常堆栈跟踪结束 --- 在 System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(布尔异步,流流,SslClientAuthenticationOptions sslOptions,CancellationToken取消令牌) 在System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage请求,布尔异步,CancellationToken取消令牌) 在System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage请求,布尔异步,CancellationToken取消令牌) 在 System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage 请求,布尔异步,CancellationToken CancellationToken) 在 System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage 请求,布尔异步,布尔 doRequestAuth,CancellationToken CancellationToken) 在System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage请求,布尔异步,CancellationToken取消令牌) 在 System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage 请求,布尔异步,CancellationToken CancellationToken) 在System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage请求,HttpCompletionOption完成选项,布尔异步,布尔emitTelemetryStartStop,CancellationToken取消令牌) 在 Elasticsearch.Net.HttpConnection.RequestAsync[TResponse](RequestData requestData, CancellationToken CancellationToken) --- 内部异常堆栈跟踪结束 --- 在 Elasticsearch.Net.RequestPipeline.ThrowIfTransientProductCheckFailure() 在Elasticsearch.Net.RequestPipeline.PingAsync(节点节点,CancellationToken取消令牌) 在Elasticsearch.Net.Transport
1.PingAsync(IRequestPipeline pipeline, Node node, CancellationToken cancellationToken) at Elasticsearch.Net.Transport
1.RequestAsync[TResponse](HttpMethod方法,字符串路径,CancellationToken取消令牌,PostData数据,IRequestParameters requestParameters)
--- 内部异常堆栈跟踪结束 ---
谢谢并致以诚挚的问候,
你找到解决办法了吗?