Tungsten Fabric解決方案指南-Kubernetes整合
1 Kubernetes與 TF的整合
整合方案中,在Kubernetes和Tungsten Fabric( 編者按:原文為Contrail,其開源版已更名為Tungsten Fabric,本文出現Contrail之處均以Tungsten Fabric替換 )之間有兩個連線。
-
contrail-kube-manager和kube-api-server
-
Contrail CNI
1.2 Contrail CNI
[KUBERNETES_VNC]public_fip_pool = {'domain': 'default-domain', 'project': 'default', 'network': 'public', 'name': 'public-fip-pool'}
[VNC]public_fip_pool = {'domain': 'default-domain', 'project': 'default', 'network': 'public', 'name': 'public-fip-pool'}
2 Namespace
與Tungsten Fabric整合時,Kubernetes名稱空間(namespace)可以對映到專案/租戶(project/tenant)或虛擬網路。
[KUBERNETES]cluster_project = {'domain': 'default-domain', 'project': 'kubernetes'}
-
Flat IPAM <cluster_project>:具有子網的pod-ipam
-
IPAM <cluster_project>:service-ipam
-
虛擬網路“cluster-network”的安全組k8s-default-default-default和k8s-default-default-sg
-
虛擬網路<cluster_project>:具有pod-ipam和service-ipam的cluster-network
apiVersion: v1kind: Namespacemetadata: name: "dev-unisolated"
apiVersion: v1kind: Podmetadata: name: nginx-1spec: containers: - name: nginx image: docker.io/nginx imagePullPolicy: IfNotPresentkubectl create -f nginx-1.yaml -n <namespace>kubectl get pods -n <namespace>
-
建立虛擬機器<NS name>-<pod name>__<VM UUID>。
-
在啟動Pod的虛擬路由器中,新增對VM的引用。
-
參考以下內容,建立VMI <cluster_project>:<pod name>__<VMI UUID>。
-
SG k8s-default-<NS name>-default
-
SG k8s-default-<NS name>-sg
-
VN <cluster_project>:cluster-network
-
在VN cluster-network中從pod-ipam分配IP地址(cluster IP)。Subnet UUID被指定為從Flat IPAM pod-ipam進行分配。
apiVersion: v1kind: Namespacemetadata: name: "dev-isolated" annotations: { "opencontrail.org/isolation" : "true" }
-
虛擬網路<cluster_project>:<namespace name>-vn
-
安全組k8s-default-<namespace name>-default和k8s-default-<namespace name>-sg
-
建立虛擬機器<NS name>-<pod name>__<VM UUID>。
-
在啟動了Pod的虛擬路由器中,新增對VM的引用。
-
參考以下內容,建立VMI <cluster_project>:<pod name>__<VMI UUID>。
-
SG k8s-default-<NS name>-default
-
SG k8s-default-<NS name>-sg
-
VN <cluster_project>:<NS name>-vn
-
在VN <NS name>-vn中從pod-ipam分配IP地址(cluster IP)。Subnet UUID被指定為從flat IPAM pod-ipam進行分配。
-
為每個現有的Kubenetes名稱空間(如default、kube-public和kube-system)提供一個專案/租戶。
-
Flat IPAM 預設域:default:pod-ipam
-
IPAM 預設域:default:service-ipam
-
每一個名稱空間的安全組:k8s-default-<namespace>-sg和k8s-default-<namespace>-sg
-
虛擬網路預設域名:具有pod-ipam的default:cluster-network和service-ipam
apiVersion: v1kind: Namespacemetadata: name: "dev-unisolated"
-
專案default-domain:<namespace>
-
在專案預設域:<namespace>
-
在虛擬網路預設域:default:cluster-network
-
從IPAM預設域:default:pod-ipam獲取地址
-
附帶安全組k8s-default-default-default和k8s-default-default-sg
apiVersion: v1kind: Namespacemetadata: name: "dev-isolated" annotations: { "opencontrail.org/isolation" : "true" }
-
專案預設域:<namespace>
-
虛擬網路default-domain:<namespace>:<namespace>-vn與default-domain:default:pod-ipam關聯。
-
安全組 default-domain:<namespace>:k8s-default-<namespace>-default和default-domain:<namespace>:k8s-default-<namespace>-sg
-
在專案default-domain:<namespace>中
-
在虛擬網路default-domain:<namespace>:<namespace>-vn上
-
從IPAM default-domain:default:pod-ipam獲取地址
-
附帶安全組default-domain:<namespace>:k8s-default-<namespace>-default和default-domain:<namespace>:k8s-default-<namespace>-sg
apiVersion: v1kind: Namespacemetadata: name: "dev-customized" annotations: { "opencontrail.org/network": '{"domain": "default-domain", "project": "demo", "name": "red"}' }
-
在專案default-domain:default中
-
在虛擬網路上對映到自定義名稱空間
-
從與該虛擬網路關聯的IPAM上獲取地址
-
安全組?
-
在專案中對映到指定或預設的名稱空間
-
在指定的虛擬網路上
-
從與特定虛擬網路關聯的IPAM上獲取地址
-
安全組?
3 Service
apiVersion: v1kind: ReplicationControllermetadata: name: web-qaspec: replicas: 2 selector: app: web-qa template: metadata: name: web-qa labels: app: web-qa spec: containers: - name: web image: docker.io/nginx imagePullPolicy: IfNotPresent
kind: ServiceapiVersion: v1metadata: name: web-qaspec: selector: app: web-qa ports: - protocol: TCP port: 80 targetPort: 80
-
參照以下內容,建立LB VMI <cluster_project>:<service name>__<VMI UUID>。
-
SG k8s-default-<NS name>-default
-
SG k8s-default-<NS name>-sg
-
VN <cluster_project>:cluster-network
-
在VN cluster-network中從service-ipam分配LB IP地址(service IP)。不需要subnet UUID。
-
建立負載均衡器<cluster_project>:<service name>__<LB UUID>。
-
VIP是LB IP地址
-
VMI是LB VMI
-
提供者是“native”
-
建立浮動IP作為LB IP的子IP,地址相同,利用FIP支援埠NAT。
-
建立LB偵聽器<cluster_project>:<service name>__<LB UUID>-<protocol>-<port>-<LB listener UUID>
-
建立LB池<cluster_project>:<service name>__<LB UUID>-<protocol>-<port>-<LB listener UUID>
-
建立LB成員<cluster_project>:<pool>:<member UUID>
-
在FIP中設定埠對映。
-
將所有成員的VMI新增到FIP。
kind: ServiceapiVersion: v1metadata: name: web-qaspec: selector: app: web-qa ports: - protocol: TCP port: 80 targetPort: 80 type: LoadBalancer
附錄A 單租戶(Single-tenant)
{ "fq_name": [ "default-domain", "kubernetes", "pod-ipam" ], "uuid": "c9641741-c785-456e-845b-a14a253c3572", "ipam_subnet_method": "flat-subnet", "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "ipam_subnets": { "subnets": [ { "subnet": { "ip_prefix": "10.32.0.0", "ip_prefix_len": 12 }, "dns_server_address": "10.47.255.253", "enable_dhcp": true, "created": null, "default_gateway": "10.47.255.254", "dns_nameservers": [], "dhcp_option_list": null, "subnet_uuid": null, "alloc_unit": 1, "last_modified": null, "host_routes": null, "addr_from_start": null, "subnet_name": null, "allocation_pools": [] } ] }, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2017-12-27T18:45:33.957901", "uuid": { "uuid_mslong": 14511749470582293870, "uuid_lslong": 9537393975711511922 }, "user_visible": true, "last_modified": "2017-12-27T18:45:33.957901", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "display_name": "pod-ipam"}
{ "fq_name": [ "default-domain", "kubernetes", "service-ipam" ], "uuid": "526f554a-0bf4-47c6-a8e4-768a3f98cef4", "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2017-12-27T18:45:34.000690", "uuid": { "uuid_mslong": 5940060210041472966, "uuid_lslong": 12169982429206466292 }, "user_visible": true, "last_modified": "2017-12-27T18:45:34.000690", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "display_name": "service-ipam"}
{ "fq_name": [ "default-domain", "kubernetes", "k8s-default-dev-share-default" ], "uuid": "ad29de07-5ef6-4f55-86bb-52c44827c09d", "parent_type": "project", "perms2": { "owner": "46c31b9b-d21c-4c27-9445-6c94db948b6d", "owner_access": 7, "global_access": 0, "share": [] }, "security_group_id": 8000010, "id_perms": { "enable": true, "description": "Default security group", "creator": null, "created": "2018-01-12T09:02:15.110429", "uuid": { "uuid_mslong": 12477748365846007637, "uuid_lslong": 9708444424704868509 }, "user_visible": true, "last_modified": "2018-01-12T15:45:08.899388", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "security_group_entries": { "policy_rule": [ { "direction": ">", "protocol": "any", "dst_addresses": [ { "security_group": "local", "subnet": null, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "action_list": null, "created": null, "rule_uuid": "dc13bb48-e2a7-4c59-a0b8-740ecfcb9a2c", "dst_ports": [ { "end_port": 65535, "start_port": 0 } ], "application": [], "last_modified": null, "ethertype": "IPv4", "src_addresses": [ { "security_group": null, "subnet": { "ip_prefix": "0.0.0.0", "ip_prefix_len": 0 }, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "rule_sequence": null, "src_ports": [ { "end_port": 65535, "start_port": 0 } ] }, { "direction": ">", "protocol": "any", "dst_addresses": [ { "security_group": "local", "subnet": null, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "action_list": null, "created": null, "rule_uuid": "a84e2d98-2b8f-45ba-aa75-88494da73b11", "dst_ports": [ { "end_port": 65535, "start_port": 0 } ], "application": [], "last_modified": null, "ethertype": "IPv6", "src_addresses": [ { "security_group": null, "subnet": { "ip_prefix": "::", "ip_prefix_len": 0 }, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "rule_sequence": null, "src_ports": [ { "end_port": 65535, "start_port": 0 } ] }, { "direction": ">", "protocol": "any", "dst_addresses": [ { "security_group": null, "subnet": { "ip_prefix": "0.0.0.0", "ip_prefix_len": 0 }, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "action_list": null, "created": null, "rule_uuid": "b7752ec1-6037-4c7f-97a9-291893fbed64", "dst_ports": [ { "end_port": 65535, "start_port": 0 } ], "application": [], "last_modified": null, "ethertype": "IPv4", "src_addresses": [ { "security_group": "local", "subnet": null, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "rule_sequence": null, "src_ports": [ { "end_port": 65535, "start_port": 0 } ] }, { "direction": ">", "protocol": "any", "dst_addresses": [ { "security_group": null, "subnet": { "ip_prefix": "::", "ip_prefix_len": 0 }, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "action_list": null, "created": null, "rule_uuid": "ea5cd2a8-2d47-47c4-a9ab-390de2317246", "dst_ports": [ { "end_port": 65535, "start_port": 0 } ], "application": [], "last_modified": null, "ethertype": "IPv6", "src_addresses": [ { "security_group": "local", "subnet": null, "virtual_network": null, "subnet_list": [], "network_policy": null } ], "rule_sequence": null, "src_ports": [ { "end_port": 65535, "start_port": 0 } ] } ] }, "annotations": { "key_value_pair": [ { "key": "namespace", "value": "dev-share" }, { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Namespace" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "k8s-default-dev-share-default" }, { "key": "owner", "value": "k8s" } ] }, "display_name": "k8s-default-dev-share-default"}
{ "fq_name": [ "default-domain", "kubernetes", "k8s-default-dev-share-sg" ], "uuid": "791f1c7e-a66e-4c47-ba05-409f00ee2c8e", "parent_type": "project", "perms2": { "owner": "46c31b9b-d21c-4c27-9445-6c94db948b6d", "owner_access": 7, "global_access": 0, "share": [] }, "security_group_id": 8000017, "id_perms": { "enable": true, "description": "Namespace security group", "creator": null, "created": "2018-01-12T09:02:15.236401", "uuid": { "uuid_mslong": 8727725933151013959, "uuid_lslong": 13404190917597736078 }, "user_visible": true, "last_modified": "2018-01-12T09:02:15.275407", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "display_name": "k8s-default-dev-share-sg", "annotations": { "key_value_pair": [ { "key": "namespace", "value": "dev-share" }, { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Namespace" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "k8s-default-dev-share-sg" }, { "key": "owner", "value": "k8s" } ] }}
{ "virtual_network_properties": { "forwarding_mode": "l3", "allow_transit": null, "network_id": null, "mirror_destination": false, "vxlan_network_identifier": null, "rpf": null }, "fq_name": [ "default-domain", "kubernetes", "cluster-network" ], "uuid": "1b9f7f74-17f0-493a-9108-729f91b43598", "address_allocation_mode": "user-defined-subnet-only", "mac_aging_time": 300, "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "display_name": "cluster-network", "pbb_evpn_enable": false, "mac_learning_enabled": false, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2017-12-27T18:45:34.062865", "uuid": { "uuid_mslong": 1990449696915605818, "uuid_lslong": 10450728964983109016 }, "user_visible": true, "last_modified": "2017-12-29T10:29:20.685414", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "flood_unknown_unicast": false, "layer2_control_word": false, "port_security_enabled": true, "network_ipam_refs": [ { "to": [ "default-domain", "kubernetes", "service-ipam" ], "href": "{ "ipam_subnets": [ { "subnet": { "ip_prefix": "10.167.0.0", "ip_prefix_len": 16 }, "dns_server_address": "10.167.255.253", "enable_dhcp": true, "created": null, "default_gateway": "10.167.255.254", "dns_nameservers": [], "dhcp_option_list": null, "subnet_uuid": "10a8de65-9de8-419b-b14c-180bf2ab3dc9", "alloc_unit": 1, "last_modified": null, "host_routes": null, "addr_from_start": null, "subnet_name": null, "allocation_pools": [] } ], "host_routes": null }, "uuid": "526f554a-0bf4-47c6-a8e4-768a3f98cef4" }, { "to": [ "default-domain", "kubernetes", "pod-ipam" ], "href": "{ "ipam_subnets": [ { "subnet": null, "dns_server_address": null, "enable_dhcp": true, "created": null, "default_gateway": null, "dns_nameservers": [], "dhcp_option_list": null, "subnet_uuid": "d2b090ce-cbcc-4b00-b50a-cc1ed5468b00", "alloc_unit": 1, "last_modified": null, "host_routes": null, "addr_from_start": null, "subnet_name": null, "allocation_pools": [] } ], "host_routes": null }, "uuid": "c9641741-c785-456e-845b-a14a253c3572" } ], "pbb_etree_enable": false, "virtual_network_network_id": 5}
{ "virtual_network_properties": { "forwarding_mode": "l3", "allow_transit": null, "network_id": null, "mirror_destination": false, "vxlan_network_identifier": null, "rpf": null }, "fq_name": [ "default-domain", "kubernetes", "dev-vn" ], "uuid": "ce01826b-e3e6-407f-8798-80612018e89c", "address_allocation_mode": "flat-subnet-only", "mac_aging_time": 300, "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "display_name": "dev-vn", "pbb_evpn_enable": false, "mac_learning_enabled": false, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-09T11:40:06.196335", "uuid": { "uuid_mslong": 14844289246686494847, "uuid_lslong": 9770700546218977436 }, "user_visible": true, "last_modified": "2018-01-09T12:18:55.796399", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "flood_unknown_unicast": false, "layer2_control_word": false, "port_security_enabled": true, "network_ipam_refs": [ { "to": [ "default-domain", "kubernetes", "pod-ipam" ], "href": "{ "ipam_subnets": [ { "subnet": null, "dns_server_address": null, "enable_dhcp": true, "created": null, "default_gateway": null, "dns_nameservers": [], "dhcp_option_list": null, "subnet_uuid": "48ed8235-efcd-44a1-998c-659e4f5840f4", "alloc_unit": 1, "last_modified": null, "host_routes": null, "addr_from_start": null, "subnet_name": null, "allocation_pools": [] } ], "host_routes": null }, "uuid": "c9641741-c785-456e-845b-a14a253c3572" } ], "annotations": { "key_value_pair": [ { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Namespace" }, { "key": "namespace", "value": "dev" }, { "key": "isolated", "value": "True" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "dev" }, { "key": "owner", "value": "k8s" } ] }, "pbb_etree_enable": false, "virtual_network_network_id": 11}
{ "fq_name": [ "default-domain", "kubernetes", "dev-web-k528t__5a1fc03e-f7ab-11e7-8f66-52540065dced" ], "virtual_machine_interface_mac_addresses": { "mac_address": [ "02:5a:1f:c0:3e:f7" ] }, "display_name": "dev-share__dev-web-k528t", "security_group_refs": [ { "to": [ "default-domain", "kubernetes", "k8s-default-dev-share-default" ], "href": "http://127.0.0.1:8082/security-group/ad29de07-5ef6-4f55-86bb-52c44827c09d", "attr": null, "uuid": "ad29de07-5ef6-4f55-86bb-52c44827c09d" }, { "to": [ "default-domain", "kubernetes", "k8s-default-dev-share-sg" ], "href": "http://127.0.0.1:8082/security-group/791f1c7e-a66e-4c47-ba05-409f00ee2c8e", "attr": null, "uuid": "791f1c7e-a66e-4c47-ba05-409f00ee2c8e" } ], "routing_instance_refs": [ { "to": [ "default-domain", "kubernetes", "cluster-network", "cluster-network" ], "href": "{ "direction": "both", "protocol": null, "ipv6_service_chain_address": null, "dst_mac": null, "mpls_label": null, "vlan_tag": null, "src_mac": null, "service_chain_address": null }, "uuid": "5ed7608a-28bb-4735-a8d8-2e9132b03d62" } ], "virtual_machine_interface_disable_policy": false, "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "virtual_network_refs": [ { "to": [ "default-domain", "kubernetes", "cluster-network" ], "href": "} ], "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:14:58.189964", "uuid": { "uuid_mslong": 6494120564367233511, "uuid_lslong": 10333036915785587949 }, "user_visible": true, "last_modified": "2018-01-12T15:14:58.253769", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "virtual_machine_refs": [ { "to": [ "dev-web-k528t__708154c6-f7ab-11e7-a9df-98f2b3a36be0" ], "href": "} ], "vlan_tag_based_bridge_domain": false, "port_security_enabled": true, "annotations": { "key_value_pair": [ { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Pod" }, { "key": "namespace", "value": "dev-share" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "dev-web-k528t" }, { "key": "owner", "value": "k8s" } ] }, "uuid": "5a1fc03e-f7ab-11e7-8f66-52540065dced"}
{ "fq_name": [ "dev-web-k528t__5a2f9cde-f7ab-11e7-8f66-52540065dced" ], "uuid": "5a2f9cde-f7ab-11e7-8f66-52540065dced", "service_health_check_ip": false, "instance_ip_address": "10.47.255.251", "perms2": { "owner": "cloud-admin", "owner_access": 7, "global_access": 0, "share": [] }, "annotations": { "key_value_pair": [ { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Pod" }, { "key": "namespace", "value": "dev-share" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "dev-web-k528t" }, { "key": "owner", "value": "k8s" } ] }, "subnet_uuid": "d2b090ce-cbcc-4b00-b50a-cc1ed5468b00", "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:14:58.323069", "uuid": { "uuid_mslong": 6498585268770771431, "uuid_lslong": 10333036915785587949 }, "user_visible": true, "last_modified": "2018-01-12T15:14:58.363792", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "virtual_machine_interface_refs": [ { "to": [ "default-domain", "kubernetes", "dev-web-k528t__5a1fc03e-f7ab-11e7-8f66-52540065dced" ], "href": "} ], "service_instance_ip": false, "instance_ip_local_ip": false, "virtual_network_refs": [ { "to": [ "default-domain", "kubernetes", "cluster-network" ], "href": "} ], "instance_ip_secondary": false, "display_name": "dev-share__dev-web-k528t"}
{ "fq_name": [ "default-domain", "kubernetes", "dev-client__c64b3b12-f7b5-11e7-8f66-52540065dced" ], "virtual_machine_interface_mac_addresses": { "mac_address": [ "02:c6:4b:3b:12:f7" ] }, "display_name": "dev__dev-client", "security_group_refs": [ { "to": [ "default-domain", "kubernetes", "k8s-default-dev-sg" ], "href": "http://127.0.0.1:8082/security-group/579019d5-038e-4901-b6ab-ed146022dd70", "attr": null, "uuid": "579019d5-038e-4901-b6ab-ed146022dd70" }, { "to": [ "default-domain", "kubernetes", "k8s-default-dev-default" ], "href": "http://127.0.0.1:8082/security-group/e43caf6e-6b35-40c3-b336-83c155078efe", "attr": null, "uuid": "e43caf6e-6b35-40c3-b336-83c155078efe" } ], "routing_instance_refs": [ { "to": [ "default-domain", "kubernetes", "dev-vn", "dev-vn" ], "href": "{ "direction": "both", "protocol": null, "ipv6_service_chain_address": null, "dst_mac": null, "mpls_label": null, "vlan_tag": null, "src_mac": null, "service_chain_address": null }, "uuid": "45173786-a1b4-4c75-8ef0-590de67d2d05" } ], "virtual_machine_interface_disable_policy": false, "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "virtual_network_refs": [ { "to": [ "default-domain", "kubernetes", "dev-vn" ], "href": "} ], "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T16:29:34.640295", "uuid": { "uuid_mslong": 14288579195414319591, "uuid_lslong": 10333036915785587949 }, "user_visible": true, "last_modified": "2018-01-12T16:29:34.708511", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "virtual_machine_refs": [ { "to": [ "dev-client__c64878a1-f7b5-11e7-9dbb-98f2b3a33b90" ], "href": "} ], "vlan_tag_based_bridge_domain": false, "port_security_enabled": true, "annotations": { "key_value_pair": [ { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Pod" }, { "key": "namespace", "value": "dev" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "dev-client" }, { "key": "owner", "value": "k8s" } ] }, "uuid": "c64b3b12-f7b5-11e7-8f66-52540065dced"}{ "fq_name": [ "dev-client__c65c2a12-f7b5-11e7-8f66-52540065dced" ], "uuid": "c65c2a12-f7b5-11e7-8f66-52540065dced", "service_health_check_ip": false, "instance_ip_address": "10.47.255.250", "perms2": { "owner": "cloud-admin", "owner_access": 7, "global_access": 0, "share": [] }, "annotations": { "key_value_pair": [ { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Pod" }, { "key": "namespace", "value": "dev" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "dev-client" }, { "key": "owner", "value": "k8s" } ] }, "subnet_uuid": "4b421367-165a-4555-80ab-2cff90cb9401", "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T16:29:34.763793", "uuid": { "uuid_mslong": 14293345578320728551, "uuid_lslong": 10333036915785587949 }, "user_visible": true, "last_modified": "2018-01-12T16:29:34.810063", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "virtual_machine_interface_refs": [ { "to": [ "default-domain", "kubernetes", "dev-client__c64b3b12-f7b5-11e7-8f66-52540065dced" ], "href": "} ], "service_instance_ip": false, "instance_ip_local_ip": false, "virtual_network_refs": [ { "to": [ "default-domain", "kubernetes", "dev-vn" ], "href": "} ], "instance_ip_secondary": false, "display_name": "dev__dev-client"}
{ "fq_name": [ "default-domain", "kubernetes", "svc-dev-web__20c27603-2d0f-45f5-9647-defe4adaba9a" ], "virtual_machine_interface_mac_addresses": { "mac_address": [ "02:20:c2:76:03:2d" ] }, "display_name": "dev-share__svc-dev-web", "security_group_refs": [ { "to": [ "default-domain", "kubernetes", "k8s-default-dev-share-sg" ], "href": "http://127.0.0.1:8082/security-group/791f1c7e-a66e-4c47-ba05-409f00ee2c8e", "attr": null, "uuid": "791f1c7e-a66e-4c47-ba05-409f00ee2c8e" }, { "to": [ "default-domain", "kubernetes", "k8s-default-dev-share-default" ], "href": "http://127.0.0.1:8082/security-group/ad29de07-5ef6-4f55-86bb-52c44827c09d", "attr": null, "uuid": "ad29de07-5ef6-4f55-86bb-52c44827c09d" } ], "routing_instance_refs": [ { "to": [ "default-domain", "kubernetes", "cluster-network", "cluster-network" ], "href": "{ "direction": "both", "protocol": null, "ipv6_service_chain_address": null, "dst_mac": null, "mpls_label": null, "vlan_tag": null, "src_mac": null, "service_chain_address": null }, "uuid": "5ed7608a-28bb-4735-a8d8-2e9132b03d62" } ], "virtual_machine_interface_disable_policy": false, "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "virtual_network_refs": [ { "to": [ "default-domain", "kubernetes", "cluster-network" ], "href": "} ], "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:21:05.324801", "uuid": { "uuid_mslong": 2360578910708516341, "uuid_lslong": 10828869012794555034 }, "user_visible": true, "last_modified": "2018-01-12T15:21:05.365345", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "vlan_tag_based_bridge_domain": false, "virtual_machine_interface_device_owner": "K8S:LOADBALANCER", "port_security_enabled": true, "uuid": "20c27603-2d0f-45f5-9647-defe4adaba9a"}
{ "fq_name": [ "svc-dev-web__ff9782ea-f79d-423e-af9e-cde45ef847f2" ], "uuid": "ff9782ea-f79d-423e-af9e-cde45ef847f2", "service_health_check_ip": false, "instance_ip_address": "10.167.87.84", "perms2": { "owner": "cloud-admin", "owner_access": 7, "global_access": 0, "share": [] }, "virtual_network_refs": [ { "to": [ "default-domain", "kubernetes", "cluster-network" ], "href": "} ], "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:21:05.433006", "uuid": { "uuid_mslong": 18417333146843169342, "uuid_lslong": 12654778383687239666 }, "user_visible": true, "last_modified": "2018-01-12T15:21:05.433006", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "virtual_machine_interface_refs": [ { "to": [ "default-domain", "kubernetes", "svc-dev-web__20c27603-2d0f-45f5-9647-defe4adaba9a" ], "href": "} ], "service_instance_ip": false, "instance_ip_local_ip": false, "instance_ip_secondary": false, "display_name": "svc-dev-web"}
{ "project_refs": [ { "to": [ "default-domain", "kubernetes" ], "href": "} ], "fq_name": [ "svc-dev-web__ff9782ea-f79d-423e-af9e-cde45ef847f2", "dee62bd0-ed5a-4ac5-b7d7-dc6f329cdba7" ], "uuid": "dee62bd0-ed5a-4ac5-b7d7-dc6f329cdba7", "floating_ip_port_mappings": { "port_mappings": [ { "protocol": "TCP", "src_port": 80, "dst_port": 80 } ] }, "parent_type": "instance-ip", "perms2": { "owner": "cloud-admin", "owner_access": 7, "global_access": 0, "share": [] }, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:21:05.562790", "uuid": { "uuid_mslong": 16061573297398762181, "uuid_lslong": 13247299199082224551 }, "user_visible": true, "last_modified": "2018-01-12T15:21:06.073466", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "floating_ip_address": "10.167.87.84", "virtual_machine_interface_refs": [ { "to": [ "default-domain", "kubernetes", "dev-web-669n0__59f3d2a8-f7ab-11e7-8f66-52540065dced" ], "href": "}, { "to": [ "default-domain", "kubernetes", "dev-web-k528t__5a1fc03e-f7ab-11e7-8f66-52540065dced" ], "href": "} ], "floating_ip_port_mappings_enable": true, "display_name": "dee62bd0-ed5a-4ac5-b7d7-dc6f329cdba7", "floating_ip_traffic_direction": "ingress"}
{ "fq_name": [ "default-domain", "kubernetes", "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90" ], "uuid": "34f826d8-f7ac-11e7-9dbb-98f2b3a33b90", "service_appliance_set_refs": [ { "to": [ "default-global-system-config", "native" ], "href": "} ], "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "loadbalancer_properties": { "status": null, "provisioning_status": "ACTIVE", "admin_state": true, "vip_address": "10.167.87.84", "vip_subnet_id": null, "operating_status": "ONLINE" }, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:21:05.486093", "uuid": { "uuid_mslong": 3816843397506535911, "uuid_lslong": 11365846252762905488 }, "user_visible": true, "last_modified": "2018-01-12T15:21:05.514920", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "virtual_machine_interface_refs": [ { "to": [ "default-domain", "kubernetes", "svc-dev-web__20c27603-2d0f-45f5-9647-defe4adaba9a" ], "href": "} ], "display_name": "dev-share__svc-dev-web", "loadbalancer_provider": "native", "annotations": { "key_value_pair": [ { "key": "cluster", "value": "k8s-default" }, { "key": "kind", "value": "Service" }, { "key": "namespace", "value": "dev-share" }, { "key": "project", "value": "kubernetes" }, { "key": "name", "value": "svc-dev-web" }, { "key": "owner", "value": "k8s" } ] }}
{ "loadbalancer_listener_properties": { "default_tls_container": null, "protocol": "TCP", "connection_limit": null, "admin_state": true, "sni_containers": [], "protocol_port": 80 }, "fq_name": [ "default-domain", "kubernetes", "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90-TCP-80-331d4fc1-7e80-47a7-a6a0-6cef54c37b6c" ], "uuid": "331d4fc1-7e80-47a7-a6a0-6cef54c37b6c", "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:21:05.564006", "uuid": { "uuid_mslong": 3683187762728552359, "uuid_lslong": 12006716381744823148 }, "user_visible": true, "last_modified": "2018-01-12T15:21:05.564006", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "loadbalancer_refs": [ { "to": [ "default-domain", "kubernetes", "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90" ], "href": "} ], "display_name": "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90-TCP-80-331d4fc1-7e80-47a7-a6a0-6cef54c37b6c"}
{ "fq_name": [ "default-domain", "kubernetes", "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90-TCP-80-331d4fc1-7e80-47a7-a6a0-6cef54c37b6c" ], "uuid": "3ed542dc-cbc5-4b47-aeb7-c35f8443a672", "parent_type": "project", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "loadbalancer_listener_refs": [ { "to": [ "default-domain", "kubernetes", "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90-TCP-80-331d4fc1-7e80-47a7-a6a0-6cef54c37b6c" ], "href": "} ], "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:21:05.646375", "uuid": { "uuid_mslong": 4527598516469844807, "uuid_lslong": 12589746098345846386 }, "user_visible": true, "last_modified": "2018-01-12T15:21:05.646375", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "loadbalancer_pool_properties": { "status": null, "protocol": "TCP", "subnet_id": null, "session_persistence": null, "admin_state": true, "persistence_cookie_name": null, "status_description": null, "loadbalancer_method": null }, "display_name": "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90-TCP-80-331d4fc1-7e80-47a7-a6a0-6cef54c37b6c"}
{ "fq_name": [ "default-domain", "kubernetes", "svc-dev-web__34f826d8-f7ac-11e7-9dbb-98f2b3a33b90-TCP-80-331d4fc1-7e80-47a7-a6a0-6cef54c37b6c", "53d85c7f-6b13-482e-8706-92142bfa2543" ], "uuid": "53d85c7f-6b13-482e-8706-92142bfa2543", "parent_type": "loadbalancer-pool", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T15:21:05.811773", "uuid": { "uuid_mslong": 6041680602444548142, "uuid_lslong": 9729624660315350339 }, "user_visible": true, "last_modified": "2018-01-12T15:21:05.830431", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "display_name": "53d85c7f-6b13-482e-8706-92142bfa2543", "loadbalancer_member_properties": { "status": null, "status_description": null, "weight": 1, "admin_state": true, "address": null, "protocol_port": 80 }, "annotations": { "key_value_pair": [ { "key": "vm", "value": "708154c6-f7ab-11e7-a9df-98f2b3a36be0" }, { "key": "vmi", "value": "5a1fc03e-f7ab-11e7-8f66-52540065dced" } ] }}
{ "project_refs": [ { "to": [ "default-domain", "kubernetes" ], "href": "} ], "fq_name": [ "default-domain", "kubernetes", "BGP", "BGP", "svc-dev-web__1526aa69-f7bf-11e7-9dbb-98f2b3a33b90120.136.134.67-externalIP" ], "uuid": "ac091da2-28d7-467f-bd49-10edb2885219", "floating_ip_port_mappings": { "port_mappings": [ { "protocol": "TCP", "src_port": 80, "dst_port": 80 } ] }, "parent_type": "floating-ip-pool", "perms2": { "owner": "None", "owner_access": 7, "global_access": 0, "share": [] }, "id_perms": { "enable": true, "description": null, "creator": null, "created": "2018-01-12T17:36:13.280888", "uuid": { "uuid_mslong": 12396472031621105279, "uuid_lslong": 13639451559556829721 }, "user_visible": true, "last_modified": "2018-01-12T17:36:13.424379", "permissions": { "owner": "cloud-admin", "owner_access": 7, "other_access": 7, "group": "cloud-admin-group", "group_access": 7 } }, "floating_ip_address": "120.136.134.67", "virtual_machine_interface_refs": [ { "to": [ "default-domain", "kubernetes", "dev-web-669n0__59f3d2a8-f7ab-11e7-8f66-52540065dced" ], "href": "}, { "to": [ "default-domain", "kubernetes", "svc-dev-web__78f5adca-cbfe-422a-810c-bb3be9c15589" ], "href": "}, { "to": [ "default-domain", "kubernetes", "dev-web-k528t__5a1fc03e-f7ab-11e7-8f66-52540065dced" ], "href": "} ], "floating_ip_port_mappings_enable": true, "display_name": "svc-dev-web__1526aa69-f7bf-11e7-9dbb-98f2b3a33b90120.136.134.67-externalIP", "floating_ip_traffic_direction": "ingress"}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69957171/viewspace-2700326/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Tungsten Fabric解決方案指南-Gateway MXGateway
- Tungsten Fabric與K8s整合指南丨建立隔離名稱空間K8S
- Tungsten Fabric入門寶典丨編排器整合
- Tungsten Fabric入門寶典丨首次啟動和執行指南
- 前端整合解決方案前端
- Tungsten Fabric入門寶典丨說說L3VPN及EVPN整合
- Tungsten Fabric架構解析丨詳解vRouter體系結構架構VR
- 利用DDP技術提升Tungsten Fabric vRouter效能VR
- TF實戰丨使用Vagrant安裝Tungsten Fabric
- Tungsten Fabric架構解析丨TF如何編排架構
- VMware Tanzu Kubernetes Grid (TKG) 2.5.1 - 企業級 Kubernetes 解決方案
- 企業如何資料整合?資料整合解決方案
- Tungsten Fabric架構解析丨TF支援API一覽架構API
- Tungsten Fabric架構解析丨TF怎麼運作?架構
- Tungsten Fabric架構解析丨TF的服務鏈架構
- Tungsten Fabric架構解析丨vRouter的部署選項架構VR
- Tungsten Fabric架構解析丨TF如何收集、分析、部署?架構
- 終極自託管解決方案指南
- Kubernetes fabric8 JavaAPIJavaAPI
- VMware Tanzu Kubernetes Grid Integrated Edition (TKGI) 1.19.1 - 運營商 Kubernetes 解決方案
- 最新版本|Tungsten Fabric 5.1要點速覽
- Tungsten Fabric架構解析|TF主要特點和用例架構
- Tungsten Fabric知識庫丨更多元件內部探秘元件
- Tungsten Fabric知識庫丨vRouter內部執行探秘VR
- SpringBoot整合Redis亂碼原因及解決方案Spring BootRedis
- 如何選擇HFM解決方案整合產品
- Tungsten Fabric入門寶典丨TF元件的七種“武器”元件
- Tungsten Fabric入門寶典丨多編排器用法及配置
- Tungsten Fabric實戰:對接vMX虛擬路由平臺填坑路由
- Tungsten Fabric知識庫丨構建、安裝與公有云部署
- Tungsten Fabric知識庫丨測試2000個vRouter節點部署VR
- Tungsten Fabric入門寶典丨8個典型故障及排查Tips
- Kubernetes網路解決方案技術原理深入剖析-Kubernetes商業環境實戰
- 醫院整合平臺 IT 基礎架構解決方案架構
- Tungsten Fabric入門寶典丨關於服務鏈、BGPaaS及其它
- 等你加入!Tungsten Fabric中文社群技術委員會會員徵集中
- Tungsten Fabric入門寶典丨關於叢集更新的那些事
- Tungsten Fabric入門寶典丨關於安裝的那些事(下)