

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Activation du HTTPS avec Apache Livy
<a name="enabling-https"></a>

Cette rubrique est pertinente si vous utilisez Amazon EMR 7.3.0 ou une version antérieure. À partir de la version 7.4.0, le HTTPS est activé par défaut avec Apache Livy.

1. Provisionnez un cluster Amazon EMR avec le chiffrement du transit activé. Pour en savoir plus sur le chiffrement, consultez [Chiffrer les données au repos et en transit](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption.html).

1. Créez un fichier nommé `livy_ssl.sh` avec le contenu suivant.

   ```
   #!/bin/bash
   
   KEYSTORE_FILE=`awk '/ssl.server.keystore.location/{getline; print}' /etc/hadoop/conf/ssl-server.xml | sed -e 's/<[^>]*>//g' | tr -d ' \t\n\r\f'`
   KEYSTORE_PASS=`awk '/ssl.server.keystore.password/{getline; print}' /etc/hadoop/conf/ssl-server.xml | sed -e 's/<[^>]*>//g' | tr -d ' \t\n\r\f'`
   KEY_PASS=`awk '/ssl.server.keystore.keypassword/{getline; print}' /etc/hadoop/conf/ssl-server.xml | sed -e 's/<[^>]*>//g' | tr -d ' \t\n\r\f'`
   
   echo "livy.keystore $KEYSTORE_FILE
   livy.keystore.password $KEYSTORE_PASS
   livy.key-password $KEY_PASS" | sudo tee -a /etc/livy/conf/livy.conf >/dev/null
   
   sudo systemctl restart livy-server.service
   ```

1. Exécutez le script suivant en tant qu'étape Amazon EMR. Ce script modifie `/etc/livy/conf/livy.conf` pour activer le protocole SSL.

   ```
   --steps '[{"Args":["s3://amzn-s3-demo-bucket/livy_ssl.sh"],"Type":"CUSTOM_JAR","ActionOnFailure":"CONTINUE","Jar":"s3://us-east-1.elasticmapreduce/libs/script-runner/script-runner.jar","Properties":"","Name":"Custom JAR"}]'
   ```

1. Redémarrez le service Apache Livy afin que la modification prenne effet. Pour redémarrer Apache Livy, consultez la section [Arrêt et redémarrage des processus](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-process-restart-stop-view.html#emr-process-restart).

1. Vérifiez que les clients peuvent désormais communiquer via HTTPS. Pour soumettre une tâche, par exemple, exécutez le code suivant.

   ```
   curl -k -X POST --data '{"file": "local:///usr/lib/spark/examples/jars/spark-examples.jar", 
   "className": "org.apache.spark.examples.SparkPi"}' \
   -H "Content-Type: application/json" \
   https://EMR_Master_Node_Host:8998/batches
   ```

   Si vous avez activé HTTPS avec succès, Livy envoie une réponse indiquant que la commande a été acceptée et que le traitement par lots a été soumis.

   ```
   {"id":1,"name":null,"owner":null,"proxyUser":null,"state":"starting","appId":null,"appInfo":
   {"driverLogUrl":null,"sparkUiUrl":null},"log":["stdout: ","\nstderr: ","\nYARN Diagnostics: "]}
   ```