ストリーム・プールの作成
ストリーミング・サービスにストリーム・プールを作成します。ストリーム・プールは、ストリームの論理グループです。
すべてのストリームは、ストリーム・プールのメンバーである必要があります。ストリーム・プールを作成しない場合、またはストリームの作成時に既存のストリーム・プールを指定しない場合、ストリーミング・サービスでは、ストリームを含むデフォルト・プールが使用されます。ストリームを作成および管理するための要件を確認するには、ストリーミングの開始を参照してください。
ストリーム・プールを作成するには、oci streaming admin stream-pool createコマンドと必要なパラメータを使用します:
oci streaming admin stream-pool create --name <stream_pool_name> --compartment-id <compartment_OCID>
例:
oci streaming admin stream-pool create --name MyStreamPool --compartment-id ocid1.tenancy.oc1..exampleuniqueID { "data": { "compartment-id": "ocid1.tenancy.oc1..exampleuniqueID", "custom-encryption-key": { "key-state": "NONE", "kms-key-id": null }, "defined-tags": {}, "endpoint-fqdn": null, "freeform-tags": {}, "id": "ocid1.streampool.oc1.phx.exampleuniqueID", "is-private": false, "kafka-settings": { "auto-create-topics-enable": false, "bootstrap-servers": null, "log-retention-hours": 24, "num-partitions": 1 }, "lifecycle-state": "CREATING", "lifecycle-state-details": null, "name": "MyStreamPool", "private-endpoint-settings": { "nsg-ids": null, "private-endpoint-ip": null, "subnet-id": null }, "time-created": "2020-11-02T23:01:59.429000+00:00" }, "etag": "\"b0066564-4bf4-4e27-9255-9055e69a7808-03668273-b0d5-4b8b-9370-74522c29eb56\"" }
ヒント
有効なフォーマット済JSONとして--custom-encryption-key-details
、--private-endpoint-details
および--kafka-settings
の入力を指定します。JSONフォーマットの詳細は、複合入力の受渡しおよび複合入力のためのJSONファイルの使用を参照してください。CLIコマンドのパラメータおよび値の完全なリストは、CLIコマンド・リファレンスを参照してください。
CreateStreamPool API操作を使用して、ストリーム・プールを作成します。
OCI SDKの使用
ストリーム・プールを作成するには、StreamAdminClient
のcreateStreamPool
メソッドを使用します。
SDKの詳細な例は、ストリーミングの開発者ガイドを参照してください。
リソース・マネージャおよびTerraformの使用
oci_streaming_stream_pool
リソースを使用して、オプションのプライベート・エンドポイントおよびKafka互換性設定でストリーム・プールを作成します。プライベート・エンドポイント設定には、VCN、サブネットおよびネットワーク・セキュリティ・グループが必要です。この例のTerraform構成では、これらのリソースも作成されます。
例:
resource "oci_streaming_stream_pool" "test_stream_pool" {
#Required
compartment_id = var.compartment_ocid
name = "<stream_pool_name>"
#Optional
private_endpoint_settings {
nsg_ids = [oci_core_network_security_group.test_nsg.id]
private_endpoint_ip = "10.0.0.5"
subnet_id = oci_core_subnet.test_subnet.id
}
kafka_settings {
#Optional
auto_create_topics_enable = true
log_retention_hours = 24
num_partitions = 1
}
}
resource "oci_core_vcn" "test_vcn" {
cidr_block = "10.0.0.0/16"
compartment_id = var.compartment_ocid
display_name = "testvcn"
dns_label = "dnslabel"
}
resource "oci_core_subnet" "test_subnet" {
cidr_block = "10.0.0.0/24"
compartment_id = var.compartment_ocid
vcn_id = oci_core_vcn.test_vcn.id
}
resource "oci_core_network_security_group" "test_nsg" {
compartment_id = var.compartment_ocid
vcn_id = oci_core_vcn.test_vcn.id
}
リソース・マネージャは、Oracle Cloud Infrastructure (OCI)リソースをプロビジョニングするプロセスを自動化できるOCIサービスです。Terraformを使用する場合、リソース・マネージャでは、「infrastructure-as-code」モデルを使用してリソースをインストール、構成および管理できます。
Terraform構成は、宣言的な構成ファイルのインフラストラクチャを調整します。この構成により、プロビジョニングしようとしているリソース、変数、およびリソースのプロビジョニングに関する特定の指示が定義されます
リソース・マネージャまたはTerraform CLIをOCI Terraformプロバイダで使用して、ストリームおよびストリーム・プールがTerraform構成ファイルでどのように表されているかを確認できます。
リソース・マネージャで使用する構成の記述の詳細は、リソース・マネージャのTerraform構成およびTerraform構成を参照してください。