Du kan åsidosätta standardkonfigurationerna för applikationer genom att tillhandahålla ett konfigurationsobjekt för applikationer när du skapar ett kluster. Konfigurationsobjektet refereras till som en JSON-fil. Konfigurationsobjekt består av en klassificering, egenskaper och valfria kapslade konfigurationer. Egenskaper är de inställningar du vill ändra i den filen. Du kan ange flera klassificeringar för flera applikationer i ett enda JSON-objekt.
För att åsidosätta hive-site.xml med din externa mysql-metastore-information, skapa en konfigurationsfil som heter hiveConfiguration.json som innehåller redigeringar av 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"
}
}
]
Använd hiveConfiguration.json med följande AWS CLI-kommando för att skapa klustret:
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
Referens:
https://docs.aws.amazon .com/emr/latest/ReleaseGuide/emr-hive-metastore-external.html