# デプロイメント設定

**デプロイメント設定**ページでは、EMQX Cloudデプロイメントの主要な設定、デプロイメント情報、クラウドの詳細、MQTTプロトコルの動作などを確認および構成できます。

このページは、デプロイメントの左側ナビゲーションパネルの**デプロイメント設定**からアクセス可能です。

## 概要

**デプロイメント設定**ページには、以下の2つのタブがあります。

- **一般設定**：デプロイメントの詳細、請求情報、クラウドプラットフォーム設定を表示します。

- **MQTT設定**：パケットサイズ、共有サブスクリプション戦略、セッション動作、フラッピング検出などのMQTTパラメータを構成します。

  ::: tip 注意

  **MQTT設定**タブは、Dedicated v5およびDedicated Flexデプロイメントでのみ利用可能です。

  :::

## 一般設定

**一般設定**タブでは、デプロイメント情報とクラウド環境の概要を確認でき、プランや請求の管理オプションも提供します。

### デプロイメント情報

このセクションでは、デプロイメントの基本情報を表示します。

| フィールド               | 説明                                                  |
| ----------------------- | ----------------------------------------------------- |
| **デプロイメント名**    | デプロイメントの名前です。**編集**アイコンをクリックして直接編集したり、**コピー**アイコンでコピーできます。 |
| **デプロイメントID**    | デプロイメントの一意の識別子です。サポートへの問い合わせやAPI利用時に必要に応じて**コピー**アイコンでコピー可能です。 |
| **プラン**              | 現在のデプロイメントプラン（例：**Dedicated Flex**や**サーバレス**）です。 |
| **EMQXバージョン**      | デプロイメントで稼働中のEMQXのバージョンです。       |
| **ティア**              | 現在のパフォーマンスティアで、最大サポートセッション数やメッセージスループット（TPS）を示します。**Change Tier**をクリックするとデプロイメントの容量を変更できます。詳細は[Change Deployment Tier](./change_tier.md)を参照してください。 |
| **請求方法**            | 現在の請求方法（例：従量課金）です。年間契約やカスタム価格についてはEMQにお問い合わせください。 |

> **ヒント:** 専用容量や割引についてはEMQ営業までお問い合わせください。

### クラウド情報

このセクションでは、デプロイメントがホストされているクラウドインフラの情報を表示します。

| フィールド              | 説明                                                  |
| ---------------------- | ----------------------------------------------------- |
| **クラウドプラットフォーム** | デプロイメントをホストしているクラウドサービスプロバイダー（例：**AWS**、**Azure**、**Google Cloud**）です。 |
| **リージョン**          | クラウドインスタンスの地理的リージョン（例：*N. Virginia (us-east-1)*）です。 |

### デプロイメントの削除

デプロイメントを完全に削除するには、ページ下部の**Delete Deployment**をクリックしてください。削除すると、関連するすべてのデータと設定が消去されます。

::: warning 注意

この操作は元に戻せません。詳細は[Delete a Deployment](./stop_delete_deployment.md)を参照してください。

:::

## MQTT設定

::: tip 注意

**MQTT設定**タブはDedicated v5およびDedicated Flexデプロイメントでのみ利用可能です。このオプションが表示されない場合は、[チケットを提出](../feature/tickets.md#create-a-ticket)してデプロイメントのアップグレードについてお問い合わせください。

:::

**MQTT設定**タブでは、アプリケーションの要件に合わせてMQTTプロトコルのパラメータをカスタマイズできます。これらの設定は、EMQX Cloudがクライアントセッション、サブスクリプション、メッセージ配信、パケット検証をどのように処理するかを制御します。

### 基本設定

| 設定項目                                     | 説明                                                  |
| ------------------------------------------- | ----------------------------------------------------- |
| **最大パケットサイズ**                       | EMQXが受け入れる最大のMQTTパケットサイズを定義します。クライアントがこの制限を超えるパケットを送信した場合、EMQX Cloudはクライアントを切断します。パフォーマンスに影響を与える過剰なペイロードを防ぐために使用します。 |
| **共有サブスクリプション戦略**               | EMQX Cloudが共有サブスクリプショングループ内のサブスクライバー間でメッセージをどのように分配するかを決定します。利用可能な戦略：<br />`random`：メッセージをランダムに選ばれたサブスクライバーに送信。<br />`round_robin`：サブスクライバーに順番に均等に分配。<br />`round_robin_per_group`：各共有サブスクリプショングループ内でラウンドロビン配信。<br />`sticky`：同じサブスクライバーに配信を続け、切断されるまで維持。<br />`local`：ローカルノードのランダムなサブスクライバーを優先し、いなければクラスター全体からランダム選択。<br />`hash_topic`：メッセージの送信元トピックのハッシュでサブスクライバーを決定。<br />`hash_clientid`：送信者のクライアントIDのハッシュでサブスクライバーを決定。この設定はクラスター環境での負荷分散とメッセージ配信の一貫性を最適化します。<br />共有サブスクリプションの詳細は、EMQX Cloudの[Shared Subscription](../connect_to_deployments/shared_subscription.md)および[MQTT 5.0共有サブスクリプション入門](https://www.emqx.com/en/blog/introduction-to-mqtt5-protocol-shared-subscription)を参照してください。 |
| **共有サブスクリプション初期Sticky選択**    | `sticky`配信戦略を使用する際に最初のサブスクライバーを選ぶ方法を指定します。<br />オプション：<br />`random`：ランダムに選択。<br />`local`：ローカルノードのサブスクライバーを優先し、なければクラスター全体からランダム選択。<br />`hash_clientid`：パブリッシャーのクライアントIDのハッシュで選択。<br />`hash_topic`：パブリッシュ元のトピックのハッシュで選択。<br />共有サブスクリプショングループがアクティブになる際の初期負荷分散動作を決定します。 |
| **ピア証明書をユーザー名として使用**          | クライアントのTLS証明書からMQTTのユーザー名フィールドを抽出する機能を有効にします。証明書ベースの認証に有用です。<br />サポートされる方法：<br />`cn`：証明書のCommon Name (CN)フィールドを使用。<br />`dn`：Distinguished Name (DN)フィールドを使用。<br />`crt`：DERまたはPEM証明書の生データを使用。<br />`pem`：DERデータをPEM形式に変換してユーザー名として使用。<br />`md5`：DERまたはPEM証明書のMD5ハッシュを使用。<br />TLS接続時のみ有効です。 |
| **ピア証明書をクライアントIDとして使用**       | クライアントのTLS証明書からクライアントIDを導出する機能を有効にします。ユーザー名と同様の方法（`cn`、`dn`、`crt`、`pem`、`md5`）がサポートされています。<br />証明書ベース接続のクライアントIDを安全かつ決定的に生成する手段を提供します。 |
| **クライアント属性**                         | 接続時にカスタムクライアント属性を初期化する方法を定義します。各属性は`client_attrs.{NAME}`として宣言でき、`{NAME}`は`set_as_attr`設定フィールドで指定された属性キーです。なお、属性名`tns`は内部システム用に予約されており使用禁止です。<br />初期化された属性は`client_attrs`プロパティに保存され、マウントポイントの動的レンダリングや認証・認可ルールで参照可能です。<br />クライアント属性の設定と使用方法の詳細は[EMQXのクライアント属性](https://docs.emqx.com/en/emqx/latest/client-attributes/client-attributes.html)を参照してください。 |

### セッション設定

| 設定項目                      | 説明                                                  |
| ---------------------------- | ----------------------------------------------------- |
| **セッション有効期限間隔**   | クライアント切断後にEMQX Cloudがセッションデータを保持する期間を指定します。MQTT 5.0以外の接続にのみ適用されます。オフラインメッセージやサブスクリプションの保持期間を制御します。 |
| **最大インフライト数**       | アック（ACK）を待たずに同時に送信可能なQoS 1およびQoS 2メッセージの最大数を定義します。値が大きいほどスループットは向上しますが、メモリ使用量も増加します。 |
| **最大メッセージキュー長**   | 永続クライアントが切断されている場合やインフライトウィンドウが満杯の場合のメッセージキューの最大長を指定します。キューがこの制限に達すると古いメッセージから破棄されます。 |

### フラッピング検出設定

フラッピング検出は、異常に頻繁に切断と再接続を繰り返すクライアントを検出し、一時的に禁止してクラスターへの過負荷を防ぎます。フラッピング検出は常に有効で無効化できませんが、閾値は調整可能です。

| 設定項目                    | 説明                                                  |
| -------------------------- | ----------------------------------------------------- |
| **最大切断回数**            | 検出時間ウィンドウ内でクライアントが許容される最大切断回数です。この回数を超えると、**禁止期間**で指定された期間クライアントIDが禁止されます。 |
| **検出時間ウィンドウ**      | 切断回数をカウントする時間ウィンドウの長さです。       |
| **禁止期間**                | 切断閾値を超えた後、フラッピングクライアントIDが禁止される期間です。 |

### 設定の更新

MQTT設定を変更した後は、**Update**をクリックして変更を適用してください。新しい設定は即時に反映されます。
