open-traffic-generator / ixia-c

Ixia-c Traffic Generator
MIT License
190 stars 18 forks source link

Unable to fetch bgp rib-in prefixes with gnmic on OTG #154

Closed s-nandu closed 1 year ago

s-nandu commented 1 year ago

gnmi request for path "/bgp-peers/" did not provide the received routes "in-routes": "2",

Also, gnmic controller is trashing after the request

root@controller:~/featureprofiles# gnmic -a 172.18.0.2:32470 --skip-verify -u admin -p admin get --path "/bgp-peers/" [ { "source": "172.18.0.2:32470", "timestamp": 1694497224483020915, "time": "2023-09-11T22:40:24.483020915-07:00", "updates": [ { "Path": "bgp-peers/bgp-peer[name=ateIbgp3.BGP4.peer]", "values": { "bgp-peers/bgp-peer": { "open-traffic-generator-bgp:name": "ateIbgp3.BGP4.peer", "open-traffic-generator-bgp:state": { "counters": { "flaps": "0", "in-end-of-rib": "1", "in-keepalives": "32", "in-route-withdraw": "0", "in-routes": "2", "out-keepalives": "30", "out-route-withdraw": "0", "out-routes": "0" }, "name": "ateIbgp3.BGP4.peer", "session-state": "ESTABLISHED" } } } }, { "Path": "bgp-peers/bgp-peer[name=ateEbgp1.BGP4.peer]", "values": { "bgp-peers/bgp-peer": { "open-traffic-generator-bgp:name": "ateEbgp1.BGP4.peer", "open-traffic-generator-bgp:state": { "counters": { "flaps": "0", "in-end-of-rib": "1", "in-keepalives": "32", "in-route-withdraw": "0", "in-routes": "0", "out-keepalives": "30", "out-route-withdraw": "0", "out-routes": "1" }, "name": "ateEbgp1.BGP4.peer", "session-state": "ESTABLISHED" } } } }, { "Path": "bgp-peers/bgp-peer[name=ateEbgp2.BGP4.peer]", "values": { "bgp-peers/bgp-peer": { "open-traffic-generator-bgp:name": "ateEbgp2.BGP4.peer", "open-traffic-generator-bgp:state": { "counters": { "flaps": "0", "in-end-of-rib": "1", "in-keepalives": "32", "in-route-withdraw": "0", "in-routes": "1", "out-keepalives": "30", "out-route-withdraw": "0", "out-routes": "1" }, "name": "ateEbgp2.BGP4.peer", "session-state": "ESTABLISHED" } } } }, { "Path": "bgp-peers/bgp-peer[name=ateIbgp1.BGP4.peer]", "values": { "bgp-peers/bgp-peer": { "open-traffic-generator-bgp:name": "ateIbgp1.BGP4.peer", "open-traffic-generator-bgp:state": { "counters": { "flaps": "0", "in-end-of-rib": "1", "in-keepalives": "33", "in-route-withdraw": "0", "in-routes": "2", "out-keepalives": "31", "out-route-withdraw": "0", "out-routes": "0" }, "name": "ateIbgp1.BGP4.peer", "session-state": "ESTABLISHED" } } } }, { "Path": "bgp-peers/bgp-peer[name=ateIbgp2.BGP4.peer]", "values": { "bgp-peers/bgp-peer": { "open-traffic-generator-bgp:name": "ateIbgp2.BGP4.peer", "open-traffic-generator-bgp:state": { "counters": { "flaps": "0", "in-end-of-rib": "1", "in-keepalives": "32", "in-route-withdraw": "0", "in-routes": "2", "out-keepalives": "30", "out-route-withdraw": "0", "out-routes": "0" }, "name": "ateIbgp2.BGP4.peer", "session-state": "ESTABLISHED" } } } } ] } ]

root@controller:~/featureprofiles# gnmic -a 172.18.0.2:32470 --skip-verify -u admin -p admin get --path "/bgp-peers/bgp-peer[name=ateIbgp2.BGP4. peer]" target "172.18.0.2:32470" get request failed: failed to create a gRPC client for target "172.18.0.2:32470" : 172.18.0.2:32470: context deadline exceeded target "172.18.0.2:32470" get request failed: failed to create a gRPC client for target "172.18.0.2:32470" : 172.18.0.2:32470: context deadline exceeded Error: one or more requests failed root@controller:~/featureprofiles#

root@controller:~# kubectl get pods -A NAMESPACE NAME READY STATUS RESTARTS AGE arista-ceoslab-operator-system arista-ceoslab-operator-controller-manager-66cb57484f-zwcf7 2/2 Running 0 4d9h ixiatg-op-system ixiatg-op-controller-manager-6678b5b6d8-d528z 2/2 Running 0 4d9h juniper-cptx-dutate-lag dut 1/1 Running 0 4d9h juniper-cptx-dutate-lag otg-controller 1/2 CrashLoopBackOff 7 (5m2s ago) 4d9h juniper-cptx-dutate-lag otg-port-eth1 2/2 Running 0 4d9h juniper-cptx-dutate-lag otg-port-group-lag 2/2 Running 0 4d9h kube-system coredns-787d4945fb-sq6tf 1/1 Running 0 4d9h kube-system coredns-787d4945fb-sxkxp 1/1 Running 0 4d9h kube-system etcd-kne-control-plane 1/1 Running 0 4d9h kube-system kindnet-8jbkk 1/1 Running 0 4d9h kube-system kube-apiserver-kne-control-plane 1/1 Running 0 4d9h kube-system kube-controller-manager-kne-control-plane 1/1 Running 0 4d9h kube-system kube-proxy-cj8j6 1/1 Running 0 4d9h kube-system kube-scheduler-kne-control-plane 1/1 Running 0 4d9h lemming-operator lemming-controller-manager-6fc9d47f7d-mp7zh 2/2 Running 0 4d9h local-path-storage local-path-provisioner-c8855d4bb-8hfpf 1/1 Running 0 4d9h meshnet meshnet-s8kzt 1/1 Running 0 4d9h metallb-system controller-8bb68977b-h62gb 1/1 Running 0 4d9h metallb-system speaker-l8lbs 1/1 Running 0 4d9h srlinux-controller srlinux-controller-controller-manager-66b4b6976d-htgqx 2/2 Running 0 4d9h root@controller:~#

root@controller:~# kubectl describe pod otg-controller -n juniper-cptx-dutate-lag Name: otg-controller Namespace: juniper-cptx-dutate-lag Priority: 0 Service Account: default Node: kne-control-plane/172.18.0.2 Start Time: Thu, 07 Sep 2023 13:35:05 -0700 Labels: app=otg-controller Annotations: Status: Running IP: 10.244.0.12 IPs: IP: 10.244.0.12 Containers: ixia-c: Container ID: containerd://a78826bf558467137b9a549c164bca0e0eca8632ec8e600eecefb9cb88fc7603 Image: ghcr.io/open-traffic-generator/licensed/ixia-c-controller:0.0.1-4399 Image ID: docker.io/library/import-2023-09-07@sha256:fb779d7a15895cd000f711f75c6a2d00098c9a1c50b4f4b2f3b0975f76e5ed7f Port: Host Port: Args: --accept-eula --debug State: Waiting Reason: CrashLoopBackOff Last State: Terminated Reason: Error Exit Code: 2 Started: Mon, 11 Sep 2023 22:56:29 -0700 Finished: Mon, 11 Sep 2023 22:56:29 -0700 Ready: False Restart Count: 8 Liveness: tcp-socket :40051 delay=1s timeout=1s period=10s #success=1 #failure=6 Environment: Mounts: /home/ixia-c/controller/config from config (ro) /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-4pvzm (ro) gnmi: Container ID: containerd://0246037cefa6131629228bf02b98a463b3ebcd2f577a922701e4e37bc93beb19 Image: ghcr.io/open-traffic-generator/ixia-c-gnmi-server:1.12.2 Image ID: docker.io/library/import-2023-09-07@sha256:eabcd298b8bc45315d802f6d3416d3e8548f3fbf39ad5d44fe7deae9fda81574 Port: 50051/TCP Host Port: 0/TCP Args: -http-server https://localhost:8443 --debug State: Running Started: Thu, 07 Sep 2023 13:35:07 -0700 Ready: True Restart Count: 0 Liveness: tcp-socket :50051 delay=1s timeout=1s period=10s #success=1 #failure=6 Environment: Mounts: /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-4pvzm (ro) Conditions: Type Status Initialized True Ready False ContainersReady False PodScheduled True Volumes: config: Type: ConfigMap (a volume populated by a ConfigMap) Name: controller-config Optional: false kube-api-access-4pvzm: Type: Projected (a volume that contains injected data from multiple sources) TokenExpirationSeconds: 3607 ConfigMapName: kube-root-ca.crt ConfigMapOptional: DownwardAPI: true QoS Class: BestEffort Node-Selectors: Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s node.kubernetes.io/unreachable:NoExecute op=Exists for 300s Events: Type Reason Age From Message


Normal Pulled 14m (x5 over 4d9h) kubelet Container image "ghcr.io/open-traffic-generator/licensed/ixia-c-controller:0.0.1-4399" already present on machine Normal Created 14m (x5 over 4d9h) kubelet Created container ixia-c Normal Started 14m (x5 over 4d9h) kubelet Started container ixia-c Warning BackOff 76s (x74 over 16m) kubelet Back-off restarting failed container ixia-c in pod otg-controller_juniper-cptx-dutate-lag(1dc6d49c-af69-480e-8893-898bc613d5ee) root@controller:~#

ANISH-GOTTAPU commented 1 year ago

Looks like LearnedInformationFilter is not added in the test, can you please check if that is added.

txBgpv4Peer.LearnedInformationFilter().SetUnicastIpv4Prefix(true)

I am able to get the parameters in b2b setup with ixia-c in kne version(0.0.1.4399)

automation@automation-virtual-machine:~/featureprofiles$ gnmic -a 172.18.0.2:32000 --skip-verify -u admin -p admin get --path  "/bgp-peers/"
[
  {
    "source": "172.18.0.2:32000",
    "timestamp": 1694503454613372671,
    "time": "2023-09-12T12:54:14.613372671+05:30",
    "updates": [
      {
        "Path": "bgp-peers/bgp-peer[name=rxBgpv4Peer]",
        "values": {
          "bgp-peers/bgp-peer": {
            "open-traffic-generator-bgp:name": "rxBgpv4Peer",
            "open-traffic-generator-bgp:state": {
              "counters": {
                "flaps": "0",
                "in-end-of-rib": "0",
                "in-keepalives": "4",
                "in-route-withdraw": "0",
                "in-routes": "1",
                "out-keepalives": "4",
                "out-route-withdraw": "0",
                "out-routes": "0"
              },
              "name": "rxBgpv4Peer",
              "session-state": "ESTABLISHED"
            },
            "open-traffic-generator-bgp:unicast-ipv4-prefixes": {
              "unicast-ipv4-prefix": [
                {
                  "address": "100.1.1.1",
                  "origin": "EGP",
                  "path-id": 0,
                  "prefix-length": 32,
                  "state": {
                    "address": "100.1.1.1",
                    "as-path": [
                      {
                        "as_numbers": [
                          65000
                        ],
                        "segment-type": "AS_SET"
                      },
                      {
                        "as_numbers": [
                          1112,
                          1113
                        ],
                        "segment-type": "AS_SEQUENCE"
                      },
                      {
                        "as_numbers": [
                          2222,
                          2223
                        ],
                        "segment-type": "AS_SET"
                      }
                    ],
                    "community": [
                      {
                        "community-type": "MANUAL_AS_NUMBER",
                        "custom-as-number": 1,
                        "custom-as-value": 2
                      }
                    ],
                    "multi-exit-discriminator": 50,
                    "next-hop-ipv4-address": "192.0.2.1",
                    "origin": "EGP",
                    "path-id": 0,
                    "prefix-length": 32
                  }
                }
              ]
            }
          }
        }
      },
      {
        "Path": "bgp-peers/bgp-peer[name=txBgpv4Peer]",
        "values": {
          "bgp-peers/bgp-peer": {
            "open-traffic-generator-bgp:name": "txBgpv4Peer",
            "open-traffic-generator-bgp:state": {
              "counters": {
                "flaps": "0",
                "in-end-of-rib": "0",
                "in-keepalives": "4",
                "in-route-withdraw": "0",
                "in-routes": "0",
                "out-keepalives": "4",
                "out-route-withdraw": "0",
                "out-routes": "1"
              },
              "name": "txBgpv4Peer",
              "session-state": "ESTABLISHED"
            }
          }
        }
      }
    ]
  }
]
automation@automation-virtual-machine:~/featureprofiles$ kubectl describe pod otg-controller -n ixia-c-b2b
Name:             otg-controller
Namespace:        ixia-c-b2b
Priority:         0
Service Account:  default
Node:             kind-control-plane/172.18.0.2
Start Time:       Tue, 12 Sep 2023 12:39:35 +0530
Labels:           app=otg-controller
Annotations:      <none>
Status:           Running
IP:               10.244.0.10
IPs:
  IP:  10.244.0.10
Containers:
  ixia-c:
    Container ID:  containerd://3d0ebb63ead7f87891303742aca12044e63f4af04d791d54d38f74cfac7c3502
    Image:         ghcr.io/open-traffic-generator/licensed/ixia-c-controller:0.0.1-4399
    Image ID:      docker.io/library/import-2023-09-12@sha256:fb779d7a15895cd000f711f75c6a2d00098c9a1c50b4f4b2f3b0975f76e5ed7f
    Port:          <none>
    Host Port:     <none>
    Args:
      --accept-eula
      --debug
    State:          Running
      Started:      Tue, 12 Sep 2023 12:39:35 +0530
    Ready:          True
    Restart Count:  0
    Liveness:       tcp-socket :40051 delay=1s timeout=1s period=10s #success=1 #failure=6
    Environment:    <none>
    Mounts:
      /home/ixia-c/controller/config from config (ro)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-2fk4r (ro)
  gnmi:
    Container ID:  containerd://5093e741e367d49a4eeb62ebebf7e766f375f48149a55bc4d53b3baf020495de
    Image:         ghcr.io/open-traffic-generator/ixia-c-gnmi-server:1.12.2
    Image ID:      docker.io/library/import-2023-09-12@sha256:eabcd298b8bc45315d802f6d3416d3e8548f3fbf39ad5d44fe7deae9fda81574
    Port:          50051/TCP
    Host Port:     0/TCP
ANISH-GOTTAPU commented 1 year ago

closing it as got acknowledgement from the user that it it working