AWSビッグデータの戦闘-環境の準備(1)

実験紹介

この実際のコンテンツでは、AWSビッグデータとデータレイク関連のサービスとコンポーネントを使用して、ビッグデータの収集、保存、処理、分析、視覚化の完全なプロセスを正常に完了する方法を説明します。次の主要なAWSビッグデータが紹介されます。

  • Lab1:Kinesis製品ファミリーに基づくリアルタイムストリーミングデータ処理
  • Lab2:EMR(Spark)実装に基づくバッチデータ処理
  • Lab3:Quicksight + Athenaに基づくデータの視覚化
  • Lab4:Elasticsearchに基づくリアルタイムのデータ検索
  • Lab5:Redshift + Quicksightの実装に基づく、データウェアハウスの構築とデータの視覚化の表示

実際のビジネスニーズをより適切にシミュレートするために、データベース(履歴データ、または一部の顧客がすでに存在するODSライブラリをシミュレート)を構築し、リアルタイムデータストリーム(eコマースやWebなどのクリックストリームをシミュレート)を構築しました。 、など)、ストリーミングリアルタイム分析とバッチ分析のためのプラットフォーム、および視覚化とリアルタイムデータ検索のための対応するプラットフォームが構築されました。以下は、この実験の全体的なアーキテクチャ図です。

画像-20210319094037967

すべての人がデータ構造をより明確に理解できるようにするために、参照用にRDS(リレーショナルデータベース)のデータテーブル構造を抽象化しました。

画像-20210319094114952

実験の準備

すべてのハンズオン実験を正常に完了するには、次の準備を行う必要があります。すべてのリソースはAWSus-east-1リージョンで作成されます。

ステップ 環境を整える コンテンツの説明を準備する
01 アカウント構成 AWSが提供するアカウントとログイン方法に精通し、対応するセキュリティオプションを設定します
02 EC2をデプロイする 操作のためにEC2(Linux)クライアントをデプロイし、リモートでログインする方法を学びます
03 KDSを構成する Kinesis DataStreamsのリアルタイムデータストリームを設定してデータを生成する
04 RDSを展開する 構成データベース(実験環境では、履歴データまたはODS環境として理解されます)
05 EMRを展開する ビッグデータプラットフォームEMRを導入する
06 ESを導入する リアルタイム分析プラットフォームであるElasticsearchをデプロイします

アカウント構成

IAM(Identity and Access Management)は、AWSと、ユーザー、アクセス許可、認証などのセキュリティ関連サービスです。ここでは、EC2がクラウド内の一部のリソースにアクセスするために使用する役割(ec2-role)と2つの役割を構成します。もう1つは、クラウド内のリソースにアクセスするためのGlueの役割(glue-role)です。

EC2のロール権限を設定します

次のようにIAMコンソールを開きます

画像-20210319133935285

左側の「役割」メニューをクリックし、「役割の作成」を選択します

画像-20210319134025762

AWSサービスでEC2を選択します

画像-20210319134137937

ページ設定のアクセス許可で、[既存のポリシーを直接添付する]をクリックし、を追加してAdministratorAccessIAMFullAccess2つのアクセス許可を追加します

画像-20210319134349507

次のタブページを構成する必要はありません。次のステップは、ページを確認して、ポリシーが正しく追加されていることを確認することです。

画像-20210319134432221

Glueの役割権限を構成する

AWSサービスでGlueを選択します

画像-20210319134554659

ページスクリーニング戦略でAdministratorAccessIAMFullAccess[次へ]を選択してクリックし、ラベルの構成は役割の構成を直接監査せず、名前(ここではglue-role)を設定し、ポリシーを確認してから確認します

画像-20210319134655993

EC2をデプロイする

EC2は、AWSクラウド上の仮想マシンとして簡単に理解できます。EC2コンソールを開き、AMI(Amazon Machine Image)タイプを「AmazonLinux 2」として選択し、アーキテクチャが64ビットx86であることを確認します

画像-20210319135119789

モデルとしてt2.largeまたはt2.xlargeを選択できます(t3対応シリーズも利用可能で、基本的に負荷はありません。質素な原則として、2Gを超えるメモリを選択することで需要を満たすことができます)

画像-20210319135331577

インスタンス設定ページで、IAMロールは作成したec2-roleを提供します

画像-20210319135429620

次のラベルページで、参照用に「キー」が「名前」(大文字と小文字を区別)、「値」が「LinuxClient」のラベルを追加します(ラベルが設定されていない可能性があります)。

画像-20210319135552380

次の手順でセキュリティグループを構成するときは、ネットワークを完全に解放できるセキュリティグループを直接指定します。そうでない場合は、自分で作成します。

画像-20210319135653135

次のレビューページで、設定を確認し、[Start]を直接クリックすると、このEC2のデプロイに使用するキーペアのプロンプトが表示されます。ここでは、新しいキーペアを作成してローカルに保存することを選択します(注:今回のみ)保存でき、後でダウンロードすることはできません。キーを変更するのは非常に面倒です)

EC2にログインします

作成後、SSHクライアントを使用してマシンにログインし、確認します

wangzan:~ $ ssh -i ~/.ssh/bmc-aws.pem [email protected]
The authenticity of host '44.192.79.152 (44.192.79.152)' can't be established.
ECDSA key fingerprint is SHA256:/BosjrkiuZkSIsuSlUHRt2CPITqx8hh8IMfSv9mJVzo.
ECDSA key fingerprint is MD5:88:bc:5c:f0:c8:87:76:da:48:2b:24:06:6b:63:54:92.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '44.192.79.152' (ECDSA) to the list of known hosts.

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
[ec2-user@ip-172-31-77-126 ~]$ aws sts get-caller-identity
{
    "Account": "921283538843", 
    "UserId": "AROA5NAGHF6NUFMB62LS2:i-03c9b3efdb246a085", 
    "Arn": "arn:aws:sts::921283538843:assumed-role/ec2-role/i-03c9b3efdb246a085"
}

KDSを構成する

この章の内容は、主に2つのKinesis Data Streamsデータストリーム(Lab1 / 4によって生成される連続データのソースとして略してkdsと呼ばれることもあります)を構成します。

KDSストリームを作成する

Kinesisは、AWSクラウド上のストリームコンピューティング関連サービスであり、ストリームデータの受信および伝送プラットフォームKinesis Data Streams(Kafkaに対応)、ストリーム処理パイプラインKinesis Data Firehose、ストリーム分析プラットフォームKinesis Data Analytics、およびストリームビデオ処理プラットフォームKinesisVideoが含まれます。ストリーム。ここでは、主にLab1 / 4で使用される2つのKinesisデータストリームを設定します。

Kinesisコンソールを開き、左側のメニューで[データストリーム]を選択し、開いたページで[データストリームの作成]を選択します。

画像-20210319140513848

lab1に必要なデータストリームを作成します(ストリーム名とシャードの数を設定します。ここでは1に設定します)

画像-20210319140605236

同じ方法を使用してlab2を作成し(実験中は一時的に使用しません。ここではデモンストレーションのみを目的としています)、作成後、lab4はデータストリームを使用する必要があります。

画像-20210319140749643

kdsを作成したので、lab1-streamデータ処理実験を実行できます。

RDSを展開する

この章の内容は、主にリレーショナルデータベース(RDS、MySQL 5.7)をデプロイし、対応するデータをインポートすることです。

RDSコンソールにログインします

RDSは、AWSクラウド上のデータベースプラットフォームサービスであり、自己開発のAuroraや、MySQL / MariaDB / Oracle / SQL Server / PostgreSQLなどのさまざまなエンジンに基づくリレーショナルデータベースが含まれます。ここでは、主にLab2用にRDS(MySQL 5.7)をデプロイします。中古。

構成パラメーターグループとオプショングループ

左側のメニューで「パラメータグループ」を選択し、右側の「パラメータグループの作成」をクリックし、パラメータグループシリーズを「mysql5.7」として選択し、対応する名前と説明を入力して、「作成」をクリックします。

画像-20210319155709358

作成後、パラメータグループの名前をクリックして、作成したパラメータグループを開き、パラメータに入力して、character_[パラメータの編集]を選択します。これは、コマンドラインで中国語のコンテンツのレコードを操作する必要があるためです。データベースのエンコーディングを変更します。そうしないと、文字化けの問題が発生しやすくなります。ここでは、変更可能なすべての「値」を変更し、「変更をutf8mb4保存」をクリックします。

画像-20210319155926794

左側のメニューで[オプショングループ]を選択し、右側の[グループの作成]をクリックします

画像-20210319160156374

RDSデータベースをデプロイする

スクリーンショットに示すように、左側のメニューで[データベース]を選択し、右側の[データベースの作成]をクリックして、データベースのエンジン、バージョン、およびテンプレートを選択します。

画像-20210319160402967

次に、データベースインスタンス名、管理者名、およびパスワードを設定し(ここでwzlinux2021は、主に忘れないようにカスタマイズできます)、データベースタイプを選択します。

画像-20210319160552318

ストレージ、可用性、ネットワーク接続のデフォルト値を選択し、[その他の構成]をクリックして、データベース名(ここではbdd)を入力し、作成した[パラメーターグループ]と[オプショングループ]を選択すると、他のすべてがデフォルトになります下の「データベースの作成」をクリックしてください

画像-20210319160930852

データベースの準備ができたら、データベース名をクリックすると、接続とセキュリティのページが表示され、対応するターミナルノードの内容をコピーします。

bdd.ccganutjnmfy.us-east-1.rds.amazonaws.com

データのインポート

誰もがデプロイされたEC2クライアントに次のSQLをダウンロードします

https://imgs.wzlinux.com/aws/bdd.sql

次に、EC2クライアントにログインし、mysqlクライアントをインストールします

sudo yum install mysql -y

次に、mysqlクライアントを使用して、次のコマンドでデータベースにログインします(すぐにパスワードを入力する必要があります)

mysql -h bdd.ccganutjnmfy.us-east-1.rds.amazonaws.com -u admin -p bdd

画像-20210319161927168

次に、データベースのコンテンツがスクリーンショットと一致するかどうかを確認します

MySQL [bdd]> show tables;
+-----------------+
| Tables_in_bdd   |
+-----------------+
| tbl_address     |
| tbl_customer    |
| tbl_product     |
| tbl_transaction |
+-----------------+
4 rows in set (0.00 sec)

MySQL [bdd]> 

ここに4つのテーブルがあります。内容は次のとおりです。

テーブル名 コンテンツ 行数
tbl_address 顧客の住所情報テーブル 1084
tbl_customer 顧客テーブル 1084
tbl_product 製品情報シート 100
tbl_transaction 履歴トランザクションレコードテーブル 49874

RDSを展開したので、EMRを展開します。

EMRを展開する

EMR(Elastic MapReduce)は、AWSでホストされているクラスタープラットフォームであり、AWSでビッグデータフレームワーク(ApacheHadoopやApacheSparkなど)を実行して大量のデータを処理および分析する操作を簡素化します。

EMRコンソールを開き、[クラスターの作成]を直接選択します。作成ページが表示されたら、[詳細オプションに移動]を選択し、対応するバージョン(デフォルトでは最新バージョン)を選択し、Spark(Lab2に必要)を選択して、[接着剤を使用]をオンにします。カタログを作成してから、次のステップに進みます

画像-20210319163017947

2番目のステップのハードウェア構成ページで、すべてのデフォルトを選択します。3番目のステップでのクラスター情報の構成については、以下のスクリーンショットを参照してください。

画像-20210319163228232

次に、対応するキーペアを選択し、[クラスターの作成]をクリックします

画像-20210319163304064

すべてのクラスターがデプロイされるまで約5分かかります。作成が完了したら、Lab2バッチデータ処理操作を実行できます。

Elasticsearchをデプロイする

この章では、Elasticsearchクラスターを1つだけデプロイする必要があり、当面は他の構成は必要ありません。

Elasticsearch Service(Amazon ES)は、AWSクラウドでElasticsearchクラスターを簡単にデプロイ、運用、スケーリングできるようにするマネージドサービスです。

次のようにESコンソールを開きます

画像-20210319213813485

初めて使用する場合は、「新しいドメインを作成する」を選択するだけで、次のページが表示されます。

画像-20210319213839837

私たちは開発とテストと最新バージョンを選択します

画像-20210319213906157

設定ページで、クラスター名(ここlab-es)を設定し、データノードのEBSディスクサイズを100Gに設定します

画像-20210319214022079

画像-20210319214008501

次の図に示すように、セキュリティ構成ページで、アクセスを容易にするためにパブリックアクセスを展開することを選択します。[ファインアクセスでマスターユーザーを作成する]を選択します。ここで作成したユーザーは、ESの最高の権限を持ち、オープンリソースアクセス戦略を選択します。 :

画像-20210319221118385

画像-20210319221150561

画像-20210319221209502

その他の設定はデフォルトです。確認後、確認してクラスタを作成してください。すべてのクラスタードメインがデプロイされるまで約10分かかります。作成が完了したら、Lab4データのリアルタイム取得実験を開始できます。

環境浄化

クリアする必要のある主な内容は次のとおりです
。1。デプロイされたEC2を削除します(これがデータのソースです)。最初にEC2をクリアすると、後続のデータ生成を回避できます
。2。各ストリーム、パイプライン、Kinesisの分析を削除します。3.RDS
データベースを削除します;
4 .EMRクラスターを削除します;
5。Elasticsearchクラスターを削除します; 6。Redshiftクラスターを削除し
ます;
7。Glueの関連する構成クローラーとタスクを削除します; 8。
実験中に作成されたS3バケットを削除します;

【注意】Quicksightサービスを他の場所で使用していない場合は、このサービスをキャンセルすることもお勧めします。公式ドキュメントを参照してください。

https://docs.aws.amazon.com/zh_cn/quicksight/latest/user/closing-account.html

QRコードをスキャンして注意を払い、詳細情報を入手することを歓迎します

AWSビッグデータの戦闘-環境の準備(1)

おすすめ

転載: blog.51cto.com/wzlinux/2667935