本頁面說明如何使用 Datastream API 建立、擷取資訊及刪除私人連線設定。
私人連線設定包含 Datastream 用於透過私人網路與資料來源通訊的資訊 (在 Google Cloud內部,或透過 VPN 或 Interconnect 連線至外部來源)。這類通訊會出現在 Private Service Connect 介面或虛擬私有雲 (VPC) 對等互連連線中。
使用虛擬私有雲對等互連建立私人連線設定
建立私人連線設定前,請確認您已完成下列事項:
- 具備可與 Datastream 私人網路對等互連的虛擬私有雲網路。如要進一步瞭解如何建立虛擬私有雲網路,請參閱「使用虛擬私有雲網路對等互連」。
- 虛擬私有雲網路必須具有可用的 IP 範圍 (CIDR 區塊至少為 /29)。Datastream 會使用這個 IP 範圍與提供的 VPC 建立 VPC 對等互連,因此這個範圍不得與該 VPC 內的子網路重疊。因此 Datastream 可以與來源通訊。
建立私人連線設定時,有兩個相關聯的參數:
vpcName:
指定虛擬私有雲網路的名稱和路徑。subnet:
提供虛擬私有雲網路中的可用 IP 範圍。
下列程式碼顯示建立私人連線設定的要求,並將連線方法指定為使用虛擬私有雲對等互連 (vpcPeeringConfig
)。
REST
POST https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections?privateConnectionId=PRIVATE_CONNECTIVITY_CONFIGURATION_ID { "displayName": "DISPLAY_NAME", "vpcPeeringConfig": { "vpcName": "VPC_NAME", "subnet": "SUBNET" } }
例如:
POST https://datastream.googleapis.com/v1/projects/myProjectId/locations/ us-central1/privateConnections?privateConnectionId=myPrivateConnection { "displayName": "my-private-connection", "vpcPeeringConfig": { "vpcName": "projects/my-project/global/networks/my-vpc", "subnet": "10.11.12.13/29" } }
建立私人連線設定後,您可以呼叫 privateConnections/get
方法來查看相關資訊。輸出內容會與以下所示內容類似:
{ "name": "projects/projectId/location/us-central1/privateConnections/myPrivateConnection", "createTime": "2019-12-22T16:17:37.159786963Z", "updateTime": "2019-12-22T16:17:37.159786963Z", "displayName": "my-private-connection", "state": "CREATED", "vpcPeeringConfig": { "vpcName": "projects/my-project/global/networks/my-vpc", "subnet": "10.11.12.13/29" } }
gcloud
gcloud datastream private-connections create PRIVATE_CONNECTION_NAME --location=LOCATION--display-name=DISPLAY_NAME --vpc=VPC_NAME --subnet=SUBNET
例如:
gcloud datastream private-connections create my-privateConnection --location=us-central1--display-name=my-private-connection --vpc=my-vpc --subnet=10.11.12.13/29
使用 Private Service Connect 介面建立私人連線設定
建立私人連線設定前,請確認您已完成下列事項:
具備可連線至 Datastream 私人網路的虛擬私有雲網路。如要進一步瞭解如何建立虛擬私有雲網路,請參閱「建立及管理虛擬私有雲網路」。
在虛擬私有雲專案中建立網路連結。
確認 Google Cloud 和地端部署防火牆允許將源自網路連結 IP 位址範圍的流量,傳送至您要串流處理資料的來源資料庫。
下列程式碼顯示使用 Private Service Connect 介面建立私人連線設定的要求。您必須先執行指令,使用 validateOnly
標記 (Google Cloud CLI 為 --validate-only
) 建立私人連線設定:
REST
POST "https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections?privateConnectionId=PRIVATE_CONNECTIVITY_CONFIGURATION_ID&validateOnly=true"
gcloud
gcloud datastream private-connections create PRIVATE_CONNECTION_NAME --location=LOCATION--display-name=DISPLAY_NAME --network-attachment=NETWORK_ATTACHMENT_NAME --validate-only
系統會在回應中提供要核准的製作人專案名稱。您需要將專案新增至網路連結允許的專案清單:
- 使用
describe
方法取得網路附加元件的目前producer-accept-list
。詳情請參閱 Compute Engine Google Cloud SDK 說明文件。 - 使用
update
方法將生產端專案新增至這個清單。詳情請參閱 Compute Engine Google Cloud SDK 說明文件。
將生產端專案新增至允許的專案清單後,請再次執行指令來建立私人連線設定,這次請勿使用 validateOnly
標記:
REST
POST https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections?privateConnectionId=PRIVATE_CONNECTIVITY_CONFIGURATION_ID { "displayName": "DISPLAY_NAME", "pscInterfaceConfig": { "networkAttachment": "NETWORK_ATTACHMENT_NAME" } }
例如:
POST https://datastream.googleapis.com/v1/projects/myProjectId/locations/ us-central1/privateConnections?privateConnectionId=myPrivateConnection { "displayName": "my-private-connection", "pscInterfaceConfig": { "networkAttachment": "projects/my-project/regions/us-central1/networkAttachments/my-na" } }
gcloud
gcloud datastream private-connections create PRIVATE_CONNECTION_NAME --location=LOCATION--display-name=DISPLAY_NAME --network-attachment=NETWORK_ATTACHMENT_NAME
例如:
gcloud datastream private-connections create my-private-connection --location=us-central1--display-name=my-private-connection --network-attachment=my-network-attachment
取得私人連線設定的相關資訊
下列程式碼顯示擷取已建立私人連線設定相關資訊的要求。
REST
GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections/PRIVATE_CONNECTIVITY_CONFIGURATION_ID
例如:
GET https://datastream.googleapis.com/v1/projects/myProjectId/locations/ us-central1/privateConnections/myPrivateConnection
gcloud
如要進一步瞭解如何使用 gcloud
擷取私人連線設定的相關資訊,請參閱 Google Cloud SDK 說明文件。
列出私人連線設定
下列程式碼顯示擷取所有私人連線設定資訊的要求。
REST
GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections
gcloud
如要進一步瞭解如何使用 gcloud
擷取所有私人連線設定的相關資訊,請參閱 Google Cloud SDK 說明文件。
刪除私人連線設定
下列程式碼顯示刪除私人連線設定的要求。刪除設定後,使用該設定的任何連線設定檔都無法運作。此外,使用這些連線設定檔的串流將無法運作。
如要解決這個問題,請為每個連線設定檔指派不同的私人連線設定。詳情請參閱「更新連線設定檔」。
REST
DELETE https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections/[private-connectivity-configuration-id] {"force": true}
例如:
DELETE https://datastream.googleapis.com/v1/projects/myProjectId/locations/ us-central1/privateConnections/myPrivateConnection {"force": true}
gcloud
如要進一步瞭解如何使用 gcloud
刪除私人連線設定,請參閱 Google Cloud SDK 說明文件。
後續步驟
- 進一步瞭解私人連線。
- 瞭解其他可搭配 Datastream 使用的網路連線選項。
- 瞭解如何使用 Datastream API 管理連線設定檔。
- 瞭解如何使用 Datastream API 管理串流。
- 如要進一步瞭解如何使用 Datastream API,請參閱參考說明文件。