Berbagai sumber daya jaringan virtual mendukungan tag untuk digunakan oleh sistem eksternal atau klien lainnya dari Networking service API.
Sumber daya saat ini didukung adalah:
Kasus penggunaan (use case) berikut mengacu pada penambahan tag ke jaringan, tetapi hal yang sama dapat berlaku untuk setiap sumber daya layanan Networking yang didukung lainnya:
API mengizinkan searching/filtering dari GET /v2.0/networks
API. Parameter permintaan berikut ini didukung:
tags
tags-any
not-tags
not-tags-any
Untuk meminta daftar jaringan yang memiliki tag tunggal, argumen tags
harus ditetapkan dengan nama tag yang diinginkan. Contoh:
GET /v2.0/networks?tags=red
Untuk meminta daftar jaringan yang memiliki dua atau lebih tag, argumen tags
harus ditetapkan ke daftar tag, dipisahkan dengan koma. Dalam hal ini, tag yang diberikan harus semua hadir untuk jaringan untuk dimasukkan dalam hasil query. Contoh argumen mengembalikan jaringan yang memiliki tag “red” and “blue”:
GET /v2.0/networks?tags=red,blue
Untuk meminta daftar jaringan yang memiliki satu atau lebih dari daftar tag yang diberikan, argumen tag-any
harus ditetapkan ke daftar tag, dipisahkan dengan koma. Dalam hal ini, selama salah satu tag yang diberikan hadir, jaringan akan dimasukkan dalam hasil query. Contoh argumen mengembalikan jaringan yang memiliki tag “red” atau “blue”
GET /v2.0/networks?tags-any=red,blue
Untuk meminta daftar jaringan yang tidak memiliki satu atau lebih tag, argumen not-tags
harus ditetapkan ke daftar tag, dipisahkan dengan koma. Dalam hal ini, hanya jaringan yang tidak memiliki tag yang diberikan akan dimasukkan dalam hasil query. Contoh argumen mengembalikan jaringan yang tidak memiliki tag “merah” ataupun “biru”
GET /v2.0/networks?not-tags=red,blue
Untuk meminta daftar jaringan yang tidak memiliki setidaknya satu dari daftar tag, argumen not-tags-any
harus ditetapkan ke daftar tag, dipisahkan dengan koma. Dalam hal ini, hanya jaringan yang tidak memiliki setidaknya salah satu tag yang diberikan akan dimasukkan dalam hasil query. argumen yang mengembalikan jaringan yang tidak memiliki tag “merah”, atau tidak memiliki tag “biru”
GET /v2.0/networks?not-tags-any=red,blue
Argumen tags
, tags-any
, not-tags
, dan not-tags-any
dapat dikombinasikan untuk membangun query yang lebih kompleks. Contoh:
GET /v2.0/networks?tags=red,blue&tags-any=green,orange
Contoh di atas mengembalikan setiap jaringan yang memiliki tag “red” dan “blue”, ditambah setidaknya satu dari “green” dan “orange”.
Query yang kompleks mungkin memiliki parameter bertentangan. Contoh:
GET /v2.0/networks?tags=blue¬-tags=blue
Dalam hal ini, kita harus membiarkan layanan Networking menemukan jaringan ini. Jelas, tidak ada jaringan tersebut dan layanan akan kembali daftar kosong.
Tambahkan tag ke sumber daya:
$ neutron tag-add --resource-type network --resource ab442634-1cc9-49e5-bd49-0dac9c811f69 --tag red
$ neutron net-show net
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | |
| id | ab442634-1cc9-49e5-bd49-0dac9c811f69 |
| ipv4_address_scope | |
| ipv6_address_scope | |
| mtu | 1450 |
| name | net |
| port_security_enabled | True |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | red |
| tenant_id | e6710680bfd14555891f265644e1dd5c |
+-------------------------+--------------------------------------+
Hapus tag dari sumber daya:
$ neutron tag-remove --resource-type network --resource ab442634-1cc9-49e5-bd49-0dac9c811f69 --tag red
$ neutron net-show net
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | |
| id | ab442634-1cc9-49e5-bd49-0dac9c811f69 |
| ipv4_address_scope | |
| ipv6_address_scope | |
| mtu | 1450 |
| name | net |
| port_security_enabled | True |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | |
| tenant_id | e6710680bfd14555891f265644e1dd5c |
+-------------------------+--------------------------------------+
Ganti semua tag pada sumber daya:
$ neutron tag-replace --resource-type network --resource ab442634-1cc9-49e5-bd49-0dac9c811f69 --tag red --tag blue
$ neutron net-show net
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | |
| id | ab442634-1cc9-49e5-bd49-0dac9c811f69 |
| ipv4_address_scope | |
| ipv6_address_scope | |
| mtu | 1450 |
| name | net |
| port_security_enabled | True |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | red |
| | blue |
| tenant_id | e6710680bfd14555891f265644e1dd5c |
+-------------------------+--------------------------------------+
Hapus tag dari sumber daya:
$ neutron tag-remove --resource-type network --resource ab442634-1cc9-49e5-bd49-0dac9c811f69 --all
$ neutron net-show net
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | |
| id | ab442634-1cc9-49e5-bd49-0dac9c811f69 |
| ipv4_address_scope | |
| ipv6_address_scope | |
| mtu | 1450 |
| name | net |
| port_security_enabled | True |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | |
| tenant_id | e6710680bfd14555891f265644e1dd5c |
+-------------------------+--------------------------------------+
Dapatkan daftar sumber daya dengan filter tag dari jaringan. Jaringan menjadi are: test-net1 dengan tag “red”, test-net2 dengan tag “red” and “blue”, test-net3 dengan tag “red”, “blue”, dan “green”, dan test-net4 dengan tag “green”.
Dapatkan daftar sumber daya dengan penyaring tags
:
$ neutron net-list --tags red,blue
+--------------------------------------+-----------+---------+
| id | name | subnets |
+--------------------------------------+-----------+---------+
| 8ca3b9ed-f578-45fa-8c44-c53f13aec05a | test-net3 | |
| e736e63d-42e4-4f4c-836c-6ad286ffd68a | test-net2 | |
+--------------------------------------+-----------+---------+
Dapatkan daftar sumber daya dengan penyaring tag-any
:
$ neutron net-list --tags-any red,blue
+--------------------------------------+-----------+---------+
| id | name | subnets |
+--------------------------------------+-----------+---------+
| 30491224-3855-431f-a688-fb29df004d82 | test-net1 | |
| 8ca3b9ed-f578-45fa-8c44-c53f13aec05a | test-net3 | |
| e736e63d-42e4-4f4c-836c-6ad286ffd68a | test-net2 | |
+--------------------------------------+-----------+---------+
Dapatkan daftar sumber daya dengan penyaring not-tags`
:
$ neutron net-list --not-tags red,blue
+--------------------------------------+-----------+---------+
| id | name | subnets |
+--------------------------------------+-----------+---------+
| 30491224-3855-431f-a688-fb29df004d82 | test-net1 | |
| cdb3ed08-ca63-4090-ba12-30b366372993 | test-net4 | |
+--------------------------------------+-----------+---------+
Dapatkan daftar sumber daya dengan penyaring not-tags-any
:
$ neutron net-list --not-tags-any red,blue
+--------------------------------------+-----------+---------+
| id | name | subnets |
+--------------------------------------+-----------+---------+
| cdb3ed08-ca63-4090-ba12-30b366372993 | test-net4 | |
+--------------------------------------+-----------+---------+
Penyaringan sumber dengan tag yang namanya mengandung koma tidak didukung. Dengan demikian, tidak menempatkan seperti nama tag ke sumber daya.
Dalam rilis mendatang, layanan Networking dapat mendukung pengaturan tag untuk sumber daya tambahan.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.