diff --git a/README.md b/README.md index d717071..e327085 100644 --- a/README.md +++ b/README.md @@ -5,35 +5,142 @@ Repository to provision router and monitoring pods in OF@TEIN++ multiple Kuberne ## Requirements +This is tested in Kubernetes 1.19.3 with Calico as the network CNI.\ +For monitoring purpose, [Grafana](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack#configuration) and [Loki](https://grafana.com/docs/loki/latest/installation/helm/) should deployed prior to this.\ +For persistent volume, provisioner should deployed prior to this for dynamic persistent volume. For example, [nfs-client-provisioner](https://github.com/helm/charts/tree/master/stable/nfs-client-provisioner) + ## Configuration -Example of router configuration for UM site worker node `um-router-pod.yaml` is shown below: +Example of router configuration for UM site worker node `um-sandbox-3.yaml` is shown below. In this yaml file, it contains 2 containers which is quagga router container and openvswitch(OVS) container. Quagga container bind with a persistent volume for configuration storage. Quagga container doesn't allow changing the vxlan destination port(by default Kubernetes Calico CNI is blocking overlay traffic between pods), hence ovs is used here to form overlay VXLAN tunnels between router pods. ```yaml +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: um-sandbox-3-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- apiVersion: v1 kind: Pod metadata: - name: router-pod-um + name: quagga-bgp-um-sandbox-3 + namespace: rpki + labels: + app: quagga-bgp-um-sandbox-3 spec: - volumes: - - name: configDir - mountPath: "..." - containers: - - name: quagga - image: - command: - volumeMounts: - - mountPath: "/config" - name: configDir - nodeName: k8s-worker-um-1 + nodeName: um-sandbox-3 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: um-sandbox-3-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: um-sandbox-3-storage + persistentVolumeClaim: + claimName: um-sandbox-3-pvc + +``` +Access the pod for initial configuration. In this case, we are accessing the quagga container. +``` +kubectl exec --stdin --tty -n rpki quagga-bgp-um-sandbox-3 -- /bin/bash +``` + +After applying the router pod yaml file with ```kubectl apply -f um-sandbox-3.yaml```, copy daemons and debian.conf from [/companion-files](https://github.com/skywood123/OFTEIN-Router-and-Monitoring-Pod/tree/temporary/router-pod/companion-files) into /etc/quagga/.Because of using persistent volume to store the configuration file, the original files in the directory is wipe out during mounting the persistent volume, so we need to manually move the 2 files into the directory during initial configuration. + +``` +chown quagga.quaggavty /etc/quagga/*.conf +chmod 640 /etc/quagga/*.conf +/etc/init.d/quagga start +apt-get install ssh -y +``` + +Install the promtail binary to scrape the static log file from the quagga software. +``` +cd /usr/local/bin +apt-get install nano curl -y +sudo curl -fSL -o promtail.gz "https://github.com/grafana/loki/releases/download/v1.6.1/promtail-linux-amd64.zip" +sudo gunzip promtail.gz +sudo chmod a+x promtail +sudo nano config-promtail.yml ``` +Paste the promtail yaml configuration below. +```yaml +#config-promtail.yaml template https://sbcode.net/grafana/install-promtail-service/ +server: + http_listen_port: 9080 + grpc_listen_port: 0 + +positions: + filename: /tmp/positions.yaml + +clients: + - url: http://loki:3100/loki/api/v1/push + +scrape_configs: + - job_name: quagga + entry_parser: raw + static_configs: + - targets: + - localhost + labels: + job: quagga-um-sandbox-3 + __path__: /etc/quagga/bgpd.log + +``` + +Run the promtail binary +``` +sudo ./promtail -config.file ./config-promtail.yml +``` +Next, configure the Overlay Vxlan connection between the router pods. If using hub-and-spoke topology, hub router pod need to point to all spoke routers and spoke router pods point back to hub router pod. +The openvswitch container image comes with ssh only. Access the ovs container using ssh. + +``` +ssh localhost +ovs-vsctl add-br switch + +ovs-vsctl add-port switch vxlan-drukren -- set interface vxlan-drukren type=vxlan \ + options:remote_ip=10.144.180.161 options:dst_port=5566 + +ifconfig switch 192.168.100.1 netmask 255.255.255.0 up +``` ## Usage To apply the configuration please use this `kubectl` command: ```shell script -kubectl apply -f um-router-pod.yaml +kubectl apply -f um-sandbox-3.yaml ``` -## Troubleshooting \ No newline at end of file +## Troubleshooting diff --git a/router-pod/1-um-sandbox-3.yaml b/router-pod/1-um-sandbox-3.yaml new file mode 100644 index 0000000..e0068f0 --- /dev/null +++ b/router-pod/1-um-sandbox-3.yaml @@ -0,0 +1,54 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: um-sandbox-3-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-um-sandbox-3 + namespace: rpki + labels: + app: quagga-bgp-um-sandbox-3 +spec: + nodeName: um-sandbox-3 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: um-sandbox-3-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: um-sandbox-3-storage + persistentVolumeClaim: + claimName: um-sandbox-3-pvc diff --git a/router-pod/2-smartx-microbox-drukren-1.yaml b/router-pod/2-smartx-microbox-drukren-1.yaml new file mode 100644 index 0000000..b8e0514 --- /dev/null +++ b/router-pod/2-smartx-microbox-drukren-1.yaml @@ -0,0 +1,70 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: smartx-microbox-drukren-1-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-smartx-microbox-drukren-1 + namespace: rpki + labels: + app: quagga-bgp-smartx-microbox-drukren-1 +spec: + nodeName: smartx-microbox-drukren-1 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: smartx-microbox-drukren-1-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: smartx-microbox-drukren-1-storage + persistentVolumeClaim: + claimName: smartx-microbox-drukren-1-pvc +--- +# +#apiVersion: v1 +#kind: Service +#metadata: +# name: quagga-bgp-smartx-microbox-drukren-1-service +# namespace: rpki +#spec: +# selector: +# app: quagga-bgp-smartx-microbox-drukren-1 +# ports: +# - protocol: TCP +# port: 179 +# targetPort: 179 +# + diff --git a/router-pod/3-smartx-microbox-itb-1.yaml b/router-pod/3-smartx-microbox-itb-1.yaml new file mode 100644 index 0000000..c78d10d --- /dev/null +++ b/router-pod/3-smartx-microbox-itb-1.yaml @@ -0,0 +1,70 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: smartx-microbox-itb-1-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-smartx-microbox-itb-1 + namespace: rpki + labels: + app: quagga-bgp-smartx-microbox-itb-1 +spec: + nodeName: smartx-microbox-itb-1 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: smartx-microbox-itb-1-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: smartx-microbox-itb-1-storage + persistentVolumeClaim: + claimName: smartx-microbox-itb-1-pvc +--- +# +#apiVersion: v1 +#kind: Service +#metadata: +# name: quagga-bgp-smartx-microbox-itb-1-service +# namespace: rpki +#spec: +# selector: +# app: quagga-bgp-smartx-microbox-itb-1 +# ports: +# - protocol: TCP +# port: 179 +# targetPort: 179 +# + diff --git a/router-pod/4-smartx-microbox-monash-1.yaml b/router-pod/4-smartx-microbox-monash-1.yaml new file mode 100644 index 0000000..3c20a97 --- /dev/null +++ b/router-pod/4-smartx-microbox-monash-1.yaml @@ -0,0 +1,70 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: smartx-microbox-monash-1-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-smartx-microbox-monash-1 + namespace: rpki + labels: + app: quagga-bgp-smartx-microbox-monash-1 +spec: + nodeName: smartx-microbox-monash-1 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: smartx-microbox-monash-1-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: smartx-microbox-monash-1-storage + persistentVolumeClaim: + claimName: smartx-microbox-monash-1-pvc +--- +# +#apiVersion: v1 +#kind: Service +#metadata: +# name: quagga-bgp-smartx-microbox-monash-1-service +# namespace: rpki +#spec: +# selector: +# app: quagga-bgp-smartx-microbox-monash-1 +# ports: +# - protocol: TCP +# port: 179 +# targetPort: 179 +# +# diff --git a/router-pod/5-smartx-microbox-rub-1.yaml b/router-pod/5-smartx-microbox-rub-1.yaml new file mode 100644 index 0000000..eb85c18 --- /dev/null +++ b/router-pod/5-smartx-microbox-rub-1.yaml @@ -0,0 +1,70 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: smartx-microbox-rub-1-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-smartx-microbox-rub-1 + namespace: rpki + labels: + app: quagga-bgp-smartx-microbox-rub-1 +spec: + nodeName: smartx-microbox-rub-1 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: smartx-microbox-rub-1-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: smartx-microbox-rub-1-storage + persistentVolumeClaim: + claimName: smartx-microbox-rub-1-pvc +--- +# +#apiVersion: v1 +#kind: Service +#metadata: +# name: quagga-bgp-smartx-microbox-rub-1-service +# namespace: rpki +#spec: +# selector: +# app: quagga-bgp-smartx-microbox-rub-1 +# ports: +# - protocol: TCP +# port: 179 +# targetPort: 179 +# + diff --git a/router-pod/6-um-ncku-worker1.yaml b/router-pod/6-um-ncku-worker1.yaml new file mode 100644 index 0000000..d13193a --- /dev/null +++ b/router-pod/6-um-ncku-worker1.yaml @@ -0,0 +1,70 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: um-ncku-worker1-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-um-ncku-worker1 + namespace: rpki + labels: + app: quagga-bgp-um-ncku-worker1 +spec: + nodeName: um-ncku-worker1 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: um-ncku-worker1-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: um-ncku-worker1-storage + persistentVolumeClaim: + claimName: um-ncku-worker1-pvc +--- +# +#apiVersion: v1 +#kind: Service +#metadata: +# name: quagga-bgp-um-ncku-worker1-service +# namespace: rpki +#spec: +# selector: +# app: quagga-bgp-um-ncku-worker1 +# ports: +# - protocol: TCP +# port: 179 +# targetPort: 179 +# +# diff --git a/router-pod/7-um-ncu-worker1.yaml b/router-pod/7-um-ncu-worker1.yaml new file mode 100644 index 0000000..d3d81bd --- /dev/null +++ b/router-pod/7-um-ncu-worker1.yaml @@ -0,0 +1,69 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: um-ncu-worker1-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-um-ncu-worker1 + namespace: rpki + labels: + app: quagga-bgp-um-ncu-worker1 +spec: + nodeName: um-ncu-worker1 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: um-ncu-worker1-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: um-ncu-worker1-storage + persistentVolumeClaim: + claimName: um-ncu-worker1-pvc +--- +# +#apiVersion: v1 +#kind: Service +#metadata: +# name: quagga-bgp-um-ncu-worker1-service +# namespace: rpki +#spec: +# selector: +# app: quagga-bgp-um-ncu-worker1 +# ports: +# - protocol: TCP +# port: 179 +# targetPort: 179 + diff --git a/router-pod/8-smartx-microbox-ucsm-1.yaml b/router-pod/8-smartx-microbox-ucsm-1.yaml new file mode 100644 index 0000000..7582810 --- /dev/null +++ b/router-pod/8-smartx-microbox-ucsm-1.yaml @@ -0,0 +1,70 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: smartx-microbox-ucsm-1-pvc + namespace: rpki +spec: + storageClassName: nfs-client + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 200Mi +--- +apiVersion: v1 +kind: Pod +metadata: + name: quagga-bgp-smartx-microbox-ucsm-1 + namespace: rpki + labels: + app: quagga-bgp-smartx-microbox-ucsm-1 +spec: + nodeName: smartx-microbox-ucsm-1 + containers: + - name: quagga + image: osrg/quagga + ports: + - containerPort: 179 + - containerPort: 2605 + - containerPort: 2601 + securityContext: + capabilities: + add: + - NET_ADMIN + - NET_BROADCAST + - NET_RAW + - SYS_ADMIN + volumeMounts: + - name: smartx-microbox-ucsm-1-storage + mountPath: /etc/quagga/ + - name: ovs + image: globocom/openvswitch + ports: + - containerPort: 22 + - containerPort: 5566 + protocol: UDP + securityContext: + capabilities: + add: + - NET_ADMIN + volumes: + - name: smartx-microbox-ucsm-1-storage + persistentVolumeClaim: + claimName: smartx-microbox-ucsm-1-pvc +--- +# +#apiVersion: v1 +#kind: Service +#metadata: +# name: quagga-bgp-smartx-microbox-ucsm-1-service +# namespace: rpki +#spec: +# selector: +# app: quagga-bgp-smartx-microbox-ucsm-1 +# ports: +# - protocol: TCP +# port: 179 +# targetPort: 179 +# +# diff --git a/router-pod/companion-files/daemons b/router-pod/companion-files/daemons new file mode 100644 index 0000000..c2c0ccc --- /dev/null +++ b/router-pod/companion-files/daemons @@ -0,0 +1,31 @@ +# This file tells the quagga package which daemons to start. +# +# Entries are in the format: =(yes|no|priority) +# 0, "no" = disabled +# 1, "yes" = highest priority +# 2 .. 10 = lower priorities +# Read /usr/share/doc/quagga/README.Debian for details. +# +# Sample configurations for these daemons can be found in +# /usr/share/doc/quagga/examples/. +# +# ATTENTION: +# +# When activation a daemon at the first time, a config file, even if it is +# empty, has to be present *and* be owned by the user and group "quagga", else +# the daemon will not be started by /etc/init.d/quagga. The permissions should +# be u=rw,g=r,o=. +# When using "vtysh" such a config file is also needed. It should be owned by +# group "quaggavty" and set to ug=rw,o= though. Check /etc/pam.d/quagga, too. +# +# The watchquagga daemon is always started. Per default in monitoring-only but +# that can be changed via /etc/quagga/debian.conf. +# +zebra=yes +bgpd=yes +ospfd=no +ospf6d=no +ripd=no +ripngd=no +isisd=no +babeld=no diff --git a/router-pod/companion-files/debian.conf b/router-pod/companion-files/debian.conf new file mode 100644 index 0000000..91ca7dd --- /dev/null +++ b/router-pod/companion-files/debian.conf @@ -0,0 +1,24 @@ +# +# If this option is set the /etc/init.d/quagga script automatically loads +# the config via "vtysh -b" when the servers are started. +# Check /etc/pam.d/quagga if you intend to use "vtysh"! +# +vtysh_enable=yes +zebra_options=" --daemon -A 127.0.0.1" +bgpd_options=" --daemon -A 127.0.0.1" +ospfd_options=" --daemon -A 127.0.0.1" +ospf6d_options=" --daemon -A ::1" +ripd_options=" --daemon -A 127.0.0.1" +ripngd_options=" --daemon -A ::1" +isisd_options=" --daemon -A 127.0.0.1" +babeld_options=" --daemon -A 127.0.0.1" +# +# Please note that watchquagga_options is an array and not a string so that +# quotes can be used. +# +# The list of daemons to watch is automatically generated by the init script +# from daemons.conf and appended to the watchquagga_options. +# Example: +# watchquagga_options=("-Adz" "-r" '/sbin/service %s restart' -s '/sbin/service %s start' -k '/sbin/service %s st$ +watchquagga_enable=yes +watchquagga_options=(--daemon) diff --git a/router-pod/config/smartx-microbox-drukren-1.conf b/router-pod/config/smartx-microbox-drukren-1.conf new file mode 100644 index 0000000..334346f --- /dev/null +++ b/router-pod/config/smartx-microbox-drukren-1.conf @@ -0,0 +1,16 @@ +! +! Zebra configuration saved from vty +! 2021/03/22 06:40:51 +! +hostname bgpd +password zebra +log file /etc/quagga/bgpd.log informational +log stdout +! +router bgp 65031 + bgp router-id 10.144.22.196 + network 172.16.6.0/23 + neighbor 192.168.100.1 remote-as 65012 +! +line vty +! diff --git a/router-pod/config/smartx-microbox-itb-1.conf b/router-pod/config/smartx-microbox-itb-1.conf new file mode 100644 index 0000000..8484a15 --- /dev/null +++ b/router-pod/config/smartx-microbox-itb-1.conf @@ -0,0 +1,16 @@ +! +! Zebra configuration saved from vty +! 2021/03/23 03:23:22 +! +hostname bgpd +password zebra +log file /etc/quagga/bgpd.log informational +log stdout +! +router bgp 65021 + bgp router-id 10.144.227.2 + network 172.16.4.0/23 + neighbor 192.168.100.1 remote-as 65012 +! +line vty +! diff --git a/router-pod/config/smartx-microbox-monash-1.conf b/router-pod/config/smartx-microbox-monash-1.conf new file mode 100644 index 0000000..899d0c7 --- /dev/null +++ b/router-pod/config/smartx-microbox-monash-1.conf @@ -0,0 +1,16 @@ +! +! Zebra configuration saved from vty +! 2021/03/22 06:40:51 +! +hostname bgpd +password zebra +log file /etc/quagga/bgpd.log informational +log stdout +! +router bgp 65011 + bgp router-id 10.144.17.196 + network 172.16.0.0/23 + neighbor 192.168.100.1 remote-as 65012 +! +line vty +! diff --git a/router-pod/config/smartx-microbox-rub-1.conf b/router-pod/config/smartx-microbox-rub-1.conf new file mode 100644 index 0000000..eb5e3f9 --- /dev/null +++ b/router-pod/config/smartx-microbox-rub-1.conf @@ -0,0 +1,16 @@ +! +! Zebra configuration saved from vty +! 2021/03/22 06:40:51 +! +hostname bgpd +password zebra +log file /etc/quagga/bgpd.log informational +log stdout +! +router bgp 65032 + bgp router-id 10.144.226.193 + network 172.16.8.0/23 + neighbor 192.168.100.1 remote-as 65012 +! +line vty +! diff --git a/router-pod/config/smartx-microbox-ucsm-1.conf b/router-pod/config/smartx-microbox-ucsm-1.conf new file mode 100644 index 0000000..c13dc88 --- /dev/null +++ b/router-pod/config/smartx-microbox-ucsm-1.conf @@ -0,0 +1,16 @@ +! +! Zebra configuration saved from vty +! 2021/03/22 06:40:51 +! +hostname bgpd +password zebra +log file /etc/quagga/bgpd.log informational +log stdout +! +router bgp 65041 + bgp router-id 10.144.20.196 + network 172.16.10.0/23 + neighbor 192.168.100.1 remote-as 65012 +! +line vty +! diff --git a/router-pod/config/um-ncku-worker1.conf b/router-pod/config/um-ncku-worker1.conf new file mode 100644 index 0000000..4310a5c --- /dev/null +++ b/router-pod/config/um-ncku-worker1.conf @@ -0,0 +1,16 @@ +! +! Zebra configuration saved from vty +! 2021/03/22 06:40:51 +! +hostname bgpd +password zebra +log file /etc/quagga/bgpd.log informational +log stdout +! +router bgp 65052 + bgp router-id 10.144.145.193 + network 172.16.14.0/23 + neighbor 192.168.100.1 remote-as 65012 +! +line vty +! diff --git a/router-pod/config/um-ncu-worker1.conf b/router-pod/config/um-ncu-worker1.conf new file mode 100644 index 0000000..94b29c6 --- /dev/null +++ b/router-pod/config/um-ncu-worker1.conf @@ -0,0 +1,16 @@ +! +! Zebra configuration saved from vty +! 2021/03/22 06:40:51 +! +hostname bgpd +password zebra +log file /etc/quagga/bgpd.log informational +log stdout +! +router bgp 65051 + bgp router-id 10.144.23.130 + network 172.16.12.0/23 + neighbor 192.168.100.1 remote-as 65012 +! +line vty +! diff --git a/router-pod/config/um-quagga.conf b/router-pod/config/um-quagga.conf deleted file mode 100644 index e69de29..0000000 diff --git a/router-pod/config/um-sandbox-3.conf b/router-pod/config/um-sandbox-3.conf new file mode 100644 index 0000000..80c9e61 --- /dev/null +++ b/router-pod/config/um-sandbox-3.conf @@ -0,0 +1,21 @@ +! +! Zebra configuration saved from vty +! 2021/03/11 05:36:14 +! +hostname bgpd +password zebra +log stdout +! +router bgp 65012 + bgp router-id 10.144.227.165 + network 172.16.2.0/23 + neighbor 192.168.100.2 remote-as 65031 + neighbor 192.168.100.3 remote-as 65021 + neighbor 192.168.100.4 remote-as 65011 + neighbor 192.168.100.5 remote-as 65032 + neighbor 192.168.100.6 remote-as 65051 + neighbor 192.168.100.7 remote-as 65052 + neighbor 192.168.100.8 remote-as 65041 +! +line vty +! diff --git a/router-pod/um-router-pod.yaml b/router-pod/um-router-pod.yaml deleted file mode 100644 index 73e8e7e..0000000 --- a/router-pod/um-router-pod.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: router-pod-um -spec: - volumes: - - name: configDir - mountPath: "./router-pod/config/" - containers: - - name: quagga - image: - command: - volumeMounts: - - mountPath: "/config" - name: configDir - nodeName: k8s-worker-um-1