REST Resource: projects.locations.tcpRoutes

Resource: TcpRoute

TcpRoute adalah resource yang menentukan cara traffic TCP harus dirutekan oleh resource Mesh/Gateway.

Representasi JSON
{
  "name": string,
  "selfLink": string,
  "createTime": string,
  "updateTime": string,
  "description": string,
  "rules": [
    {
      object (RouteRule)
    }
  ],
  "meshes": [
    string
  ],
  "gateways": [
    string
  ],
  "labels": {
    string: string,
    ...
  }
}
Kolom
name

string

ID. Nama resource TcpRoute. Cocok dengan pola projects/*/locations/global/tcpRoutes/tcp_route_name>.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat resource dibuat.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat resource diperbarui.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

description

string

Opsional. Deskripsi teks bebas tentang resource. Panjang maksimum 1024 karakter.

rules[]

object (RouteRule)

Wajib. Aturan yang menentukan cara traffic dirutekan dan ditangani. Setidaknya satu RouteRule harus diberikan. Jika ada beberapa aturan, tindakan yang diambil adalah aturan pertama yang cocok.

meshes[]

string

Opsional. Mesh menentukan daftar mesh yang terlampir ke TcpRoute ini, sebagai salah satu aturan perutean untuk merutekan permintaan yang ditayangkan oleh mesh.

Setiap referensi mesh harus cocok dengan pola: projects/*/locations/global/meshes/<mesh_name>

Mesh terlampir harus berjenis SIDECAR

gateways[]

string

Opsional. Gateway menentukan daftar gateway yang terhubung ke TcpRoute ini, sebagai salah satu aturan pemilihan rute untuk merutekan permintaan yang ditayangkan oleh gateway.

Setiap referensi gateway harus cocok dengan pola: projects/*/locations/global/gateways/<gateway_name>

labels

map (key: string, value: string)

Opsional. Kumpulan tag label yang terkait dengan resource TcpRoute.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

RouteRule

Menentukan cara mencocokkan traffic dan cara merutekan traffic saat traffic dicocokkan.

Representasi JSON
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
Kolom
matches[]

object (RouteMatch)

Opsional. RouteMatch menentukan predikat yang digunakan untuk mencocokkan permintaan dengan tindakan tertentu. Beberapa jenis pencocokan di-"OR"-kan untuk evaluasi. Jika tidak ada kolom routeMatch yang ditentukan, aturan ini akan mencocokkan traffic tanpa syarat.

action

object (RouteAction)

Wajib. Aturan mendetail yang menentukan cara merutekan traffic yang cocok.

RouteMatch

RouteMatch menentukan predikat yang digunakan untuk mencocokkan permintaan dengan tindakan tertentu. Beberapa jenis pencocokan di-"OR"-kan untuk evaluasi. Jika tidak ada kolom routeMatch yang ditentukan, aturan ini akan mencocokkan traffic tanpa syarat.

Representasi JSON
{
  "address": string,
  "port": string
}
Kolom
address

string

Wajib. Harus ditentukan dalam format rentang CIDR. Rentang CIDR terdiri dari Alamat IP dan panjang awalan untuk membuat subnet mask. Secara default, panjang awalan adalah 32 (yaitu cocok dengan satu alamat IP). Hanya alamat IPV4 yang didukung. Contoh: "10.0.0.1" - cocok dengan alamat IP ini. "10.0.0.0/8" - cocok dengan alamat IP apa pun dalam subnet 10.0.0.0 dan mask 255.255.255.0. "0.0.0.0/0" - cocok dengan alamat IP apa pun.

port

string

Wajib. Menentukan port tujuan yang akan dicocokkan.

RouteAction

Spesifikasi untuk merutekan traffic dan menerapkan kebijakan terkait.

Representasi JSON
{
  "destinations": [
    {
      object (RouteDestination)
    }
  ],
  "originalDestination": boolean,
  "idleTimeout": string
}
Kolom
destinations[]

object (RouteDestination)

Opsional. Layanan tujuan yang menjadi tujuan penerusan traffic. Setidaknya diperlukan satu layanan tujuan. Hanya satu tujuan rute atau tujuan awal yang dapat ditetapkan.

originalDestination

boolean

Opsional. Jika benar, Router akan menggunakan IP dan port tujuan dari koneksi asli sebagai tujuan permintaan. Defaultnya adalah "false". Hanya satu tujuan rute atau tujuan awal yang dapat ditetapkan.

idleTimeout

string (Duration format)

Opsional. Menentukan waktu tunggu tidak ada aktivitas untuk rute yang dipilih. Waktu tunggu tidak ada aktivitas ditentukan sebagai periode saat tidak ada byte yang dikirim atau diterima pada koneksi upstream atau downstream. Jika tidak disetel, waktu tunggu tidak ada aktivitas default adalah 30 detik. Jika disetel ke 0 detik, waktu tunggu akan dinonaktifkan.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

RouteDestination

Jelaskan tujuan traffic yang akan dirutekan.

Representasi JSON
{
  "serviceName": string,
  "weight": integer
}
Kolom
serviceName

string

Wajib. URL BackendService untuk merutekan traffic.

weight

integer

Opsional. Menentukan proporsi permintaan yang diteruskan ke backend yang dirujuk oleh kolom serviceName. Nilai ini dihitung sebagai: - bobot/Jumlah(bobot dalam daftar tujuan ini). Untuk nilai bukan nol, mungkin ada beberapa epsilon dari proporsi persis yang ditentukan di sini, bergantung pada presisi yang didukung implementasi.

Jika hanya satu serviceName yang ditentukan dan memiliki bobot lebih besar dari 0, 100% traffic diteruskan ke backend tersebut.

Jika bobot ditentukan untuk salah satu nama layanan, bobot tersebut harus ditentukan untuk semua nama layanan.

Jika bobot tidak ditentukan untuk semua layanan, traffic akan didistribusikan dalam proporsi yang sama ke semua layanan tersebut.

Metode

create

Membuat TcpRoute baru di project dan lokasi tertentu.

delete

Menghapus satu TcpRoute.

get

Mendapatkan detail satu TcpRoute.

getIamPolicy

Mendapatkan kebijakan kontrol akses untuk resource.

list

Mencantumkan TcpRoute dalam project dan lokasi tertentu.

patch

Memperbarui parameter TcpRoute tunggal.

setIamPolicy

Menetapkan kebijakan kontrol akses pada resource yang ditentukan.

testIamPermissions

Menampilkan izin yang dimiliki pemanggil pada resource tertentu.