Du kan tilsidesætte standardkonfigurationerne for applikationer ved at angive et konfigurationsobjekt til applikationer, når du opretter en klynge. Konfigurationsobjektet refereres til som en JSON-fil. Konfigurationsobjekter består af en klassifikation, egenskaber og valgfri indlejrede konfigurationer. Egenskaber er de indstillinger, du vil ændre i den pågældende fil. Du kan angive flere klassifikationer for flere applikationer i et enkelt JSON-objekt.
For at tilsidesætte hive-site.xml med dine eksterne mysql-metastore-oplysninger, skal du oprette en konfigurationsfil kaldet hiveConfiguration.json, der indeholder redigeringer til 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"
}
}
]
Brug hiveConfiguration.json med følgende AWS CLI-kommando til at oprette klyngen:
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
Reference:
https://docs.aws.amazon .com/emr/latest/ReleaseGuide/emr-hive-metastore-external.html