Go以Google API Client Libraries來建立GCP Interconnect Cloud Router。
事前要求
參考「GCP 設定本機應用程式存取憑證 Application Default Credentials」設定credential。
下載API modules
在專案根目錄執行以下命令下載需要的google-api-go-client
modules。
建立Cloud Router
呼叫compute.RouterService.Insert
輸入project id、region、compute.Router
參數來建立Cloud Router。
compute.Router
參數屬性如下:
compute.Router.Name
- 輸入cloud router的名稱。compute.Router.Network
- 輸入套用的VPC的uri(full resource name)。compute.Router.BGP
- 輸入compute.RouterBgp
:AdvertiseMode
- 輸入BGP advertisement mode,這邊為DEFAULT
。Asn
- ASN號碼,預設為16550
。
main.go
package main
import (
"context"
compute "google.golang.org/api/compute/v1"
)
func main() {
ctx := context.Background()
service, err := compute.NewService(ctx)
if err != nil {
panic(err)
}
routersService := compute.NewRoutersService(service)
projectId := "project-id-1"
region := "asia-east1"
router := &compute.Router{
Name: "demo-cloudrouter-002",
Network: "projects/project-id-1/global/networks/demo-vpc-001",
Bgp: &compute.RouterBgp{
AdvertiseMode: "DEFAULT",
Asn: int64(16550),
},
}
call := routersService.Insert(projectId, region, router)
_, err = call.Do()
if err != nil {
panic(err)
}
}
測試
執行Go應用程式後,在GCP console查看新建的Cloud router如下。
沒有留言:
張貼留言