このページでは、Cloud IoT Core を使用するために必要な設定の手順を紹介し、いくつかの重要なコンセプトを紹介します。
(クイックスタートを完了している場合は、この手順の一部はすでに完了しています。このページで Cloud IoT Core を使用する準備ができていることを確認してください。)
始める前に
- Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
-
Google Cloud プロジェクトの課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。
-
Cloud IoT API を有効にします。
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
-
Google Cloud プロジェクトの課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。
-
Cloud IoT API を有効にします。
Google Cloud CLI と gcloud の設定
Google Cloud CLI をインストールする。 Cloud IoT Core を使用するには、gcloud CLI のバージョン 173.0.0 以降が必要です。
次のコマンドを実行して、SDK に含まれている gcloud CLI を更新します。
gcloud components update
gcloud をデフォルトでインストールして Compute Engine VM を使用している場合は、コンポーネントを更新できません。Compute Engine VM で Cloud IoT Core を有効にするには、次のコマンドを実行して gcloud CLI を再インストールします。
sudo apt-get remove google-cloud-sdk curl https://sdk.cloud.google.com | bash exec -l $SHELL gcloud init
詳細については、gcloud iot
コマンドのリファレンス ドキュメントをご覧ください。
Cloud IoT Core の概要
このセクションでは、Cloud IoT Core の主な機能の概要を説明します。詳細については、Cloud IoT Core の概要と「コンセプト」セクションの他のページをご覧ください。
デバイスの登録
デバイスが接続するには、まず Cloud IoT Core に登録する必要があります。登録では、デバイスをコレクション(レジストリ)に追加し、いくつかの基本的なプロパティを定義します。デバイスは、Cloud Platform Console、gcloud コマンド、REST スタイルの API に登録できます。詳細については、レジストリとデバイスの作成をご覧ください。
デバイスの登録、モニタリング、構成を可能にする機能は、まとめてデバイス マネージャーと呼ばれます。
プロトコル(MQTT および HTTP)
Cloud IoT Core では、デバイス接続と通信(MQTT と HTTP)の 2 つのプロトコルがサポートされています。デバイスは、「ブリッジ」(MQTT ブリッジまたは HTTP ブリッジ)を介して Cloud IoT Core と通信します。デバイス レジストリを作成する際に、MQTT、HTTP、またはそれらの両方を有効にするプロトコルを選択します。
MQTT は、組み込みデバイスで頻繁に使用され、サポートされる標準のパブリッシュ / サブスクライブ プロトコルであり、マシン間のやり取りでも広く使用されています。
HTTP は「コネクションレス型」のプロトコルです。HTTP ブリッジを使用すると、デバイスは Cloud IoT Core への接続を維持しません。代わりに、リクエストを送信してレスポンスを受信します。
詳細については、MQTT ブリッジの使用と HTTP ブリッジの使用をご覧ください。
デバイス認証
Cloud IoT Core では、公開鍵(または非対称)認証が使用されます。
- デバイスは秘密鍵を使用して JSON Web Token(JWT)に署名します。トークンは、デバイスの ID の証明として Cloud IoT Core に渡されます。
- このサービスでは、デバイスの公開鍵(JWT の送信前にアップロードされる)を使用してデバイスの ID を検証します。
詳細については、鍵ペアの作成、JWT の使用、一般的なデバイスのセキュリティのセクションをご覧ください。
クラウドからのデバイス制御
Cloud IoT Core では、デバイス構成を変更することでそのデバイスを制御できます。デバイス構成は、構造化データまたは非構造化データの任意のユーザー定義 blob です。デバイスで MQTT を使用している場合は、構成が自動的にデバイスに伝搬されます。デバイスが HTTP 経由で接続する場合は、構成を明示的にリクエストする必要があります。
詳細については、デバイスの構成セクションをご覧ください。