В нашем лабораторном экземпляре PCF я установил сервер конфигурации из магазина и попытался использовать образец приложения Cook и подключил его к серверу конфигурации. Я не устанавливал никакую переменную env, и единственное, что я установил, это git uri, как показано ниже.
"git": {
"password": "****",
"searchPaths": "*.*",
"cloneOnStart": "true",
"label": "master",
"skipSslValidation": "true",
"uri": "https://git-cd.isus.com/ctm/config-files.git",
"username": "muthu_annamalai"
}
Я протестировал git с локальным сервером конфигурации, и он отлично работает. Но в лабораторных условиях я получаю исключение ниже.
2018-05-01 17:46:33.548 ERROR 14 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.client.ResourceAccessException: I/O error on GET request for "https://config-e778f757-09a4-4a2c-9183-3961ee573f0a.pcfapps.saas.local/cook/cloud/master/dessert.json": java.security.cert.CertificateException: No subject alternative DNS name matching config-e778f757-09a4-4a2c-9183-3961ee573f0a.pcfapps.saas.local found.; nested exception is javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative DNS name matching config-e778f757-09a4-4a2c-9183-3961ee573f0a.pcfapps.saas.local found.] with root cause java.security.cert.CertificateException: No subject alternative DNS name matching config-e778f757-09a4-4a2c-9183-3961ee573f0a.pcfapps.saas.local found.
Ошибка No subject alternative DNS name matching...
указывает на проблему с сертификатом, используемым в балансировщике нагрузки PCF. Обычно у вас есть запись SAN с подстановочными знаками, например *.pcfapps.saas.local
, чтобы соответствовать всем вашим приложениям, развернутым в этом домене. Вы можете просмотреть сертификат на балансировщике нагрузки в браузере (щелкните значок замка), чтобы узнать, какие сети хранения данных доступны. Вам может понадобиться ваш оператор платформы для расследования, если у вас нет такого уровня доступа.
Что касается ошибки 500, вам нужно получить логи с сервера, с которым вы разговаривали. Это будет означать, что есть некоторая трассировка стека, чтобы показать точную проблему.
Я добавил прокси-хост и порт, как в этом посте stackoverflow.com/questions/44053356/… Теперь я получаю «Произошла непредвиденная ошибка (тип = Внутренняя ошибка сервера, статус = 500). Ошибка при запросе токена доступа».