ウェブサイト検索

CentOS/RHEL 7 に Cloudera Manager をインストールして構成する方法 - パート 3


この記事では、業界の慣例に従って Cloudera Manager をインストールするプロセスを段階的に説明しました。パート 2 では、Cloudera の前提条件をすでに確認し、すべてのサーバーが完全に準備されていることを確認します。

要件

  • CentOS/RHEL 7 に Hadoop サーバーを導入するためのベスト プラクティス – パート 1
  • Hadoop の前提条件のセットアップとセキュリティ強化 - パート 2

ここでは、2 つのマスターと 3 つのワーカーからなる 5 ノードのクラスターを作成します。インストール手順を説明するために5 つの AWS EC2 インスタンスを使用しました。これら 5 つのサーバーに以下の名前を付けました。

master1.linux-console.net
master2.linux-console.net
worker1.linux-console.net
worker2.linux-console.net
worker3.linux-console.net

Cloudera Manager は、CDH 全体の管理および監視ツールです。私たち管理者は通常、これをCloudera Hadoop の管理ツールと呼んでいます。このツールを使用すると、展開、監視、制御、構成の変更を行うことができます。これはクラスター全体を管理するために非常に重要です。

以下は、Cloudera Manager の重要な用途です。

  • 自動化された方法で Hadoop クラスターを展開および構成します。
  • クラスターの健全性を監視する
  • アラートを構成する
  • トラブルシューティング
  • 報告
  • クラスター使用率レポートの作成
  • リソースを動的に構成する

ステップ 1: CentOS に Apache Web サーバーをインストールする

master1 を Cloudera リポジトリの Web サーバーとして使用します。また、Cloudera Manager は WebUI なのでApacheをインストールする必要があります。以下の手順に従って、Apache Web サーバーをインストールします。

yum -y install httpd

httpd をインストールしたら、それを起動し、起動時に開始されるように有効にします。

systemctl start httpd
systemctl enable httpd

httpd起動後、状態を確認します。

systemctl status httpd

httpd を起動した後、ローカル システムでブラウザを開き、検索バーに master1 の IP アドレスを貼り付けます。このテスト ページが表示され、httpd が正常に実行されていることを確認できます。

ステップ 2: IP とホスト名を解決するようにローカル DNS を構成する

IP とホスト名を解決するには、DNS サーバーを用意するか、/etc/hosts を構成する必要があります。ここでは /etc/hosts を構成していますが、リアルタイムでは実稼働環境用に専用の DNS サーバーが存在します。

以下の手順に従って、/etc/hosts にすべてのサーバーのエントリを作成します。

vi /etc/hosts

これはすべてのサーバーで設定する必要があります。

13.235.27.144   master1.linux-console.net     master1
13.235.135.170  master2.linux-console.net     master2
15.206.167.94   worker1.linux-console.net     worker1
13.232.173.158  worker2.linux-console.net     worker2
65.0.182.222    worker3.linux-console.net     worker3

ステップ 3: SSH パスワードなしログインを構成する

このデモでは、Cloudera Managermaster1 にインストールされています。 master1 から他のすべてのノードへのパスワードなしの SSH を設定する必要があります。なぜなら、Cloudera Manager は ssh を使用して他のすべてのノードと通信し、パッケージをインストールするからです。

以下の手順に従って、master1 から残りのすべてのサーバーへのパスワードなしの SSH を構成します。ユーザー「tecmint」を使用してさらに先に進みます。

図に示すように useradd コマンドを使用して、4 つのサーバーすべてにユーザー「tecmint」を作成します。

useradd -m tecmint

ユーザー「tecmint」に root 権限を与えるには、以下の行を /etc/sudoers ファイルに追加します。スクリーンショットに示すように、ルートの下にこの行を追加できます。

tecmint   ALL=(ALL)    ALL

ユーザー「tecmint」に切り替え、以下のコマンドを使用して master1 に ssh キーを作成します。

sudo su tecmint
ssh-keygen

次に、図に示すように ssh-copy-id コマンドを使用して、作成したキーを 4 つのサーバーすべてにコピーします。

ssh-copy-id -i ~/.ssh/id_rsa.pub [email 
ssh-copy-id -i ~/.ssh/id_rsa.pub [email 
ssh-copy-id -i ~/.ssh/id_rsa.pub [email  
ssh-copy-id -i ~/.ssh/id_rsa.pub [email 

これで、図に示すように、パスワードなしで master1 から残りのすべてのサーバーに ssh 接続できるようになります。

ssh master2
ssh worker1
ssh worker2
ssh worker3

ステップ 4: Cloudera Manager のインストールと構成

RHEL/CentOS のパッケージ管理ツールを使用して、ベンダー (Cloudera) リポジトリを使用してすべてのパッケージをインストールできます。実稼働サーバーではインターネットにアクセスできない可能性があるため、リアルタイムでは独自のリポジトリを作成することがベスト プラクティスです。

ここではCloudera Manager 6.3.1 リリースをインストールします。 master1 をリポジトリ サーバーとして使用するため、以下のパスにパッケージをダウンロードします。

master1 サーバー上に以下のディレクトリを作成します。

sudo mkdir -p /var/www/html/cloudera-repos/cm6

wget ツールを使用して、http 経由でパッケージをダウンロードできます。そこで、 以下のコマンドを使用してwget をインストールします。

sudo yum -y install wget

次に、次の wget コマンドを使用して Cloudera Manager tar ファイルをダウンロードします。

wget https://archive.cloudera.com/cm6/6.3.1/repo-as-tarball/cm6.3.1-redhat7.tar.gz

tar ファイルを /var/www/html/cloudera-repos/cm6 に抽出します。http をインストールすることで、すでに master1 を Web サーバーとして作成しています。ブラウザ上でテストしました。

sudo tar xvfz cm6.3.1-redhat7.tar.gz -C /var/www/html/cloudera-repos/cm6 --strip-components=1

ここで、すべての Cloudera rpm ファイルが /var/www/html/cloudera-repos/cm6/RPMS/x86_64 ディレクトリにあることを確認します。

cd /var/www/html/cloudera-repos/cm6
ll

クラスタ ホスト内のすべてのサーバーに次の内容の /etc/yum.repos.d/cloudera-manager.repo ファイルを作成します。ここでは master1 (65.0.101.148) です。 Webサーバー。

[cloudera-repo]
name=cloudera-manager
baseurl=http:///cloudera-repos/cm6/
enabled=1
gpgcheck=0

これでリポジトリが追加されました。以下のコマンドを実行して、有効なリポジトリを表示します。

yum repolist

以下のコマンドを実行して、リポジトリ内の利用可能な Cloudera 関連パッケージをすべて表示します。

yum list available | grep cloudera*

Cloudera-manager-server、cloudeera-manager-agent、cloudeera-manager-daemonscloudeera-manager-server-db-2 をインストールします。

sudo yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server cloudera-manager-server-db-2

以下のコマンドを実行して、インストールされているすべての Cloudera パッケージを表示します。

yum list installed | grep cloudera*

以下のコマンドを実行して、Cloudera Manager およびその他のサービスのメタデータを保存するための基礎となるデータベースである cloudera-scm-server-db を起動します。

デフォルトでは、ClouderaCloudera Manager に組み込まれたpostgre-sql を提供します。組み込みのものを、使用できるリアルタイム外部データベースにインストールしています。それはOracleMySQL、またはPostgreSQLです。

sudo systemctl start cloudera-scm-server-db

以下のコマンドを実行してデータベースのステータスを確認します。

sudo systemctl status cloudera-scm-server-db

Cloudera Manager サーバーの db.properties を設定します。

vi /etc/cloudera-scm-server/db.properties

Cloudera Manager組み込みデータベースを使用できるようにするには、以下の値を EMBEDDED に設定します。

com.cloudera.cmf.db.setupType=EMBEDDED

以下のコマンドを実行して、Cloudera Manager サーバーを起動します。

sudo systemctl start cloudera-scm-server

以下のコマンドを実行して、Cloudera Manager サーバーのステータスを確認します。

sudo systemctl status cloudera-scm-server

以下のコマンドを実行して Cloudera Manager エージェントを起動し、ステータスを確認します。

sudo systemctl start cloudera-scm-agent
sudo systemctl status cloudera-scm-agent

Cloudera Manager サーバーが正常に起動して正常に動作すると、IP アドレスとポート番号 7180 を使用してブラウザで WebUI (ログイン ページ) を表示できます。 Cloudera マネージャー

https://65.0.101.148:7180

まとめ

この記事では、CentOS 7Cloudera Manager をインストールするプロセスを段階的に説明しました。次の記事では、CDH とその他のサービスのインストールについて説明します。