Domyślne konfiguracje aplikacji można zastąpić, podając obiekt konfiguracji aplikacji podczas tworzenia klastra. Obiekt konfiguracji jest określany jako plik JSON. Obiekty konfiguracji składają się z klasyfikacji, właściwości i opcjonalnych konfiguracji zagnieżdżonych. Właściwości to ustawienia, które chcesz zmienić w tym pliku. W jednym obiekcie JSON można określić wiele klasyfikacji dla wielu aplikacji.
Aby zastąpić plik hive-site.xml zewnętrznymi informacjami o magazynie metadanych mysql, utwórz plik konfiguracyjny o nazwie hiveConfiguration.json zawierający zmiany w pliku hive-site.xml:
[
{
"Classification": "hive-site",
"Properties": {
"javax.jdo.option.ConnectionURL": "jdbc:mysql:\/\/hostname:3306\/hive?createDatabaseIfNotExist=true",
"javax.jdo.option.ConnectionDriverName": "org.mariadb.jdbc.Driver",
"javax.jdo.option.ConnectionUserName": "username",
"javax.jdo.option.ConnectionPassword": "password"
}
}
]
Użyj hiveConfiguration.json z następującym poleceniem AWS CLI, aby utworzyć klaster:
aws emr create-cluster --release-label emr-5.11.0 --instance-type m3.xlarge --instance-count 2 \
--applications Name=Hive --configurations ./hiveConfiguration.json --use-default-roles
Odniesienie:
https://docs.aws.amazon .com/emr/latest/ReleaseGuide/emr-hive-metastore-external.html