Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
HBase Application Specifics for Earlier AMI Versions of Amazon EMR
Supported HBase Versions
HBase-Version | AMI-Version | AWS CLI-Konfigurationsparameter | HBase-Versionsdetails |
---|---|---|---|
0.94.18 |
3.1.0 und höher |
|
|
0.94.7 |
3.0-3.0.4 |
|
|
0.92 |
2.2 und höher |
|
HBase Cluster Prerequisites
Ein Cluster, der mit den AMI-Versionen 2.x und 3.x von Amazon EMR erstellt wurde, sollte die folgenden Anforderungen für HBase erfüllen.
-
The AWS CLI (optional)—To interact with HBase using the command line, download and install the latest version of the AWS CLI. For more information, see Installing the AWS Command Line Interface in the Benutzerhandbuch für AWS Command Line Interface.
-
At least two instances (optional)—The cluster's master node runs the HBase master server and Zookeeper, and task nodes run the HBase region servers. For best performance, HBase clusters should run on at least two EC2 instances, but you can run HBase on a single node for evaluation purposes.
-
Long-running cluster—HBase only runs on long-running clusters. By default, the CLI and Amazon EMR console create long-running clusters.
-
An Amazon EC2 key pair set (recommended)—To use the Secure Shell (SSH) network protocol to connect with the master node and run HBase shell commands, you must use an Amazon EC2 key pair when you create the cluster.
-
The correct AMI and Hadoop versions—HBase clusters are currently supported only on Hadoop 20.205 or later.
-
Ganglia (optional)—To monitor HBase performance metrics, install Ganglia when you create the cluster.
-
An Amazon S3 bucket for logs (optional)—The logs for HBase are available on the master node. If you'd like these logs copied to Amazon S3, specify an S3 bucket to receive log files when you create the cluster.
Creating a Cluster with HBase
Die folgende Tabelle enthält Optionen, die verfügbar sind, wenn mithilfe der Konsole ein Cluster mit HBase mittels eine AMI-Version von Amazon EMR erstellt wird.
Feld | Aktion: , |
---|---|
Restore from backup (Wiederherstellen mithilfe der Sicherung) | Geben Sie an, ob der HBase-Cluster mit in Amazon S3 gespeicherten Daten vorab geladen werden soll. |
Backup location (Speicherort der Sicherung) | Geben Sie den URI an, in dem die Sicherung in Amazon S3 gespeichert ist, von der die Wiederherstellung erfolgen soll. |
Backup version (Sicherungsversion) | Geben Sie optional den Versionsnamen der zu verwendenden Sicherung unter Backup location (Speicherort der Sicherung) an. Wenn Sie in dieses Feld keinen Wert eingeben, verwendet Amazon EMR die aktuelle Sicherung unter Backup location (Speicherort der Sicherung), um den neuen HBase-Cluster zu füllen. |
Schedule regular backups (Regelmäßige Sicherungen planen) | Geben Sie an, ob automatisch inkrementelle Sicherungen eingeplant werden sollen. Die erste Sicherung ist ein vollständiges Backup, um eine Baseline für künftige inkrementelle Sicherungen zu erstellen. |
Consistent backup (Konsistente Sicherung) | Geben Sie an, ob die Sicherungen konsistent sein sollen. Bei einer konsistenten Sicherung werden die Schreibvorgänge während der anfänglichen Sicherungsstufe, der knotenübergreifenden Synchronisierung, angehalten. Alle auf diese Weise angehaltenen Schreibvorgänge werden in eine Warteschlange gestellt und nach Abschluss der Synchronisierung fortgesetzt. |
Backup frequency (Sicherungshäufigkeit) | Die Anzahl der Tage/Stunden/Minuten zwischen den geplanten Sicherungen. |
Backup location (Speicherort der Sicherung) | Der Amazon S3-URI, in dem die Sicherungen gespeichert werden. Der Sicherungsort sollte für jeden HBase-Cluster unterschiedlich sein, um sicherzustellen, dass differenzielle Sicherungen intakt bleiben. |
Backup start time (Startzeit der Sicherung) | Geben Sie an, wann die erste Sicherung durchgeführt werden soll. Sie können für dieses
Feld now angeben. Dann wird die erste Sicherung gestartet, sobald der Cluster ausgeführt wird.
Oder geben Sie ein Datum und eine Uhrzeit im ISO-Format |
Der folgende AWS CLI-Beispielbefehl startet einen Cluster mit HBase und anderen Anwendungen:
Zur besseren Lesbarkeit sind Linux-Zeilenfortsetzungszeichen (\) enthalten. Sie können entweder entfernt oder in Linux-Befehlen verwendet werden. Ersetzen Sie diese Zeichen unter Windows durch ein Caret-Zeichen (^).
aws emr create-cluster --name "
Test cluster
" --ami-version3.3
\ --applications Name=Hue
Name=Hive
Name=Pig
Name=HBase
\ --use-default-roles --ec2-attributes KeyName=myKey
\ --instance-typec1.xlarge
--instance-count3
--termination-protected
Nach dem Herstellen der Verbindung zwischen dem Hive- und HBase-Cluster (wie in der vorherigen Vorgehensweise gezeigt) können Sie auf die Daten zugreifen, die auf dem HBase-Cluster gespeichert sind, indem Sie eine externe Tabelle in Hive erstellen.
Das folgende Beispiel, wenn Sie aus der Hive-Eingabe ausgeführt werden, erstellt eine
externe Tabelle, die in einer hbase-Tabelle gespeicherten Daten referenziert inputTable
. Sie können dann auf inputTable
in Hive-Berichten, um die im hbase-Cluster gespeicherten Daten zu abfragen und zu
ändern.
Im folgenden Beispiel wird protobuf-java-2.4.0a.jar in AMI 2.3.3 verwendet. Sie sollten das Beispiel jedoch an Ihre Version anpassen.
Um zu prüfen, welche Version des Protocol Buffer-JAR Sie haben, führen Sie den folgenden
Befehl an der Hive-Eingabeaufforderung aus: . ! ls /home/hadoop/lib;
.
add jar lib/emr-metrics-1.0.jar ; add jar lib/protobuf-java-2.4.0a.jar ; set hbase.zookeeper.quorum=ec2-107-21-163-157.compute-1.amazonaws.com ; create external table inputTable (key string, value string) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties ("hbase.columns.mapping" = ":key,f1:col1") tblproperties ("hbase.table.name" = "t1"); select count(*) from inputTable ;
Customizing HBase Configuration
Die Standardeinstellungen sollten zwar problemlos bei den meisten Anwendungen funktionieren, dennoch haben Sie die Möglichkeit, Ihre HBase-Konfigurationseinstellungen zu ändern. Führen Sie hierzu eines der beiden Bootstrap-Aktionsskripts aus:
-
configure-hbase-daemons—Configures properties of the master, regionserver, and zookeeper daemons. These properties include heap size and options to pass to the Java Virtual Machine (JVM) when the HBase daemon starts. You set these properties as arguments in the bootstrap action. This bootstrap action modifies the /home/hadoop/conf/hbase-user-env.sh configuration file on the HBase cluster.
-
configure-hbase—Configures HBase site-specific settings such as the port the HBase master should bind to and the maximum number of times the client CLI client should retry an action. You can set these one-by-one, as arguments in the bootstrap action, or you can specify the location of an XML configuration file in Amazon S3. This bootstrap action modifies the /home/hadoop/conf/hbase-site.xml configuration file on the HBase cluster.
Diese Skripts können wie andere Bootstrap-Aktionen auch nur beim Erstellen des Clusters ausgeführt werden. Sie können sie nicht verwenden, um die Konfiguration eines HBase-Clusters zu ändern, der gerade ausgeführt wird.
Wenn Sie die Bootstrap-Aktionen configure-hbase oder configure-hbase-daemons ausführen, werden die Standardwerte durch Ihre angegebenen Werte überschrieben. Alle Werte, die Sie nicht explizit angeben, erhalten die Standardwerte.
Die Konfiguration von HBase mit diesen Bootstrap-Aktionen ähnelt der Verwendung von
Bootstrap-Aktionen in Amazon EMR zur Konfiguration von Hadoop-Einstellungen und Hadoop-Daemon-Eigenschaften.
Der Unterschied besteht darin, dass HBase nicht über Speicheroptionen für einzelne
Prozesse verfügt. Stattdessen werden Speicheroptionen unter Verwendung der --
Argument, wo daemon
-optsdaemon
wird durch den Namen des Daemon ersetzt, um zu konfigurieren.
Configure HBase Daemons
Amazon EMR bietet eine Bootstrap-Aktion, s3://
, die Sie verwenden können, um die Konfiguration von hbase Daemons zu ändern, wo region
.elasticmapreduce/bootstrap-actions/configure-hbase-daemonsregion
ist die Region, in die Sie Ihren hbase-Cluster starten.
Zum Konfigurieren von HBase-Daemons mit der AWS CLI fügen Sie die Bootstrap-Aktion
configure-hbase-daemons
hinzu, wenn Sie den Cluster starten, um einen oder mehrere HBase-Daemons zu konfigurieren.
Sie können die folgenden Eigenschaften festlegen:
Eigenschaft | Description (Beschreibung) |
---|---|
hbase-master-opts |
Optionen, die steuern, wie die JVM den Master-Daemon ausführt. Wenn diese Optionen definiert sind, werden die HBASE_MASTER_OPTS-Standardvariablen damit überschrieben. |
regionserver-opts |
Optionen, die steuern, wie die JVM den Regionsserver-Daemon ausführt. Wenn diese Optionen definiert sind, werden die HBASE_REGIONSERVER_OPTS-Standardvariablen damit überschrieben. |
zookeeper-opts |
Optionen, die steuern, wie die JVM den Zookeeper-Daemon ausführt. Wenn diese Optionen definiert sind, werden die HBASE_ZOOKEEPER_OPTS-Standardvariablen damit überschrieben. |
Weitere Informationen zu diesen Optionen finden Sie unter hbase-env.sh
Eine Bootstrap-Aktion zum Konfigurieren von Werten für zookeeper-opts
und hbase-master-opts
wird im folgenden Beispiel dargestellt.
Zur besseren Lesbarkeit sind Linux-Zeilenfortsetzungszeichen (\) enthalten. Sie können entweder entfernt oder in Linux-Befehlen verwendet werden. Ersetzen Sie diese Zeichen unter Windows durch ein Caret-Zeichen (^).
aws emr create-cluster --name "
Test cluster
" --ami-version3.3
\ --applications Name=Hue
Name=Hive
Name=Pig
Name=HBase
\ --use-default-roles --ec2-attributes KeyName=myKey
\ --instance-typec1.xlarge
--instance-count3
--termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase-daemons
,\ Args=["--hbase-zookeeper-opts=-Xmx1024m -XX:GCTimeRatio=19","--hbase-master-opts=-Xmx2048m","--hbase-regionserver-opts=-Xmx4096m"
]
Configure HBase Site Settings
Amazon EMR stellt die Bootstrap-Aktion s3://elasticmapreduce/bootstrap-actions/configure-hbase
bereit, mit der Sie die Konfiguration von HBase ändern können. Sie können die Konfigurationswerte
einzeln, als Argumente in der Bootstrap-Aktion definieren oder Sie geben den Speicherort
einer XML-Konfigurationsdatei in Amazon S3 an. Es bietet sich an, die Konfigurationswerte
nacheinander zu definieren, wenn Sie nur einige wenige Konfigurationseinstellungen
vornehmen müssen. Sie mit einer XML-Datei zu definieren, ist hilfreich, wenn Sie viele
Änderungen vornehmen müssen oder Ihre Konfigurationseinstellungen für die Wiederverwendung
speichern möchten.
Sie können das Amazon S3 Bucket-Name mit einem Regionspräfix, z. B. s3://
, wo region
.elasticmapreduce/bootstrap-actions/configure-hbaseregion
ist die Region, in die Sie Ihren hbase-Cluster starten.
Durch diese Bootstrap-Aktion wird die Konfigurationsdatei /home/hadoop/conf/hbase-site.xml
auf dem HBase-Cluster geändert. Die Bootstrap-Aktion kann nur beim Starten des HBase-Clusters
ausgeführt werden.
Weitere Informationen zu den HBase-Standorteinstellungen, die Sie konfigurieren können,
finden Sie unter Default Configuration
Legen Sie die Bootstrap-Aktion configure-hbase
beim Starten des HBase-Clusters fest und geben Sie die zu ändernden Werte in hbase-site.xml
an.
So geben Sie einzelne HBase-Standorteinstellungen mit der AWS CLI an
-
So ändern Sie die
hbase.hregion.max.filesize
einstellen, geben Sie den folgenden Befehl ein und ersetzen SiemyKey
mit dem Namen Ihrer Amazon EC2 Schlüsselpaar.Anmerkung Zur besseren Lesbarkeit sind Linux-Zeilenfortsetzungszeichen (\) enthalten. Sie können entweder entfernt oder in Linux-Befehlen verwendet werden. Ersetzen Sie diese Zeichen unter Windows durch ein Caret-Zeichen (^).
aws emr create-cluster --name "
Test cluster
" --ami-version3.3
\ --applications Name=Hue
Name=Hive
Name=Pig
Name=HBase
\ --use-default-roles --ec2-attributes KeyName=myKey
\ --instance-typec1.xlarge
--instance-count3
--termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase
,Args=["-s","hbase.hregion.max.filesize=52428800"
]
So geben Sie HBase-Standorteinstellungen mit einer XML-Datei über die AWS CLI an
-
Erstellen Sie eine benutzerdefinierte Version von
hbase-site.xml
. Ihre benutzerdefinierte Datei muss gültige XML sein. Um Fehlerquellen zu minimieren, starten Sie mit der Standardkopie vonhbase-site.xml
auf dem HBase-Master-Knoten von Amazon EMR unter/home/hadoop/conf/hbase-site.xml
. Bearbeiten Sie eine Kopie dieser Datei, anstatt eine Datei von Grund auf neu zu erstellen. Sie können Ihrer neuen Datei einen neuen Namen geben oder den Dateinamenhbase-site.xml
belassen. -
Laden Sie die benutzerdefinierte Datei
hbase-site.xml
in einen Amazon S3-Bucket hoch. Für die Datei sollten Berechtigungen festgelegt sein, damit das AWS-Konto, das den Cluster startet, auf die Datei zugreifen kann. Wenn das AWS-Konto, das den Cluster startet, auch Eigentümer des Amazon S3-Buckets ist, erhält es Zugriff. -
Definieren Sie die Bootstrap-Aktion configure-hbase beim Starten des HBase-Clusters und fügen Sie den Speicherort Ihrer benutzerdefinierten Datei
hbase-site.xml
ein. Das folgende Beispiel setzt die hbase-Standortkonfigurationswerte auf die in der Datei angegebenen Wertes3://mybucket/my-hbase-site.xml
. Geben Sie den folgenden Befehl ein, ersetzen SiemyKey
mit dem Namen Ihres EC2-Schlüsselpaars und ersetzen Siemybucket
mit dem Namen Ihrer Amazon S3 Bucket.Anmerkung Zur besseren Lesbarkeit sind Linux-Zeilenfortsetzungszeichen (\) enthalten. Sie können entweder entfernt oder in Linux-Befehlen verwendet werden. Ersetzen Sie diese Zeichen unter Windows durch ein Caret-Zeichen (^).
aws emr create-cluster --name "
Test cluster
" --ami-version3.3
\ --applications Name=Hue
Name=Hive
Name=Pig
Name=HBase
\ --use-default-roles --ec2-attributes KeyName=myKey
\ --instance-typec1.xlarge
--instance-count3
--termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase
,Args=["--site-config-file","s3://mybucket/config.xml"
]Wenn Sie mehr als eine Option zum Anpassen der HBase-Operation angeben, müssen Sie jedem Schlüssel-Wert-Paar einen
-s
-Optionsschalter voranstellen, wie im folgenden Beispiel gezeigt:--bootstrap-actions
s3://elasticmapreduce/bootstrap-actions/configure-hbase
,Args=["-s","zookeeper.session.timeout=60000"
]
Mit dem Proxy-Set und der SSH-Verbindung können Sie die hbase UI anzeigen, indem Sie
ein Browserfenster öffnen mit http://master-public-dns-name
:60010/Master-Status, wo master-public-dns-name
ist die öffentliche DNS-Adresse des Masterknotens im hbase-Cluster.
Sie können die aktuellen HBase-Protokolle anzeigen, indem Sie sich über SSH mit dem
Master-Knoten verbinden und zum Verzeichnis mnt/var/log/hbase
navigieren. Diese Protokolle sind nicht verfügbar, nachdem der Cluster beendet wurde,
es sei denn, Sie aktivieren beim Starten des Clusters die Protokollierung nach Amazon
S3.
Back Up and Restore HBase
Amazon EMR bietet die Möglichkeit, Ihre HBase-Daten nach Amazon S3 zu sichern, entweder manuell oder über einen automatisierten Zeitplan. Sie können sowohl vollständige als auch inkrementelle Sicherungen durchführen. Nachdem Sie eine Version von HBase-Daten gesichert haben, können Sie diese auf einen HBase-Cluster wiederherstellen. Sie können die Wiederherstellung auf einem HBase-Cluster durchführen, der gerade ausgeführt wird, oder einen neuen Cluster starten, der mit den gesicherten Daten vorab gefüllt wird.
Während des Sicherungsvorgangs fährt HBase fort, Schreibbefehle auszuführen. Dadurch wird zwar sichergestellt, dass Ihr Cluster während der Sicherung verfügbar bleibt, es besteht aber das Risiko von Inkonsistenzen zwischen den Daten, die gesichert werden, und den Schreibvorgängen, die parallel ausgeführt werden. Um die Inkonsistenzen zu verstehen, die möglicherweise auftreten, müssen Sie berücksichtigen, dass HBase Schreibvorgänge auf die Knoten in seinem Cluster verteilt. Wenn ein Schreibvorgang erfolgt, nachdem ein bestimmter Knoten abgefragt wurde, werden diese Daten nicht in das Sicherungsarchiv aufgenommen. Möglicherweise stellen Sie sogar fest, dass frühere Schreibvorgänge auf dem HBase-Cluster (gesendet an einen Knoten, der bereits abgefragt wurde) nicht im Sicherungsarchiv vorhanden sind, während spätere Schreibvorgänge (gesendet an einen Knoten vor dessen Abfrage) enthalten sind.
Wenn eine konsistente Sicherung erforderlich ist, müssen Sie die Schreibvorgänge nach
HBase während des ersten Teils des Sicherungsprozesses, der knotenübergreifenden Synchronisierung,
anhalten. Sie tun dies, indem Sie beim Anfordern einer Sicherung den Parameter --consistent
angeben. Mit diesem Parameter werden die Schreibvorgänge während dieses Zeitraums
in eine Warteschlage gestellt und ausgeführt, sobald die Synchronisierung abgeschlossen
ist. Sie können auch regelmäßige Sicherungen einplanen. Dadurch werden Inkonsistenzen,
die im Laufe der Zeit entstehen, aufgelöst, da die Daten, die bei einer Sicherung
nicht berücksichtigt wurden, im folgenden Vorgang gesichert werden.
Wenn Sie HBase-Daten sichern, sollten Sie für jeden Cluster ein anderes Sicherungsverzeichnis
angeben. Eine einfache Möglichkeit dafür ist die Verwendung der Cluster-Kennung als
Bestandteil des für das Sicherungsverzeichnis angegebenen Pfads. Zum Beispiel: s3://mybucket/backups/j-3AEXXXXXX16F2
. Dadurch wird sichergestellt, dass alle zukünftigen inkrementellen Sicherungen den
richtigen hbase-Cluster referenzieren.
Wenn Sie alte, nicht mehr benötigte Sicherungsdateien löschen möchten, wird empfohlen, dass Sie zuerst eine vollständige Sicherung Ihrer HBase-Daten durchführen. Auf diese Weise wird sichergestellt, dass alle Daten erhalten bleiben. Außerdem bietet Ihnen dies eine Baseline für zukünftige inkrementelle Sicherungen. Nachdem die vollständige Sicherung abgeschlossen ist, können Sie zum Sicherungsverzeichnis navigieren und die alten Sicherungsdateien manuell löschen.
Der HBase-Sicherungsprozess verwendet für die Kopieroperation S3DistCp, für das gewisse Einschränkungen in Bezug auf den temporären Speicherplatz für Dateien bestehen.
Back Up and Restore HBase Using the Console
Die Konsole bietet die Möglichkeit, einen neuen Cluster zu starten und mit Daten aus einer vorherigen HBase-Sicherung zu füllen. Außerdem können Sie periodische inkrementelle Sicherungen von HBase-Daten einplanen. Über die CLI stehen zusätzliche Sicherungs- und Wiederherstellungsfunktion zur Verfügung, z. B. können Daten auf einem bereits ausgeführten Cluster wiederhergestellt, manuelle Sicherungen durchgeführt und automatisierte vollständige Sicherungen terminiert werden.
So füllen Sie einen neuen Cluster mit archivierten HBase-Daten über die Konsole
-
Öffnen Sie die Amazon EMR-Konsole unter https://console.aws.amazon.com/elasticmapreduce
. -
Wählen Sie Create cluster aus.
-
Wählen Sie im Abschnitt Software Configuration (Softwarekonfiguration) unter Additional Applications (Zusätzliche Anwendungen) die Optionen HBase und Configure and add aus.
-
Klicken Sie auf das Dialogfeld Add Application (Anwendung hinzufügen) und aktivieren Sie das Kontrollkästchen Restore From Backup (Wiederherstellen mithilfe der Sicherung).
-
Geben Sie für Backup Location (Speicherort der Sicherung) den Speicherort der Sicherung an, die Sie in den neuen HBase-Cluster laden. Dies sollte eine Amazon S3-URL im Format
s3://myawsbucket/backups/
sein. -
Für Backup Version (Sicherungsversion) haben Sie durch Angabe eines Werts die Möglichkeit, den Namen einer zu ladenden Sicherungsversion anzugeben. Wenn Sie keinen Wert für Backup Version (Sicherungsversion) angeben, lädt Amazon EMR die letzte Sicherung in das angegebene Verzeichnis.
-
Wählen Sie Add (Hinzufügen) und fahren Sie fort, um den Cluster mit den anderen Optionen wie gewünscht zu erstellen.
So planen Sie automatische Sicherungen von HBase-Daten mit der Konsole
-
Wählen Sie im Abschnitt Software Configuration (Softwarekonfiguration) unter Additional Applications (Zusätzliche Anwendungen) die Optionen HBase und Configure and add aus.
-
Wählen Sie Schedule Regular Backups (Regelmäßige Sicherungen planen).
-
Geben Sie an, ob die Sicherungen konsistent sein sollen. Bei einer konsistenten Sicherung werden die Schreibvorgänge während der anfänglichen Sicherungsstufe, der knotenübergreifenden Synchronisierung, angehalten. Alle auf diese Weise angehaltenen Schreibvorgänge werden in eine Warteschlange gestellt und nach Abschluss der Synchronisierung fortgesetzt.
-
Legen Sie fest, wie oft Sicherungen durchgeführt werden sollen, indem Sie eine Zahl für Backup Frequency (Sicherungshäufigkeit) eingeben, und wählen Sie Days (Tage), Hours (Stunden) oder Minutes (Minuten) aus. Bei der ersten automatischen Sicherung handelt es sich um eine vollständige Sicherung. Danach speichert Amazon EMR inkrementelle Backups basierend auf dem von Ihnen festgelegten Zeitplan.
-
Geben Sie den Speicherort in Amazon S3 an, in dem die Sicherungen gespeichert werden sollen. Jeder HBase-Cluster sollte an einem anderen Speicherort in Amazon S3 gespeichert werden, um sicherzustellen, dass inkrementelle Backups korrekt berechnet werden.
-
Geben Sie an, wann die erste Sicherung erfolgen soll, indem Sie einen Wert für Backup Start Time (Startzeit der Sicherung) eingeben. Sie können für dieses Feld
now
angeben. Dann wird die erste Sicherung gestartet, sobald der Cluster ausgeführt wird. Oder geben Sie ein Datum und eine Uhrzeit im ISO-Formatein. Beispielsweise würde 2013-09-26T20:00Z die Startzeit auf 26. September 2013 um 20:00 Uhr UTC festlegen. -
Wählen Sie Add (Hinzufügen) aus.
-
Fahren Sie mit der Erstellung des Clusters je nach Bedarf mit den anderen Optionen fort.
Monitor HBase with CloudWatch
Amazon EMR wertet drei Metriken zu CloudWatch aus, mit denen Sie Ihre HBase-Sicherungen überwachen können. Diese Metriken werden alle fünf Minuten im Push-Verfahren an CloudWatch gesendet und kostenlos zur Verfügung gestellt.
Metrik | Description (Beschreibung) |
---|---|
HBaseBackupFailed |
Gibt an, ob die letzte Sicherung fehlgeschlagen ist. Sie ist standardmäßig auf 0 gesetzt und wird in 1 geändert, wenn der vorhergehende Sicherungsversuch fehlgeschlagen ist. Diese Metrik wird nur für HBase-Cluster ausgewertet. Anwendungsfall hbase-Backups überwachen Einheiten: Count |
HBaseMostRecentBackupDuration |
Dauer, bis die vorherige Sicherung abgeschlossen ist. Diese Metrik wird unabhängig davon erstellt, ob die letzte Sicherung erfolgreich war oder fehlgeschlagen ist. Während die Sicherung ausgeführt wird, gibt die Metrik die Anzahl der Minuten seit dem Start der Sicherung zurück. Diese Metrik wird nur für HBase-Cluster ausgewertet. Anwendungsfall hbase-Backups überwachen Einheiten: Minutes |
HBaseTimeSinceLastSuccessfulBackup |
Anzahl der verstrichenen Minuten nach der letzten erfolgreichen HBase-Sicherung auf Ihrem Cluster. Diese Metrik wird nur für HBase-Cluster ausgewertet. Anwendungsfall hbase-Backups überwachen Einheiten: Minutes |
Configure Ganglia for HBase
Sie konfigurieren Ganglia für HBase mit der Bootstrap-Aktion configure-hbase-for-ganglia. Diese Bootstrap-Aktion konfiguriert HBase so, dass Metriken in Ganglia veröffentlicht werden.
Sie müssen HBase und Ganglia beim Starten des Clusters konfigurieren. Die Ganglia-Auswertungen können nicht zu einem aktuell ausgeführten Cluster hinzugefügt werden.
Ganglia speichert auch Protokolldateien auf dem Server unter /mnt/var/log/ganglia/rrds
. Wenn Sie Ihren Cluster konfiguriert haben, um Protokolldateien zu einem Amazon S3
Bucket, die Ganglia-Protokolldateien sind ebenfalls vorhanden.
Verwenden Sie zum Starten eines Clusters mit Ganglia für HBase die Bootstrap-Aktion configure-hbase-for-ganglia, wie im folgenden Beispiel gezeigt.
Zur besseren Lesbarkeit sind Linux-Zeilenfortsetzungszeichen (\) enthalten. Sie können entweder entfernt oder in Linux-Befehlen verwendet werden. Ersetzen Sie diese Zeichen unter Windows durch ein Caret-Zeichen (^).
aws emr create-cluster --name "
Test cluster
" --ami-version3.3
\ --applications Name=Hue
Name=Hive
Name=Pig
Name=HBase
Name=Ganglia
\ --use-default-roles --ec2-attributes KeyName=myKey
\ --instance-typec1.xlarge
--instance-count3
--termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase-for-ganglia
Nachdem der Cluster gestartet wurde, für den Ganglia konfiguriert ist, können Sie auf die Ganglia-Grafiken und -Berichte über die Benutzeroberfläche auf dem Master-Knoten zugreifen.