南京郵電大学-クラウドコンピューティング技術およびビッグデータ最終試験(知識ポイント1の要約)

記事ディレクトリ

1.クラウドコンピューティングテクノロジーの概要

1.クラウドコンピューティングの起源と技術的特徴

1.1クラウドコンピューティングの定義

●クラウドコンピューティングは、動的リソースプールを備えた仮想化された高可用性コンピューティングプラットフォームであり、量子物理学から「電子クラウド」の概念を借用し、情報処理の拡散およびユビキタスな分散特性を強調します
●コンピューティングタスクは多数に分散されますコンピューティングノードによって形成されたリソースプールで、さまざまなアプリケーションシステムがオンデマンドでコンピューティング能力、ストレージスペース、およびデータサービスを取得できます。

1.2クラウドコンピューティングの技術的特徴

●ハードウェアインフラストラクチャは、大規模な安価なサーバークラスタ上に構築されます
●アプリケーションと基盤となるサービスは、リソースを最大限に活用するために共同で開発されます
●複数の安価なサーバーの冗長性により、システムの可用性が向上します。

[Tencent Cloudは数百万台のサーバーを所有しており、数千万台のハードドライブの年間ディスク障害率は2%で、毎日数百台のハードドライブが故障しています]

1.3クラウドコンピューティングシステムのアーキテクチャ

ここに画像の説明を挿入

1.4クラウドをコアとするインターネットエコロジー

ここに画像の説明を挿入

1.5クラウドをコアとするスマートシティ

ここに画像の説明を挿入

1.6クラウドコンピューティングのレベルとタイプ

ここに画像の説明を挿入

1.7クラウドコンピューティング技術の利点

仮想化、分散、並列コンピューティング、大容量ストレージ、
デスクトップアプリケーション、リソーススケジューリング、セキュリティ

2.大規模クラウドコンピューティングデータセンター

2.1データセンターの定義

●ウィキペディア:データセンターは複雑な設備のセットです。コンピュータシステムやその他のサポート機器(通信やストレージシステムなど)だけでなく、冗長データ通信接続、環境制御機器、監視機器、さまざまな安全装置も含まれます。

3.クラウドコンピューティングおよびその他の一般的なテクノロジ

3.1クラウドコンピューティングと仮想化

●ウィキペディアの
仮想化の定義仮想化は、コンピュータリソースを表す抽象的な方法であり、仮想化により、抽象化さ
れたリソースには、抽象化前のリソースと同じ方法でアクセスできますこの種のリソースの抽象的な方法は、基礎となるリソースの実現、地理的位置、または物理構成によって制限されません

仮想化の3層の意味。仮想化の目的はさまざまなリソース
です。仮想化後の論理リソースはユーザーから隠されます。不必要な詳細
ユーザーは、仮想環境の実環境に機能を実装できます

仮想化タイプ
●ネットワーク仮想化
●ストレージ仮想化
●デスクトップ仮想化
●サーバー仮想化
●システム仮想化
●その他
(1)システム仮想化
●システム仮想化:仮想化ソフトウェアを使用して物理マシン上で仮想化しますまたは複数の仮想マシン(仮想マシン、VM)
●仮想オペレーティング環境は、仮想CPU、メモリ、I / Oデバイス、ネットワークインターフェイス
(2)を含む、仮想マシンで実行される仮想ハードウェア環境を提供する必要があります。サーバー仮想化
サーバー仮想化は、サーバーへのシステム仮想化の適用、サーバーの
統合であり、必要に応じて複数のサーバーを仮想化します
(3)デスクトップ仮想化
デスクトップ仮想化は、ユーザーのデスクトップ環境を使用する端末機器から切り離します
●利点:デスクトップの仮想化、元のターミナルデータリソース、さらにはオペレーティングシステムまでがバックエンドデータセンターのサーバーに転送され、フロントエンドターミナルがディスプレイ指向のコンピューティング支援による軽量クライアントに変換されます

3.2クラウドコンピューティングとビッグデータ

●クラウドコンピューティングはビッグデータをサポートする関係です
●クラウドコンピューティングはコンピューティングとストレージ機能を強調します
●ビッグデータはビッグデータを処理する能力を必要とします
(取得、クリーニング、変換、ストレージ、分析、統計など)

3.3クラウドコンピューティングとブロックチェーン

●ブロックチェーンの本質は、ピアツーピアネットワークでの改ざんできない分散データベースです。ブロックチェーン
は、特定のコンセンサスアルゴリズムを使用してノード間のデータの一貫性を保証し、暗号化アルゴリズムを使用してデータのセキュリティを確保します。同時に、タイムスタンプとハッシュを使用します価値は、エンドツーエンドのチェーン構造を形成し、オープンで透明、検証可能、改ざん不可能、追跡可能な技術システムのセットを作成します
●ブロックチェーン技術の機能:大規模、高スループット、高遅延、グローバルトランザクションこのメカニズムでは、データセンターの複数のノードのサポートが必要であり、大規模なダウンタイムの可能性を分散させます。
ブロックチェーンテクノロジーを提供するクラウドサービスプロバイダーの利点は、主に3つの側面です:コスト効率、アプリケーションエコロジー、セキュリティとプライバシー。
●クラウドサービスプロバイダーと組み合わせる、ブロックチェーン技術を統合、パッケージ化、および配信して、アプリケーションのランディングの
基盤を築くことができます

3.4クラウドコンピューティングとウイルス防御

クラウドコンピューティングとウイルス防御
●クラウドセキュリティの基本的な考え方:多対多
●クライアント側のプローブを使用してサンプルを収集する
●顧客が多いほど、収集されたサンプルに基づくセキュリティ分析の信頼性が高くなり、ウイルス応答がより信頼性が高くなり、タイムリーになります
●小型、検出、および強制終了強いウイルス

4.重要な商用クラウドコンピューティングプラットフォーム

4.1 Googleクラウドコンピューティング

1 GoogleファイルシステムGFS(記事を読む必要があります)
ここに画像の説明を挿入

2分散データ処理MapReduce(必須の読み取り)
●Map関数は、元のデータに対して指定された操作を実行します。各Map操作は、異なる元のデータに対するものです。Map
とMapは互いに独立しており、完全に並列化できます
●Reduce操作-それぞれに対してマップによって生成された中間結果はマージされます。各リデュースによって処理されたマップの中間結果は
相互に交差しません。すべてのリデュースによって生成された最終結果は、単純にマージされて完全な結果セットを形成します。

3分散構造化データテーブルBigtable(必読)
4分散ロックサービスチャビー
5分散ストレージシステムメガストア
6大規模分散システム監視アーキテクチャDapper
7大量データインタラクティブ分析ツールDremel
8メモリビッグデータ分析システムPowerDrill
9 Googleアプリケーションエンジン

4.2アマゾンクラウドコンピューティング

●Amazon S3は、業界をリードするスケーラビリティ、データの可用性、セキュリティ、パフォーマンスを提供するオブジェクトストレージサービスです。
●あらゆる規模と業界のお客様が、それを使用してさまざまなユースケース(ウェブサイト、モバイルアプリケーションなど)を保存および保護できます。
いずれかのアプリケーション、バックアップとリストア、アーカイブ、エンタープライズアプリケーション、ロット機器やビッグデータ分析)
データの数

5.代表的なオープンソースクラウドコンピューティングプラットフォーム

●Hadoopの:Googleのクラウドコンピューティングのオープンソース実装
●OpenStackの:プロジェクトのクラウドプラットフォーム管理、NASAとRackspaceの共同のR&D
●ユーカリ:アマゾンクラウドはオープンソース実装コンピューティング
配信技術ダイナモの組み合わせとGoogleのBigTableのデータモデル、高:●カサンドラ
の度合いをスケーラブルで、最終的には一貫性のある、分散構造のKey-Valueストレージシステム。
Enomaly ECP:
EC2Nimbus と同様のクラウドコンピューティングフレームワークを提供します:グリッドミドルウェアGlobusに基づいて、EC2と同様の機能とインターフェースを提供します

2.クラウドオペレーティングシステムOpenStack

2.1 OpenStackの概要

OpenStackは、今日最も人気のあるオープンソースのクラウドプラットフォーム管理プロジェクトです。多くの企業や組織がOpenStackを使用して、新製品の迅速な導入をサポートし、コストを削減し、内部システムをアップグレードしています。また、サービスプロバイダーはOpenStackを使用して、信頼性が高く簡単にアクセスできるクラウドインフラストラクチャリソースを顧客に提供します。
ビジョン:すべてのパブリッククラウドプロバイダーとプライベートクラウドプロバイダーに、あらゆるニーズに対応でき、実装が簡単で、大規模に拡張できるオープンソースのクラウドコンピューティングプラットフォームを提供すること。

2.2 OpenStackコンポーネントの概要

(1)ノヴァ

●Novaはコンピューティングサービスのコード名であり、OpenStackの初期のコンポーネントの1つであり、OpenStackのコンピューティングリソースを管理します。
●Novaは仮想化管理プログラムのセットと言えます。Novaは、仮想マシンの作成、削除、再起動などを行うことができます。Openstackがクラウドプラットフォームを構築できるのは、仮想マシンを作成できるからでもあります。

●Nova-APIは、統一された外部標準化インターフェースを提供します。エンドユーザーのCompute APIリクエストを受け入れて応答し、他のOpenstackロジックモジュールとの通信も実現します。

Gバージョンより前のNova- ducter、nova-computeはデータベースと直接対話するため、セキュリティ上の問題が発生します。Gバージョンの後、nova-computeはエージェントとして機能します

●Nova-scheduler
は、特定のアルゴリズムに従ってコンピューティングリソースプールからコンピューティングノードを選択して、新しいVMインスタンスを起動します(複数のフィルターまたはアルゴリズムスケジューリングを使用)

●Novaボリュームは
通常、ストレージノード上で実行され(エージェントの役割と同様)、主にボリュームの作成、VMのボリュームのバインド、ボリュームのバインド解除などのボリューム関連の機能を実行します。

(2)RabbitMQ

●OpenStackソフトウェアモジュールは、AMQPプロトコルによる情報通信を実現します。OpenStackでは、各
サービスはメッセージを介して対話します。
●RabbitMQは、メッセージ検証、メッセージ変換、メッセージルーティングを処理するアーキテクチャパターンであり
、アプリケーション間の情報通信を調整し、アプリケーションまたはソフトウェアモジュール間の相互認識を最小限に抑え、デカップリングを効果的に実現します。
●RabbitMQは、トポロジが柔軟で拡張が容易な大規模システム環境での展開に適しており、異なるモジュール、異なるノード、異なるプロセス間のメッセージ通信の適時性を効果的に確保します。さらに、RabbitMQの独自のクラスターHAセキュリティ保証機能により、情報ハブセンターを実現できます。同時に、単一のノードにメッセージ回復機能があります。システムプロセスがクラッシュしたりノードがダウンしたりしても、RabbitMQによって処理されているメッセージキューは失われません。ノードが再起動した後、メッセージキューのステータスデータと情報データに従って通信を時間内に復元できます。

(3)一覧

●Glanceは、仮想マシンイメージの登録、ログイン、および取得に使用されるOpenStackイメージサービスです。GlanceサービスはRESTAPIを提供し、ユーザーが仮想マシンイメージのメタデータをクエリして実際のイメージを取得できるようにします。
●イメージサービスによって提供される仮想マシンイメージは、単純なファイルシステムオブジェクトストレージから同様のOpenStackオブジェクトストレージシステムまで、さまざまな場所に保存できます。
Glance機能
●ミラー登録とクエリ
●ロールベースのアクセス制御
●複数の画像形式(raw、qcow2)の
サポート複数のストレージタイプ(S3、Swift、ファイルシステムなど)のサポート

(4)スイフト

機能:
➢信頼性の高いオブジェクトストレージ
➢単一障害点
なし➢サポートS3
API➢大規模なオブジェクトの安全なストレージ
➢大規模なファイルストレージ
➢データの冗長性管理

Swiftは主に問題を解決します。
オブジェクトストレージは、NAS(スケーラビリティが低い)とSAN(データを安全に共有するのは容易ではない)の欠点を克服し、SANへの
同時高速直接アクセスとNASのデータ共有などの両方の利点を組み合わせます。利点、
高性能、高信頼性、クロスプラットフォームで安全なデータ共有を備えたストレージアーキテクチャを提供します。
➢大容量ファイルストレージ
➢データ冗長性管理
●ファイルシステムではありません。swiftは
、open()、read()、write()、seek()、close()などの従来のファイル操作コマンドの代わりにREST APIを使用します
●「ファイルロック」をサポートしてい
ません●ファイルディレクトリなし構造
●データベースではありません。Swiftはaccount-container-objectの概念を使用してオブジェクトを格納
し、指定されたコンテナー内のオブジェクトをリスト
できます●仮想マシンのブロックデバイスとしては使用できません

Swiftの使用
●laaSのストレージサービスとして●
OpenStack Computeに接続して画像を
保存●ドキュメントストレージ
ログ
ストレージのウェブサイトの写真、
指定したコンテナ内のオブジェクトを一覧表示するサムネイルなど、長期間保存する必要のあるデータを保存
●ブロックデバイスとしては使用できません仮想マシンに提供

SwiftとHDFSの違い
●HDFSは中央システムを使用してファイルメタデータ(NameNode)を維持しますが、Swiftではメタデータ
はクラスター間で分散および複製されます。
●Swiftは設計時にマルチテナンシーを考慮し、HDFSにはマルチテナンシーの概念がありません。
●HDFSは大きなファイル用に最適化されており、Swiftはあらゆるサイズのファイルを保存できるように設計されています。
●HDFSのファイルは1回書き込みで、一度に1ファイルしか
書き込めませんが、Swiftでは複数回書き込みが可能で、同時実行環境では最新の操作が優先されます。
●HDFSはJavaで記述されていますが、SwiftはPythonで記述されています。

(5)シンダー

●Cinder(BlockStorage)ブロックストレージモジュール。仮想マシンに永続的なブロックストレージボリュームを提供し、仮想マシンへのブロックデバイスの作成、マウント、アンマウントを管理します。
●nova-volumeの需要拡大は、Novaとは別の集中型ブロックストレージサービスです。Cinderは、仮想マシンのストレージスペースを増やすことです。
●Cinderコンポーネントアーキテクチャは、Novaのアーキテクチャのミラーイメージコピーです。

CinderとSwiftの違い
Cinder はブロックストレージであり、拡張ハードディスクを仮想マシンに接続するために使用されます。cinderによって作成されたボリュームを仮想マシンに接続するためです。Cinder
は、以前NovaでOpenStackからFバージョンに分離された永続的なブロックストレージ機能(Nova-Volume)の一部であり、新しいコンポーネントとして独立しています。Cinder ●swiftは、アップロードとダウンロードが可能なシステムであり、通常はそこに保存されますこれは、VMイメージ、バックアップとアーカイブ、写真や電子メールメッセージなどの小さなファイルの保存など、頻繁に変更されないコンテンツです。より体系的な管理に傾倒。

(6)中性子

●NeutronはOpenStackのコアプロジェクトの1つであり、クラウドコンピューティング環境で仮想ネットワーク機能を提供します。
●OpenStackの初期バージョン(Folsomバージョンの前)では、
Neutron / Quantumコンポーネントはなく、ネットワーク機能はNovaに実装されています。つまり、nova-networkは、シンプルなLinuxブリッジモードとVLANネットワークを提供します。構造。
●OpenStackの需要が高まるにつれ、nova-networkの機能はこの要件を満たせなくなったため、Neutronが誕生しました。
●Neutronコンポーネントを使用すると、OpenStackのプロジェクトに1つ
以上のプライベートネットワークを作成できます。これらのネットワークは、プロジェクトで異なるプライベートネットワークが分離されている場合でも、他のユーザーのネットワークから論理的に分離されています。

Neutronサービスネットワーク管理
●固定IP:テナントインスタンス間の通信のために仮想マシンインスタンスに割り当てられます
●フローティングIP:インスタンスと外部またはインターネット間の通信に使用されるパブリックIPアドレス。
●フラットモード
VLANを使用せず、1つのネットワークのみをサポートする最もシンプルなネットワークモード。各ノードでブリッジデバイスを手動で作成する必要があり、各インスタンスはプールから固定IPを受信します。
●フラットDHCPモード。
このモードでは、 DHCPサーバーは、固定IPアドレスをVMに割り当てますが、基本的には最初のモードと同じです。各インスタンスはプールから固定IPを受け取ります
●VLANモード
各プロジェクトには独自のVLAN、Linuxブリッジ、およびDHCPサーバーがあり、すべてのVMは同じVLANに属し、同じブリッジに接続されています。

(7)キーストーン

コアモジュールとしてのKeystone Openstackは、統合された完全な
penStack認証、ディレクトリサービス、トークン、Nova(合計
数)、Glance(ミラー)、Swift(オブジェクトストア)、Cinder(ブロックストレージ)のアクセスポリシーサービスを提供します)、
Neutron(ネットワーク)およびHorizo​​n(ダッシュボード)は認証サービスを提供します。
Keystoneには2つの主要機能があります
。➢ユーザー管理:ユーザーアクセス権の制御、管理、追跡
➢サービスカタログ管理:サービスアクセスURLの提供

●ユーザー(ユーザー)
ユーザーは、Keystoneを介してアクセスできる個人またはプログラムを表し、ユーザーは認証情報(パスワード、APIキーなどの資格情報)を使用して検証されます。
●テナント(テナント)
テナントは、プロジェクト、グループ、または組織と見なすことができ、各サービスでアクセスできるリソースの集まりです
●ロール(ロール)
は、Novaの仮想マシンなど、グループユーザーがアクセスできるリソース権限を表します、一目でミラー。

Nova、Glance、Swiftなどのサービス(Service)サービス。通常、さまざまなサービスを表すために使用されるいくつかの異なる名前があります。
●エンドポイントエンドポイント
はサービスのURLであり、サービスにアクセスする必要がある場合は、そのエンドポイントを知っている必要があります。
●トークン(Token)
トークンは、リソースにアクセスするための鍵です。これはKeystone検証後の戻り値であり、他のサービスとのその後のやり取りでは、トークン値のみを運ぶ必要があります。各トークンには有効期間があり、トークンは有効期間中のみ有効です。

(8)地平線

●Horizo​​nは、OpenStackサービスの管理と制御に使用されるWebコントロールパネルで、インスタンス、イメージの管理、キーペアの作成、インスタンスへのボリュームの追加、Swiftコンテナーの操作を行うことができます。さらに、ユーザーはターミナル(コンソール)またはVNCを使用して、コントロールパネルのインスタンスに直接アクセスすることもできます。

機能:
●インスタンス管理:インスタンスの作成と終了、端末ログの表示、VNC接続、ボリュームの追加など。
●アクセスとセキュリティ管理:セキュリティグループの作成、キーペアの管理、フローティングIPの設定。
●環境設定:仮想ハードウェアテンプレートに異なる環境設定を設定できます。
●ミラー管理:ミラーを編集または削除します。
●ユーザー管理:ユーザーの作成等
●ボリューム管理:ボリュームとスナップショットを作成します。
●オブジェクト保存処理:コンテナやオブジェクトを作成・削除します。

2.3 OpenStackでインスタンスのリクエストフローを設定する手順:

1.ダッシュボードまたはCLIが認証要求をKeystoneに送信します。
2. Keystone認証証明書、token_idおよびserverCatalog(さまざまなAPIサービスアドレスnova-api、glance
-api、cinder-apiなどを含む)を生成して返します。3
.ダッシュボードまたはCLIがnova-apiに新しいインスタンス要求を送信します。
4. Nova-apiがリクエストを受信し、Keystoneでトークンが正当かどうかを確認します。
5. Keystone検証トークン
6. Nova-apiがnova-databaseと対話します。
7.データベースにインスタンスを作成します。
8. Nova-apiがrpc.callリクエストをnova-schedulerに送信し、インスタンスインストールの物理マシン番号を取得することを期待します。
9. Nova-schedulerはメッセージキューからリクエストを取得します。
10. nova-schedulerはnova-databaseと対話し、最初にフィルターをかけ、次に重みを計算し、適切な物理マシンを選択します。
11.適切な物理マシン番号を返します。
12. Nova-schedulerがrpc.castリクエストをnova-computeに送信して、適切な物理マシン上に新しいインスタンスを作成します。
13. Nova-computeはメッセージキューからリクエストを取得します。
14. Nova-computeは、rpc.call要求をnova-conductorに送信して、インスタンス関連情報(ホスト番号、CPU、ディスク)を
取得します15. Nova-conductorは、メッセージキューから要求を取得します。
16. Nova-conductorは、nova-databaseと対話します。
17.インスタンス情報を返します。
18. Nova-computeは、メッセージキューからインスタンス情報を取得します。
19. Nova-computeはglance-apiにリクエストを送信し、ID番号に従って
ミラーのURLを取得して、ミラーをダウンロードします。
20. glance-apiはKeystoneでトークンを検証します。
21. Nova-computeが画像メタデータを取得します。
22. Nova-computeは、Network APIにリクエストを送信して、nova-com pute
23とquantum-apiを構成し、Keystoneでトークンを検証します。
24. Nova-computeはネットワーク情報を取得します。
25. Nova-computeは、ボリュームAPIにインスタンスボリュームをバインドするように要求します。
26. Cinder-apiは、Keystoneでトークンを検証します。
27. Nova-computeはブロックストレージ情報を取得します。
28.仮想マシンはハイパーバイザーで実行されます。

おすすめ

転載: blog.csdn.net/qq_42005540/article/details/108307607