本頁面說明如何設定 Service Directory 命名空間、將服務新增至命名空間,以及將端點新增至服務。執行本頁的指令之前,請先熟悉 Service Directory 總覽和 Service Directory 相關的重要詞彙概念。
設定專案
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Service Directory API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Service Directory API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
設定 Service Directory 資源
設定命名空間
為所選地區建立專案的命名空間。此地區不需要所有服務和端點的位置,但請盡可能關閉。您可以在任何 Service Directory 地區註冊服務;仍然可供全球解析。 專案可以在一個地區內有多個命名空間,而多個地區可以有命名空間。單一命名空間無法跨越地區。
主控台
- 前往 Google Cloud Console 的 Service Directory 命名空間頁面。
前往 Service Directory 命名空間頁面 - 按一下 [Create namespace] (建立命名空間)。
- 在「Region」(地區) 下拉式選單中,為您的命名空間選擇地區。
- 在 [Namespace name] (命名空間名稱) 欄位中,為命名空間命名。
- 按一下 [建立]。
gcloud
如要在指令列使用 Service Directory,請先安裝或升級至最新版 Cloud SDK。
建立命名空間
gcloud service-directory namespaces create NAMESPACE \ --location REGION
更改下列內容:
NAMESPACE
:您要建立的命名空間名稱。REGION
:包含命名空間的 Google Cloud 地區。
(選用):在命名空間上設定 IAM 政策。這會授予指定使用者或群組為這個命名空間指定角色,以及屬於命名空間的所有服務。
gcloud service-directory namespaces add-iam-policy-binding NAMESPACE \ --member user:someone@example.com \ --role ROLE \ --location REGION
更改下列內容:
NAMESPACE
:您建立的命名空間名稱。ROLE
:您授予的角色。REGION
:包含命名空間的 Google Cloud 地區。
C#
如要執行此程式碼,請先設定 C# 開發環境並安裝 Service Directory C# SDK。
Go
如要執行這個程式碼,請先設定 Go 開發環境並安裝 Service Directory Go SDK。
Java
如要執行此程式碼,請先設定 Java 開發環境,並安裝 Service Directory Java SDK。
Node.js
如要執行此程式碼,請先設定 Node.js 開發環境並安裝 Service Directory Node.js SDK。
PHP
如要執行這個程式碼,請先設定 PHP 開發環境,並安裝 Service Directory PHP SDK。
Python
如要執行這個程式碼,請先設定 Python 開發環境,然後安裝 Service Directory Python SDK。
Ruby
如要執行此程式碼,請先設定 Ruby 開發環境,並安裝 Service Directory Ruby SDK。
設定服務
在命名空間中建立服務。服務是由名稱與服務相關的中繼資料組成。服務名稱的格式有幾項限制:
- 命名空間中的服務名稱不得重複。
- 服務名稱必須遵循 DNS 標籤命名慣例。
主控台
- 前往 Google Cloud Console 的 Service Directory 命名空間頁面。
前往 Service Directory 命名空間頁面 - 按一下命名空間。
- 按一下 [新增服務]。
- 輸入服務名稱。
- 選用:如要將中繼資料新增至服務,請按照下列步驟操作:
- 按一下 [服務中繼資料]。
- 按一下 [新增中繼資料]。
- 新增 [鍵] 和 [值]。
- 如要新增其他中繼資料配對,請再次點選 [新增中繼資料]。
- 按一下 [建立]。
gcloud
如要在指令列使用 Service Directory,請先安裝或升級至最新版 Cloud SDK。
在命名空間中建立服務。
gcloud service-directory services create SERVICE \ --metadata KEY_1=VALUE_1,KEY_2=VALUE_2 \ --namespace NAMESPACE \ --location REGION
更改下列內容:
SERVICE
:您要建立的服務名稱。NAMESPACE
:您提供命名空間給服務的名稱。REGION
:包含命名空間的 Google Cloud 地區。KEY_1
、VALUE_1
、KEY_2
、VALUE_2
:成對鍵和鍵/值組合字串。
(選用):設定服務上的 IAM 政策。這會將指定使用者或群組指派給這項服務,以及屬於該服務的所有端點。
gcloud service-directory services add-iam-policy-binding SERVICE \ --member user:someone@example.com \ --role ROLE \ --namespace NAMESPACE \ --location REGION
更改下列內容:
SERVICE
:您提供的名稱。NAMESPACE
:您建立的命名空間名稱。ROLE
:您要授予的角色。REGION
:包含命名空間的 Google Cloud 地區。
C#
如要執行此程式碼,請先設定 C# 開發環境,然後安裝 Service Directory C# SDK。
Go
如要執行這個程式碼,請先設定 Go 開發環境,然後安裝 Service Directory Go SDK。
Java
如要執行此程式碼,請先設定 Java 開發環境,並安裝 Service Directory Java SDK。
Node.js
如要執行此程式碼,請先設定 Node.js 開發環境並安裝 Service Directory Node.js SDK。
PHP
如要執行這個程式碼,請先設定 PHP 開發環境,並安裝 Service Directory PHP SDK。
Python
如要執行這個程式碼,請先設定 Python 開發環境,然後安裝 Service Directory Python SDK。
Ruby
如要執行此程式碼,請先設定 Ruby 開發環境,並安裝 Service Directory Ruby SDK。
設定端點
服務註冊之後,請新增一些端點。端點由唯一的名稱及欄位、通訊埠和鍵/值中繼資料的選用欄位組成。指定的位址必須是有效的 IPv4 或 IPv6 位址。
主控台
- 前往 Google Cloud Console 的 Service Directory 命名空間頁面。
前往 Service Directory 命名空間頁面 - 按一下命名空間。
- 按一下所需服務。
- 按一下 [Add endpoint] (新增端點)。
- 提供「Endpoint name」(端點名稱)。
- 輸入 IPv4 或 IPv6 IP 位址。
- 輸入「Port」(通訊埠) 號碼。
- 選用。如要將中繼資料新增至端點,請執行以下操作:
- 按一下 [端點中繼資料]。
- 按一下 [新增中繼資料]。
- 新增 [鍵] 和 [值]。
- 如要新增其他中繼資料配對,請再次點選 [新增中繼資料]。
- 按一下 [建立]。
gcloud
如要在指令列使用 Service Directory,請先安裝或升級至最新版 Cloud SDK。
服務註冊之後,請新增一些端點。
gcloud service-directory endpoints create ENDPOINT \ --address IP_ADDRESS \ --port PORT_NUMBER \ --metadata KEY_1=VALUE_1,KEY_2=VALUE_2 \ --service SERVICE \ --namespace NAMESPACE \ --location REGION
gcloud service-directory endpoints create ENDPOINT2 \ --address IP_ADDRESS2 \ --port PORT_NUMBER2 \ --service SERVICE \ --namespace NAMESPACE \ --location REGION
替換下列值:
ENDPOINT
和ENDPOINT2
:您在服務中建立的端點名稱。IP_ADDRESS
和IP_ADDRESS2
:個別端點的 IPv6 和 IPv4 位址。PORT_NUMBER
和PORT_NUMBER2
:執行端點的通訊埠。SERVICE
:您要建立的服務名稱。NAMESPACE
:您提供命名空間給服務的名稱。REGION
:包含命名空間的 Google Cloud 地區。KEY_1
,VALUE_1
,KEY_2
,VALUE_2
:配對鍵和值字串。
C#
如要執行此程式碼,請先設定 C# 開發環境,然後安裝 Service Directory C# SDK。
Go
如要執行這個程式碼,請先設定 Go 開發環境,然後安裝 Service Directory Go SDK。
Java
如要執行此程式碼,請先設定 Java 開發環境,並安裝 Service Directory Java SDK。
Node.js
如要執行此程式碼,請先設定 Node.js 開發環境並安裝 Service Directory Node.js SDK。
PHP
如要執行這個程式碼,請先設定 PHP 開發環境,並安裝 Service Directory PHP SDK。
Python
如要執行這個程式碼,請先設定 Python 開發環境,然後安裝 Service Directory Python SDK。
Ruby
如要執行此程式碼,請先設定 Ruby 開發環境,並安裝 Service Directory Ruby SDK。
解析服務
Service Directory 可讓用戶端使用 DNS、HTTP 和 gRPC 解析服務。解析服務會傳回服務的所有屬性,以及所有端點和中繼資料。
gcloud
如要在指令列使用 Service Directory,請先安裝或升級至最新版 Cloud SDK。
gcloud service-directory services resolve SERVICE \ --namespace NAMESPACE \ --location REGION
更改下列內容:
SERVICE
:您要建立的服務名稱。NAMESPACE
:您提供名稱給包含該服務的命名空間的名稱。REGION
:包含命名空間的 Google Cloud 地區。
C#
如要執行此程式碼,請先設定 C# 開發環境,然後安裝 Service Directory C# SDK。
Go
如要執行這個程式碼,請先設定 Go 開發環境,然後安裝 Service Directory Go SDK。
Java
如要執行此程式碼,請先設定 Java 開發環境,並安裝 Service Directory Java SDK。
Node.js
如要執行此程式碼,請先設定 Node.js 開發環境並安裝 Service Directory Node.js SDK。
PHP
如要執行這個程式碼,請先設定 PHP 開發環境,並安裝 Service Directory PHP SDK。
Python
如要執行這個程式碼,請先設定 Python 開發環境,然後安裝 Service Directory Python SDK。
Ruby
如要執行此程式碼,請先設定 Ruby 開發環境,並安裝 Service Directory Ruby SDK。
刪除資源
從服務中刪除端點
主控台
- 前往 Google Cloud Console 的 Service Directory 命名空間頁面。
前往 Service Directory 命名空間頁面 - 按一下您要從中刪除端點的命名空間。
- 按一下您要從中刪除端點的服務。
- 找出您要刪除的端點,然後勾選旁邊的核取方塊。
- 按一下 [刪除]。
- 按一下確認對話方塊中的 [刪除]。
gcloud
如要在指令列使用 Service Directory,請先安裝或升級至最新版 Cloud SDK。
gcloud service-directory endpoints delete ENDPOINT \ --service=SERVICE \ --namespace=NAMESPACE \ --location=REGION
更改下列內容:
SERVICE
:您要建立的服務名稱。NAMESPACE
:您提供命名空間給服務的名稱。REGION
:包含命名空間的 Google Cloud 地區。
C#
如要執行此程式碼,請先設定 C# 開發環境,然後安裝 Service Directory C# SDK。
Go
如要執行這個程式碼,請先設定 Go 開發環境,然後安裝 Service Directory Go SDK。
Java
如要執行此程式碼,請先設定 Java 開發環境,並安裝 Service Directory Java SDK。
Node.js
如要執行此程式碼,請先設定 Node.js 開發環境並安裝 Service Directory Node.js SDK。
PHP
如要執行這個程式碼,請先設定 PHP 開發環境,並安裝 Service Directory PHP SDK。
Python
如要執行這個程式碼,請先設定 Python 開發環境,然後安裝 Service Directory Python SDK。
Ruby
如要執行此程式碼,請先設定 Ruby 開發環境,並安裝 Service Directory Ruby SDK。
刪除命名空間中的服務
您可以刪除具有端點的服務。刪除服務時,系統會一併刪除其所有端點。
您可以刪除已指向該服務的 Service Directory 區域服務。該服務的其他 DNS 查詢會傳回 NXDOMAIN
。
主控台
- 前往 Google Cloud Console 的 Service Directory 命名空間頁面。
前往 Service Directory 命名空間頁面 - 按一下您要從中刪除服務的命名空間。
- 找出您要刪除的服務,然後按一下該服務旁的核取方塊。
- 按一下 [刪除]。
- 再按一下確認對話方塊中的 [刪除]。
gcloud
如要在指令列使用 Service Directory,請先安裝或升級至最新版 Cloud SDK。
gcloud service-directory services delete SERVICE \ --namespace=NAMESPACE \ --location=REGION
更改下列內容:
SERVICE
:您要建立的服務名稱。NAMESPACE
:您提供命名空間給服務的名稱。REGION
:包含命名空間的 Google Cloud 地區。
C#
如要執行此程式碼,請先設定 C# 開發環境,然後安裝 Service Directory C# SDK。
Go
如要執行這個程式碼,請先設定 Go 開發環境,然後安裝 Service Directory Go SDK。
Java
如要執行此程式碼,請先設定 Java 開發環境,並安裝 Service Directory Java SDK。
Node.js
如要執行此程式碼,請先設定 Node.js 開發環境並安裝 Service Directory Node.js SDK。
PHP
如要執行這個程式碼,請先設定 PHP 開發環境,並安裝 Service Directory PHP SDK。
Python
如要執行這個程式碼,請先設定 Python 開發環境,然後安裝 Service Directory Python SDK。
Ruby
如要執行此程式碼,請先設定 Ruby 開發環境,並安裝 Service Directory Ruby SDK。
刪除命名空間
您可以刪除含有服務和端點的命名空間。當您刪除命名空間時,也會一併刪除其所有服務和端點。
您可以刪除指向其 Service Directory 區域的命名空間。任何其他 DNS 查詢 (不包括區域來源的 SOA/NS 要求) 會傳回 NXDOMAIN
。
主控台
- 前往 Google Cloud Console 的 Service Directory 命名空間頁面。
前往 Service Directory 命名空間頁面 - 找出您要刪除的命名空間,然後按一下名稱旁的核取方塊。
- 按一下 [刪除]。
- 再按一下確認對話方塊中的 [刪除]。
gcloud
如要在指令列使用 Service Directory,請先安裝或升級至最新版 Cloud SDK。
gcloud service-directory namespaces delete NAMESPACE \ --location=REGION
更改下列內容:
NAMESPACE
:您提供命名空間給服務的名稱。REGION
:包含命名空間的 Google Cloud 地區。
C#
如要執行此程式碼,請先設定 C# 開發環境,然後安裝 Service Directory C# SDK。
Go
如要執行這個程式碼,請先設定 Go 開發環境,然後安裝 Service Directory Go SDK。
Java
如要執行此程式碼,請先設定 Java 開發環境,並安裝 Service Directory Java SDK。
Node.js
如要執行此程式碼,請先設定 Node.js 開發環境並安裝 Service Directory Node.js SDK。
PHP
如要執行這個程式碼,請先設定 PHP 開發環境,並安裝 Service Directory PHP SDK。
Python
如要執行這個程式碼,請先設定 Python 開發環境,然後安裝 Service Directory Python SDK。
Ruby
如要執行此程式碼,請先設定 Ruby 開發環境,並安裝 Service Directory Ruby SDK。
後續步驟
- 如要設定 Service Directory 區域,以便使用 DNS 查詢服務,請參閱服務目錄區域一文。
- 如需 Service Directory 的總覽,請參閱 Service Directory 總覽。
- 如要查看使用 Service Directory 時可能遇到的常見問題,請參閱疑難排解一文。