0

Как подключить форму задания EMR-кластера к Aurora через SSL? Существует много информации, разбросанной по форумам, которая приносит частичное решение этой проблемы, поэтому я пытаюсь обобщить здесь.Подключение соединителя mysql java к AWS Aurora через SSL из кластера EMR: один подход

ответ

0

Существует много информации о подключении к AWS Aurora Via SSL с разъема java mysql, разбросанного по форумам, а также stackoverflow, поэтому извиняйтесь, если я не включу все ссылки.

Короче говоря: Есть две основные проблемы, соединяющей программу, работающую в ОМ кластере Аврору с SSL:

1) Просто импортировать РДС-комбинированный-ч-bundle.pem предоставленного Amazon в хранилище ключей не будет работать, так как это приведет к ошибке «Ошибка построения пути PKIX».

2) Свойство Java javax.net.ssl.keyStore не будет доступен из ведомые кластера, так что приложение не будет найти KeyStore об этом, это произведет «Communications неудачи ссылки»

Причину 1), похоже, связано с тем фактом, что файл rds-combination-ca-bundle.pem имеет несколько сертификатов, поэтому на форуме, на котором у меня сейчас нет ссылки, предлагаемое решение заключалось в разделении этих сертификатов. Сертификат для Aurora является восьмым:

----- BEGIN CERTIFICATE ----- MIID/DCCAuSgAwIBAgIBQzANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx EzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM GUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx GzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMTU0MDRaFw0y MDAzMDUyMTU0MDRaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv bjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl cywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE UyB1cy1lYXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDIUIuwh8NusKHk1SqPXcP7OqxY3S/M2ZyQWD3w7Bfihpyyy/fc1w0/suIpX3kbMhAV 2ESwged2/2zSx4pVnjp/493r4luhSqQYzru78TuPt9bhJIJ51WXunZW2SWkisSaf USYUzVN9ezR/bjXTumSUQaLIouJt3OHLX49s + 3NAbUyOI8EdvgBQWD68H1epsC0n CI5s + pIktyOZ59c4DCDLQcXErQ + tNbDC++ oct1ANd/q8p9URonYwGCGOBy7sbCYq 9eVHh1Iy2M + SNXddVOGw5EuruvHoCIQyOz5Lz4zSuZA9dRbrfztNOpezCNYu6NKM п + hzcvdiyxv77uNm8EaxAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB Af8ECDAGAQH/AgEAMB0GA1UdDgQWBBQSQG3TmMe6Sa3KufaPBa72v4QFDzAfBgNV HSMEGDAWgBROAu6sPvYVyEztLPUFwY + chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA L/mOZfB3187xTmjOHMqN2G2oSKHBKiQLM9uv8 + 97qT + XR + TVsBT6b3yoPpMAGhHA Pc7nxAF5gPpuzatx0OTLPcmYucFmfqT/1qA5WlgCnMNtczyNMH97lKFTNV7Njtek jWEzAEQS yEWrkNpNlC4j6kMYyPzVXQeXUeZTgJ9FNnVZqmvfjip2N22tawMjrCn5 7KN/zN65EwY2oO9XsaTwwWmBu3NrDdMbzJnbxoWcFWj4RBwanR1XjQOVNhDwmCOl /1Et13b8CPyj69PC8BOVU6cfTSx8WUVy0qvYOKHNY9Bqa5BDnIL3IVmUkeTlM1mt enRpyBj + Bk9rh/ICdiRKmA == ----- END CERTIFICATE -----

Так что, если вы извлечь этот сегмент в файле с именем, скажем bundle8. PEM, вы генерировать ключ следующим образом:

keytool -import -alias mysqlServerCACert -file bundle8.pem -keystore truststore 

раствор для 2) является установка javax.net.ssl.KeyStore в качестве параметра команды, в случае искры подати, то выбор должен быть «--driver-ява-опцией»:

spark-submit --deploy-mode cluster --driver-java-options='-Djavax.net.ssl.trustStore=truststore' --files s3://path/to/truststore ..other spark options 

Будучи «доверенным» файл генерируется с Keytool. Параметры -driver-java позволят загрузить файл доверия в среде ведомых устройств.

Ссылка:

Подключение к кластеру Amazon Aurora DB: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Connect.html

Подключение Mysql Java Connector Использование SSL https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-using-ssl.html

Смежные вопросы