Configuration d'Apache Hue
Note
Ignorez cette étape pour les grappes du service de mégadonnées version 3.0.7 ou ultérieure, car Apache Hue est déjà installé et configuré dans les noeuds de grappe.
Ignorez cette étape pour les grappes du service de mégadonnées version 3.0.7 ou ultérieure, car Apache Hue est déjà installé et configuré dans les noeuds de grappe.
Cette section décrit en détail la procédure de configuration d'Apache Hue pour une grappe non sécurisée ou sécurisée.
Configuration d'Apache Hue pour une grappe sans sécurité
- Créez un utilisateur hue pour Apache Hue en exécutant les commandes suivantes :
sudo useradd -u 54336 hue sudo chown -R hue:hue /usr/local/hue sudo su - hdfs -c "hdfs dfs -mkdir /user/hue" sudo su - hdfs -c "hdfs dfs -chown hue:hadoop /user/hue" sudo su - hdfs -c "hdfs dfs -chmod 755 /user/hue" sudo mysql -u root
- Exécutez les énoncés suivants dans l'interface MySQL :
create database desktop; grant all privileges on *.* to 'hue'@'localhost '; grant all on hue.* to 'hue'@'localhost'; alter user 'hue'@'localhost' identified by 'secretpassword'; flush privileges; exit
- Modifiez le fichier hue.ini et mettez à jour les sections des services que vous voulez utiliser avec Hue.
sudo vim /usr/local/hue/desktop/conf/hue.ini
- MySQL
[[database]] # Database engine is typically one of: # postgresql_psycopg2, mysql, sqlite3 or oracle. engine=mysql host=localhost port=3306 user=hue password=secretpassword name=desktop
- HDFS
[[hdfs_clusters]] [[[default]]] # Enter the filesystem uri fs_defaultfs=hdfs://<master_node_fully_qualified_hostname>:8020 # Use WebHdfs/HttpFs as the communication mechanism. # Domain should be the NameNode or HttpFs host. # Default port is 14000 for HttpFs. webhdfs_url=http://<master_node_fully_qualified_hostname>:50070/webhdfs/v1
- YARN
[[yarn_clusters]] [[[default]]] # Enter the host on which you are running the ResourceManager resourcemanager_host=<master_node_fully_qualified_hostname> # The port where the ResourceManager IPC listens on resourcemanager_port=8050 # URL of the ResourceManager API resourcemanager_api_url=http://<master_node_fully_qualified_hostname>:8088 # Whether to submit jobs to this cluster submit_to=True # URL of the ProxyServer API proxy_api_url=http://<master_node_fully_qualified_hostname>:8088 # URL of the HistoryServer API history_server_api_url=http://<utility_node_fully_qualified_hostname>:19888 # URL of the spark history server spark_history_server_url=http://<master_node_fully_qualified_hostname>:18081
- Oozie
[liboozie] # The URL where the Oozie service runs on. oozie_url=http://<utility_node_fully_qualified_hostname>:11000/oozie
- Hive
[beeswax] # Host where HiveServer2 is running. hive_server_host=<utility_node_fully_qualified_hostname> # Http thrift port for HiveServer2. hive_server_http_port=10002 # Use SASL framework to establish connection to host. use_sasl=true
- HBase
[hbase] # Comma-separated list of HBase Thrift server 1 for clusters in the format of '(name|host:port)'. hbase_clusters=(Cluster|<master_node_fully_qualified_hostname>:9090)
- Liste des services qui ne doivent pas être chargés au démarrage du serveur
[desktop] # Comma separated list of apps to not load at server startup. # e.g.: pig,zookeeper app_blacklist=impala,security
- MySQL
- Ouvrez un nouveau fichier, nommez-le
pseudo-distributed.ini
, puis ajoutez les sections suivantes :sudo vim /usr/local/hue/desktop/conf/pseudo-distributed.ini [beeswax] max_number_of_sessions=-1 [[hdfs_clusters]] # HA support by using HttpFs [[[default]]] # Enter the filesystem uri fs_defaultfs=hdfs://<master_node_fully_qualified _hostname>:8020 webhdfs_url=http://<master_node_fully_qualified_hostname>:50070/webhdfs/v1 [[yarn_clusters]] resourcemanager_api_url=http://<master_node_fully_qualified_hostname>:8088 8088
- Mettez à jour les autorisations pour Hive.
sudo chmod -R 777 /etc/hive sudo su - hue cd /usr/local/hue/build/env/bin/ ./hue syncdb --noinput ./hue migrate nohup ./hue runcpserver &
Configurer Apache Hue pour une grappe sécurisée
- Créez un utilisateur hue pour Apache Hue en exécutant les commandes suivantes :
sudo useradd -u 54336 hue sudo chown -R hue:hue /usr/local/hue sudo su - hdfs -c "hdfs dfs -mkdir /user/hue" sudo su - hdfs -c "hdfs dfs -chown hue:hadoop /user/hue" sudo su - hdfs -c "hdfs dfs -chmod 755 /user/hue" sudo mysql -u root
- Exécutez les énoncés suivants dans l'interface MySQL :
create database desktop; grant all privileges on *.* to 'hue'@'localhost '; grant all on hue.* to 'hue'@'localhost'; alter user 'hue'@'localhost' identified by 'secretpassword'; flush privileges; exit
- Accédez par SSH au noeud principal à l'aide de l'adresse IP publique et de la clé privée associées à la grappe.
ssh opc@<masternode0_hostname/private_ip>
- Connectez-vous en tant que kadmin.
sudo kadmin.local
- Créez un principal pour le serveur Hue et remplacez le nom de domaine complet par celui du noeud d'utilitaire où Hue est installé.
addprinc -randkey -maxrenewlife 90day +allow_renewable hue/<FQDN> xst -k hue.service.keytab hue/<FQDN>@BDACLOUDSERVICE.ORACLE.COM exit
- Mettez à jour les autorisations pour permettre la copie du fichier keytab vers le noeud d'utilitaire.
sudo chmod 777 hue.service.keytab exit
- Copiez le fichier keytab et définissez les autorisations et la propriété appropriées.
sudo scp opc@<master_node0_hostname>:~/hue.service.keytab /etc/security/keytabs/hue.service.keytab sudo chown hue:hadoop /etc/security/keytabs/hue.service.keytab sudo chmod 600 /etc/security/keytabs/hue.service.keytab
- Assurez-vous que le fichier keytab est accessible en testant
kinit
et copiez les données d'identification mises en cache pour configurer Kerberos dans hue config plus tard.sudo su - hue kinit -k -t /etc/security/keytabs/hue.service.keytab hue/<FQDN>@BDACLOUDSERVICE.ORACLE.COM exit
- Modifiez le fichier
hue.ini
et mettez à jour les sections des services que vous voulez utiliser avec Hue.sudo vim /usr/local/hue/desktop/conf/hue.ini
- MySQL
[[database]] # Database engine is typically one of: # postgresql_psycopg2, mysql, sqlite3 or oracle. engine=mysql host=localhost port=3306 user=hue password=secretpassword name=desktop
- HDFS
[[hdfs_clusters]] [[[default]]] # Enter the filesystem uri fs_defaultfs=hdfs://<master_node_0_fully_qualified_hostname>:8020 # Use WebHdfs/HttpFs as the communication mechanism. # Domain should be the NameNode or HttpFs host. # Default port is 14000 for HttpFs. webhdfs_url=http://<master_node_0_fully_qualified_hostname>:50070/webhdfs/v1 # Change this if your YARN cluster is Kerberos-secured security_enabled=true
- YARN
[[yarn_clusters]] [[[default]]] # Enter the host on which you are running the ResourceManager resourcemanager_host=<master_node_0_fully_qualified_hostname> # URL of the ResourceManager API resourcemanager_api_url=http://<master_node_0_fully_qualified_hostname>:8088 # Whether to submit jobs to this cluster submit_to=True # URL of the ProxyServer API proxy_api_url=http://<master_node_0_fully_qualified_hostname>:8088 # URL of the HistoryServer API history_server_api_url=http://<master_node_1_hostname>:19888 # URL of the spark history server spark_history_server_url=http://<master_node_fully_qualified_hostname>:18081 # Change this if your YARN cluster is Kerberos-secured security_enabled=true
- Oozie
[liboozie] # The URL where the Oozie service runs on. oozie_url=http://<utility_node_fully_qualified_hostname>:11000/oozie # Change this if your YARN cluster is Kerberos-secured security_enabled=true
- Hive
[beeswax] # Host where HiveServer2 is running. hive_server_host=<utility_node_fully_qualified_hostname> # Http thrift port for HiveServer2. hive_server_http_port=10002 # Use SASL framework to establish connection to host. use_sasl=true
- HBase
[hbase] # Comma-separated list of HBase Thrift server 1 for clusters in the format of '(name|host:port)'. hbase_clusters=(Cluster|<master_node_0_fully_qualified_hostname>:9090)
- Liste des services qui ne doivent pas être chargés au démarrage du serveur
[desktop] # Comma separated list of apps to not load at server startup. # e.g.: pig,zookeeper app_blacklist=impala,security
- Paramètres Kerberos
[[kerberos]] # Path to Hue's Kerberos keytab file hue_keytab=/etc/security/keytabs/hue.service.keytab # Kerberos principal name for Hue hue_principal=hue/<utility_node_hostname>@BDACLOUDSERVICE.ORACLE.COM kinit_path=/usr/bin/kinit ccache_path=/tmp/krb5cc_54366
- MySQL
- Ouvrez un nouveau fichier, nommez-le
pseudo-distributed.ini
, puis ajoutez les sections suivantes :sudo vim /usr/local/hue/desktop/conf/pseudo-distributed.ini [beeswax] max_number_of_sessions=-1 [[hdfs_clusters]] # HA support by using HttpFs [[[default]]] # Enter the filesystem uri fs_defaultfs=hdfs://<master_node_fully_qualified_hostname>:8020 webhdfs_url=http://<master_node_fully_qualified_hostname>:50070/webhdfs/v1 [[yarn_clusters]] resourcemanager_api_url=http://<master_node_fully_qualified_hostname>:8088
- Mettez à jour les autorisations pour Hive.
- Dans l'interface utilisateur d'Ambari, sous HDFS, allez à Summary (Sommaire). Assurez-vous que l'hôte mn0 est réglé à Active (Actif) dans la section à droite de la page. Sinon, redémarrez le noeud mn1 à partir de la console de la grappe du service de mégadonnées.
- Exécutez les commandes suivantes pour démarrer Apache Hue :
sudo chmod -R 777 /etc/hive sudo su - hue cd /usr/local/hue/build/env/bin/ ./hue syncdb --noinput ./hue migrate nohup ./hue runcpserver & crontab -e 0 */12 * * * cd /usr/local/hue/build/env/bin ; ./hue kt_renewer &
- Enregistrer et quitter avec la commande
:wq
.