Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
lib /
python3 /
dist-packages /
sos /
report /
plugins /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
__init__.py
133.12
KB
-rw-r--r--
abrt.py
1.52
KB
-rw-r--r--
acpid.py
917
B
-rw-r--r--
activemq.py
1.69
KB
-rw-r--r--
alternatives.py
1.36
KB
-rw-r--r--
anaconda.py
1.37
KB
-rw-r--r--
anacron.py
782
B
-rw-r--r--
ansible.py
974
B
-rw-r--r--
apache.py
4.9
KB
-rw-r--r--
apparmor.py
1.05
KB
-rw-r--r--
apport.py
1.32
KB
-rw-r--r--
apt.py
1.5
KB
-rw-r--r--
arcconf.py
893
B
-rw-r--r--
ata.py
1016
B
-rw-r--r--
atomichost.py
1.31
KB
-rw-r--r--
auditd.py
1.73
KB
-rw-r--r--
autofs.py
2.24
KB
-rw-r--r--
azure.py
2.36
KB
-rw-r--r--
bcache.py
2.2
KB
-rw-r--r--
block.py
2.12
KB
-rw-r--r--
boom.py
1.05
KB
-rw-r--r--
boot.py
1.59
KB
-rw-r--r--
btrfs.py
739
B
-rw-r--r--
buildah.py
1.83
KB
-rw-r--r--
candlepin.py
5.69
KB
-rw-r--r--
canonical_livepatch.py
958
B
-rw-r--r--
ceph_ansible.py
949
B
-rw-r--r--
ceph_common.py
2.32
KB
-rw-r--r--
ceph_mds.py
2.94
KB
-rw-r--r--
ceph_mgr.py
3.33
KB
-rw-r--r--
ceph_mon.py
4.53
KB
-rw-r--r--
ceph_osd.py
3.13
KB
-rw-r--r--
ceph_rgw.py
1.33
KB
-rw-r--r--
cgroups.py
1.38
KB
-rw-r--r--
chrony.py
1.53
KB
-rw-r--r--
cifs.py
979
B
-rw-r--r--
clear_containers.py
2.48
KB
-rw-r--r--
cloud_init.py
1000
B
-rw-r--r--
cman.py
1.8
KB
-rw-r--r--
cobbler.py
1.13
KB
-rw-r--r--
cockpit.py
882
B
-rw-r--r--
collectd.py
2.19
KB
-rw-r--r--
collectl.py
752
B
-rw-r--r--
composer.py
1.48
KB
-rw-r--r--
conntrack.py
1.91
KB
-rw-r--r--
console.py
871
B
-rw-r--r--
container_log.py
1.07
KB
-rw-r--r--
containers_common.py
2.51
KB
-rw-r--r--
convert2rhel.py
866
B
-rw-r--r--
corosync.py
2.28
KB
-rw-r--r--
crio.py
3.59
KB
-rw-r--r--
cron.py
1.01
KB
-rw-r--r--
crypto.py
1.38
KB
-rw-r--r--
cs.py
4.38
KB
-rw-r--r--
ctdb.py
1.44
KB
-rw-r--r--
cups.py
1.2
KB
-rw-r--r--
date.py
850
B
-rw-r--r--
dbus.py
877
B
-rw-r--r--
dellrac.py
1.69
KB
-rw-r--r--
devicemapper.py
1
KB
-rw-r--r--
devices.py
740
B
-rw-r--r--
dhcp.py
1.06
KB
-rw-r--r--
discovery.py
1023
B
-rw-r--r--
distupgrade.py
1.51
KB
-rw-r--r--
dlm.py
1.49
KB
-rw-r--r--
dmraid.py
1.29
KB
-rw-r--r--
dnf.py
4.54
KB
-rw-r--r--
docker.py
4.72
KB
-rw-r--r--
docker_distribution.py
1.3
KB
-rw-r--r--
dovecot.py
1021
B
-rw-r--r--
dpkg.py
1.14
KB
-rw-r--r--
dracut.py
902
B
-rw-r--r--
drbd.py
955
B
-rw-r--r--
ds.py
3.45
KB
-rw-r--r--
ebpf.py
2.99
KB
-rw-r--r--
elastic.py
2.26
KB
-rw-r--r--
etcd.py
2.5
KB
-rw-r--r--
fcoe.py
1018
B
-rw-r--r--
fibrechannel.py
1.77
KB
-rw-r--r--
filesys.py
3.31
KB
-rw-r--r--
firewall_tables.py
4.2
KB
-rw-r--r--
firewalld.py
1.82
KB
-rw-r--r--
flatpak.py
1.22
KB
-rw-r--r--
foreman.py
14.07
KB
-rw-r--r--
foreman_installer.py
3.84
KB
-rw-r--r--
foreman_proxy.py
2.38
KB
-rw-r--r--
freeipmi.py
896
B
-rw-r--r--
frr.py
677
B
-rw-r--r--
fwupd.py
1.33
KB
-rw-r--r--
gcp.py
5.34
KB
-rw-r--r--
gdm.py
735
B
-rw-r--r--
gfs2.py
1.04
KB
-rw-r--r--
gluster.py
5.16
KB
-rw-r--r--
gluster_block.py
1.06
KB
-rw-r--r--
gnocchi.py
3.61
KB
-rw-r--r--
grafana.py
1.46
KB
-rw-r--r--
grub.py
988
B
-rw-r--r--
grub2.py
2.72
KB
-rw-r--r--
gssproxy.py
823
B
-rw-r--r--
haproxy.py
2.29
KB
-rw-r--r--
hardware.py
1.01
KB
-rw-r--r--
host.py
1.63
KB
-rw-r--r--
hpasm.py
898
B
-rw-r--r--
hpssm.py
2.64
KB
-rw-r--r--
hts.py
700
B
-rw-r--r--
hyperv.py
886
B
-rw-r--r--
i18n.py
759
B
-rw-r--r--
infiniband.py
2.56
KB
-rw-r--r--
insights.py
2.16
KB
-rw-r--r--
ipa.py
6.82
KB
-rw-r--r--
ipmitool.py
1.56
KB
-rw-r--r--
iprconfig.py
4.47
KB
-rw-r--r--
ipvs.py
1.04
KB
-rw-r--r--
iscsi.py
1.98
KB
-rw-r--r--
iscsitarget.py
1.29
KB
-rw-r--r--
jars.py
5.12
KB
-rw-r--r--
java.py
978
B
-rw-r--r--
juju.py
2.42
KB
-rw-r--r--
kata_containers.py
1.5
KB
-rw-r--r--
kdump.py
3.21
KB
-rw-r--r--
keepalived.py
855
B
-rw-r--r--
kernel.py
5.14
KB
-rw-r--r--
kernelrt.py
1.42
KB
-rw-r--r--
keyutils.py
894
B
-rw-r--r--
kimchi.py
1009
B
-rw-r--r--
kpatch.py
1.03
KB
-rw-r--r--
krb5.py
1.29
KB
-rw-r--r--
kubernetes.py
8.01
KB
-rw-r--r--
kvm.py
954
B
-rw-r--r--
landscape.py
3.11
KB
-rw-r--r--
ldap.py
3.12
KB
-rw-r--r--
leapp.py
1.04
KB
-rw-r--r--
libraries.py
1.54
KB
-rw-r--r--
libreswan.py
2.47
KB
-rw-r--r--
libvirt.py
3.12
KB
-rw-r--r--
lightdm.py
1.11
KB
-rw-r--r--
lilo.py
716
B
-rw-r--r--
login.py
1
KB
-rw-r--r--
logrotate.py
1.05
KB
-rw-r--r--
logs.py
3.68
KB
-rw-r--r--
lstopo.py
1.17
KB
-rw-r--r--
lustre.py
1.92
KB
-rw-r--r--
lvm2.py
3.52
KB
-rw-r--r--
lxd.py
1.86
KB
-rw-r--r--
maas.py
4.02
KB
-rw-r--r--
manageiq.py
2.86
KB
-rw-r--r--
md.py
1.16
KB
-rw-r--r--
megacli.py
1.02
KB
-rw-r--r--
memcached.py
1.18
KB
-rw-r--r--
memory.py
1.36
KB
-rw-r--r--
migration_results.py
637
B
-rw-r--r--
mongodb.py
2.03
KB
-rw-r--r--
monit.py
2.38
KB
-rw-r--r--
mpt.py
732
B
-rw-r--r--
mssql.py
3.23
KB
-rw-r--r--
multipath.py
1020
B
-rw-r--r--
mvcli.py
978
B
-rw-r--r--
mysql.py
3.83
KB
-rw-r--r--
named.py
2.58
KB
-rw-r--r--
navicli.py
2.49
KB
-rw-r--r--
networking.py
10.96
KB
-rw-r--r--
networkmanager.py
4.58
KB
-rw-r--r--
nfs.py
1.16
KB
-rw-r--r--
nfsganesha.py
1.21
KB
-rw-r--r--
nginx.py
1.18
KB
-rw-r--r--
nis.py
812
B
-rw-r--r--
nodejs.py
1.18
KB
-rw-r--r--
npm.py
2.17
KB
-rw-r--r--
nscd.py
965
B
-rw-r--r--
nss.py
885
B
-rw-r--r--
ntb.py
937
B
-rw-r--r--
ntp.py
1.44
KB
-rw-r--r--
numa.py
1.46
KB
-rw-r--r--
nvidia.py
1.57
KB
-rw-r--r--
nvme.py
1.24
KB
-rw-r--r--
nvmetcli.py
977
B
-rw-r--r--
oddjob.py
871
B
-rw-r--r--
omnipath_client.py
2.04
KB
-rw-r--r--
omnipath_manager.py
2.43
KB
-rw-r--r--
omsa.py
1.73
KB
-rw-r--r--
opencl.py
692
B
-rw-r--r--
opencontrail.py
1.32
KB
-rw-r--r--
opendaylight.py
1.38
KB
-rw-r--r--
opengl.py
694
B
-rw-r--r--
openhpi.py
881
B
-rw-r--r--
openshift.py
16.96
KB
-rw-r--r--
openshift_ovn.py
1.63
KB
-rw-r--r--
openssl.py
1.45
KB
-rw-r--r--
openstack_ansible.py
1.32
KB
-rw-r--r--
openstack_aodh.py
3.76
KB
-rw-r--r--
openstack_barbican.py
1.75
KB
-rw-r--r--
openstack_ceilometer.py
3.04
KB
-rw-r--r--
openstack_cinder.py
4.79
KB
-rw-r--r--
openstack_database.py
2.41
KB
-rw-r--r--
openstack_designate.py
3.15
KB
-rw-r--r--
openstack_glance.py
3.95
KB
-rw-r--r--
openstack_heat.py
4.56
KB
-rw-r--r--
openstack_horizon.py
3.51
KB
-rw-r--r--
openstack_instack.py
6.29
KB
-rw-r--r--
openstack_ironic.py
8.15
KB
-rw-r--r--
openstack_keystone.py
4.53
KB
-rw-r--r--
openstack_manila.py
2.99
KB
-rw-r--r--
openstack_neutron.py
4.6
KB
-rw-r--r--
openstack_nova.py
8.17
KB
-rw-r--r--
openstack_novajoin.py
1.36
KB
-rw-r--r--
openstack_octavia.py
5.03
KB
-rw-r--r--
openstack_placement.py
3.72
KB
-rw-r--r--
openstack_sahara.py
2.7
KB
-rw-r--r--
openstack_swift.py
2.72
KB
-rw-r--r--
openstack_tripleo.py
1.66
KB
-rw-r--r--
openstack_trove.py
2.3
KB
-rw-r--r--
opensvc.py
2.61
KB
-rw-r--r--
openvswitch.py
16
KB
-rw-r--r--
origin.py
8.73
KB
-rw-r--r--
os_net_config.py
743
B
-rw-r--r--
ostree.py
974
B
-rw-r--r--
ovirt.py
9.56
KB
-rw-r--r--
ovirt_engine_backup.py
1.76
KB
-rw-r--r--
ovirt_hosted_engine.py
2.16
KB
-rw-r--r--
ovirt_imageio.py
1.56
KB
-rw-r--r--
ovirt_node.py
1.62
KB
-rw-r--r--
ovirt_provider_ovn.py
1.16
KB
-rw-r--r--
ovn_central.py
6.15
KB
-rw-r--r--
ovn_host.py
1.75
KB
-rw-r--r--
pacemaker.py
5.18
KB
-rw-r--r--
pam.py
1.34
KB
-rw-r--r--
pci.py
1.26
KB
-rw-r--r--
pcp.py
6.22
KB
-rw-r--r--
perccli.py
1.84
KB
-rw-r--r--
peripety.py
1.19
KB
-rw-r--r--
perl.py
662
B
-rw-r--r--
pmem.py
3.34
KB
-rw-r--r--
podman.py
5.44
KB
-rw-r--r--
postfix.py
2.71
KB
-rw-r--r--
postgresql.py
5.34
KB
-rw-r--r--
powerpath.py
1.82
KB
-rw-r--r--
powerpc.py
3.15
KB
-rw-r--r--
ppp.py
848
B
-rw-r--r--
procenv.py
710
B
-rw-r--r--
process.py
3.15
KB
-rw-r--r--
processor.py
2.01
KB
-rw-r--r--
psacct.py
1.33
KB
-rw-r--r--
ptp.py
817
B
-rw-r--r--
pulp.py
7.29
KB
-rw-r--r--
pulpcore.py
7.17
KB
-rw-r--r--
puppet.py
2.12
KB
-rw-r--r--
pxe.py
1.42
KB
-rw-r--r--
python.py
4.01
KB
-rw-r--r--
qaucli.py
1.37
KB
-rw-r--r--
qpid.py
3.54
KB
-rw-r--r--
qpid_dispatch.py
2.19
KB
-rw-r--r--
qt.py
809
B
-rw-r--r--
quagga.py
755
B
-rw-r--r--
rabbitmq.py
2.51
KB
-rw-r--r--
radius.py
1.38
KB
-rw-r--r--
rasdaemon.py
996
B
-rw-r--r--
rear.py
1.23
KB
-rw-r--r--
redis.py
2.24
KB
-rw-r--r--
release.py
1.21
KB
-rw-r--r--
rhcos.py
1.36
KB
-rw-r--r--
rhui.py
1.98
KB
-rw-r--r--
rhv_analyzer.py
1.13
KB
-rw-r--r--
rpm.py
2.34
KB
-rw-r--r--
rpmostree.py
1.12
KB
-rw-r--r--
ruby.py
813
B
-rw-r--r--
s390.py
2.38
KB
-rw-r--r--
salt.py
1.08
KB
-rw-r--r--
saltmaster.py
1.11
KB
-rw-r--r--
samba.py
1.61
KB
-rw-r--r--
sanlock.py
1.01
KB
-rw-r--r--
saphana.py
2.5
KB
-rw-r--r--
sapnw.py
5.51
KB
-rw-r--r--
sar.py
3.97
KB
-rw-r--r--
sas3ircu.py
1.22
KB
-rw-r--r--
scsi.py
2.34
KB
-rw-r--r--
seagate_ses.py
2.01
KB
-rw-r--r--
selinux.py
1.96
KB
-rw-r--r--
sendmail.py
1.22
KB
-rw-r--r--
services.py
1.44
KB
-rw-r--r--
shmcli.py
3.98
KB
-rw-r--r--
skydive.py
2.28
KB
-rw-r--r--
smartcard.py
1.48
KB
-rw-r--r--
smclient.py
1.87
KB
-rw-r--r--
snap.py
969
B
-rw-r--r--
snapper.py
730
B
-rw-r--r--
snmp.py
1
KB
-rw-r--r--
sos_extras.py
3.64
KB
-rw-r--r--
soundcard.py
1.12
KB
-rw-r--r--
squid.py
1.28
KB
-rw-r--r--
ssh.py
2.96
KB
-rw-r--r--
ssmtp.py
980
B
-rw-r--r--
sssd.py
2.4
KB
-rw-r--r--
storageconsole.py
1.66
KB
-rw-r--r--
storcli.py
1.83
KB
-rw-r--r--
stratis.py
1.12
KB
-rw-r--r--
subscription_manager.py
4.31
KB
-rw-r--r--
sudo.py
873
B
-rw-r--r--
sunrpc.py
818
B
-rw-r--r--
symcli.py
3.46
KB
-rw-r--r--
system.py
1.28
KB
-rw-r--r--
systemd.py
3.51
KB
-rw-r--r--
systemtap.py
881
B
-rw-r--r--
sysvipc.py
886
B
-rw-r--r--
targetcli.py
1009
B
-rw-r--r--
teamd.py
1.07
KB
-rw-r--r--
tftpserver.py
840
B
-rw-r--r--
tigervnc.py
1.67
KB
-rw-r--r--
tomcat.py
1.83
KB
-rw-r--r--
tuned.py
1.09
KB
-rw-r--r--
ubuntu.py
1.34
KB
-rw-r--r--
udev.py
758
B
-rw-r--r--
udisks.py
804
B
-rw-r--r--
ufw.py
987
B
-rw-r--r--
unbound.py
899
B
-rw-r--r--
unity.py
703
B
-rw-r--r--
unpackaged.py
2.97
KB
-rw-r--r--
usb.py
731
B
-rw-r--r--
usbguard.py
813
B
-rw-r--r--
validation_framework.py
1.5
KB
-rw-r--r--
vdo.py
976
B
-rw-r--r--
vdsm.py
4.88
KB
-rw-r--r--
veritas.py
1.32
KB
-rw-r--r--
vhostmd.py
1.7
KB
-rw-r--r--
virsh.py
2.58
KB
-rw-r--r--
virtwho.py
985
B
-rw-r--r--
vmware.py
1.63
KB
-rw-r--r--
vsftpd.py
724
B
-rw-r--r--
vulkan.py
700
B
-rw-r--r--
watchdog.py
2.81
KB
-rw-r--r--
wireless.py
886
B
-rw-r--r--
x11.py
1.38
KB
-rw-r--r--
xdp.py
659
B
-rw-r--r--
xen.py
3.49
KB
-rw-r--r--
xfs.py
1020
B
-rw-r--r--
xinetd.py
837
B
-rw-r--r--
zfs.py
1.05
KB
-rw-r--r--
zvm.py
2.92
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : openvswitch.py
# Copyright (C) 2014 Adam Stokes <adam.stokes@ubuntu.com> # This file is part of the sos project: https://github.com/sosreport/sos # # This copyrighted material is made available to anyone wishing to use, # modify, copy, or redistribute it subject to the terms and conditions of # version 2 of the GNU General Public License. # # See the LICENSE file in the source distribution for further information. from sos.report.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin from os import environ import re class OpenVSwitch(Plugin): short_desc = 'OpenVSwitch networking' plugin_name = "openvswitch" profiles = ('network', 'virt') def setup(self): all_logs = self.get_option("all_logs") log_dirs = [ '/var/log/openvswitch/', '/usr/local/var/log/openvswitch/', ] dpdk_enabled = self.collect_cmd_output( "ovs-vsctl -t 5 get Open_vSwitch . other_config:dpdk-init") check_dpdk = (dpdk_enabled["status"] == 0 and dpdk_enabled["output"].startswith('"true"')) check_6wind = any([self.is_installed(p) for p in ['6windgate-fp', 'nuage-openvswitch']]) actl = "ovs-appctl" files_6wind = [ "/etc/systemd/system/multi-user.target.wants/openvswitch.service", "/etc/sysctl.d/60-6wind-system-auto-reboot.conf", "/etc/openvswitch/system-id.conf", "/etc/openvswitch/*.db", "/etc/ld.so.conf.d/linux-fp-sync-fptun.conf", "/etc/NetworkManager/conf.d/fpn0.conf", "/etc/default/openvswitch", "/etc/logrotate.d/openvswitch", "/etc/linux-fp-sync.env", "/etc/fp-daemons.env", "/etc/fp-vdev.ini", "/etc/fpm.env", "/etc/6WINDGate/fp.config", "/etc/6WINDGate/fpnsdk.config", "/etc/dms.d/fp-dms.conf", "/etc/dms.d/fpmd-dms.conf", "/etc/dms.d/fpsd-dms.conf", "/etc/fast-path.env", "/etc/fps-fp.env", ] if environ.get('OVS_LOGDIR'): log_dirs.append(environ.get('OVS_LOGDIR')) if not all_logs: self.add_copy_spec([ self.path_join(ld, '*.log') for ld in log_dirs ]) else: self.add_copy_spec(log_dirs) self.add_copy_spec([ "/run/openvswitch/ovsdb-server.pid", "/run/openvswitch/ovs-vswitchd.pid", "/run/openvswitch/ovs-monitor-ipsec.pid" ]) self.add_copy_spec([ self.path_join('/usr/local/etc/openvswitch', 'conf.db'), self.path_join('/etc/openvswitch', 'conf.db'), self.path_join('/var/lib/openvswitch', 'conf.db'), ]) ovs_dbdir = environ.get('OVS_DBDIR') if ovs_dbdir: self.add_copy_spec(self.path_join(ovs_dbdir, 'conf.db')) self.add_cmd_output([ # The '-t 5' adds an upper bound on how long to wait to connect # to the Open vSwitch server, avoiding hangs when running sos. "ovs-vsctl -t 5 show", # List the contents of important runtime directories "ls -laZ /run/openvswitch", "ls -laZ /dev/hugepages/", "ls -laZ /dev/vfio", "ls -laZ /var/lib/vhost_sockets", # List devices and their drivers "dpdk_nic_bind --status", "dpdk-devbind.py --status", "driverctl list-devices", "driverctl list-overrides", # Capture a list of all bond devices "ovs-appctl bond/list", # Capture more details from bond devices "ovs-appctl bond/show", # Capture LACP details "ovs-appctl lacp/show", "ovs-appctl lacp/show-stats", # Capture coverage stats" "ovs-appctl coverage/show", # Capture cached routes "ovs-appctl ovs/route/show", # Capture tnl arp table" "ovs-appctl tnl/arp/show", # Capture a list of listening ports" "ovs-appctl tnl/ports/show -v", # Capture upcall information "ovs-appctl upcall/show", # Capture DPDK and other parameters "ovs-vsctl -t 5 get Open_vSwitch . other_config", # Capture OVS list "ovs-vsctl -t 5 list Open_vSwitch", # Capture OVS interface list "ovs-vsctl -t 5 list interface", # Capture OVS detailed information from all the bridges "ovs-vsctl -t 5 list bridge", # Capture OVS datapath list "ovs-vsctl -t 5 list datapath", # Capture DPDK queue to pmd mapping "ovs-appctl dpif-netdev/pmd-rxq-show", # Capture DPDK pmd stats "ovs-appctl dpif-netdev/pmd-stats-show", # Capture DPDK pmd performance counters "ovs-appctl dpif-netdev/pmd-perf-show", # Capture ofproto tunnel configs "ovs-appctl ofproto/list-tunnels", # Capture ipsec tunnel information "ovs-appctl -t ovs-monitor-ipsec tunnels/show", "ovs-appctl -t ovs-monitor-ipsec xfrm/state", "ovs-appctl -t ovs-monitor-ipsec xfrm/policies", # Capture OVS offload enabled flows "ovs-dpctl dump-flows --name -m type=offloaded", # Capture OVS slowdatapth flows "ovs-dpctl dump-flows --name -m type=ovs", # Capture dpcls implementations "ovs-appctl dpif-netdev/subtable-lookup-prio-get", # Capture dpif implementations "ovs-appctl dpif-netdev/dpif-impl-get", # Capture miniflow extract implementations "ovs-appctl dpif-netdev/miniflow-parser-get" ]) # Gather systemd services logs self.add_journal(units="openvswitch") self.add_journal(units="openvswitch-nonetwork") self.add_journal(units="ovs-vswitchd") self.add_journal(units="ovsdb-server") self.add_journal(units="ovs-configuration") self.add_journal(units="openvswitch-ipsec") if check_6wind: self.add_copy_spec(files_6wind) self.add_cmd_output([ # Various fast-path stats "fp-cli fp-vswitch-stats", "fp-cli dpdk-core-port-mapping", "fp-cpu-usage", "fp-cli fp-vswitch-masks", "fp-cli fp-vswitch-flows", "fp-shmem-dpvi", "fp-cli stats non-zero", "fp-cli stats", "fp-cli dpdk-cp-filter-budget", "ovs-appctl vm/port-detailed-show", "ovs-appctl upcall/show", "fp-cli nfct4", "ovs-appctl vm/port-vip-list-show", "fp-shmem-ports -s", "ovs-dpctl show -s", "fpcmd fp-vswitch-flows", "fp-cli fp-vswitch-ports percore", "fp-cli dpdk-debug-pool", "fp-cli dump-size", "fp-cli conf runtime", "fp-cli conf compiled", "fp-cli iface", "ovs-appctl memory/show", ]) self.add_journal(units="virtual-accelerator") for table in ['filter', 'mangle', 'raw', 'nat']: self.add_cmd_output(["fpcmd nf4-rules %s" % table]) # 6wind doesn't care on which bridge the ports are, there's only # one bridge and it's alubr0 port_list = self.collect_cmd_output("fp-cli fp-vswitch-ports") if port_list['status'] == 0: for port in port_list['output'].splitlines(): m = re.match(r'^([\d]+):[\s]+([^\s]+)', port) if m: port_name = m.group(2) self.add_cmd_output([ "fp-cli dpdk-cp-filter-budget %s" % port_name, ]) # Gather the datapath information for each datapath dp_list_result = self.collect_cmd_output('ovs-appctl dpctl/dump-dps') if dp_list_result['status'] == 0: for dp in dp_list_result['output'].splitlines(): self.add_cmd_output([ "%s dpctl/show -s %s" % (actl, dp), "%s dpctl/dump-flows -m %s" % (actl, dp), "%s dpctl/dump-conntrack -m %s" % (actl, dp), "%s dpctl/ct-stats-show -m %s" % (actl, dp), "%s dpctl/ipf-get-status %s" % (actl, dp), ]) # Gather additional output for each OVS bridge on the host. br_list_result = self.collect_cmd_output("ovs-vsctl -t 5 list-br") ofp_ver_result = self.collect_cmd_output("ovs-ofctl -t 5 --version") if br_list_result['status'] == 0: for br in br_list_result['output'].splitlines(): self.add_cmd_output([ "%s bridge/dump-flows --offload-stats %s" % (actl, br), "%s dpif/show-dp-features %s" % (actl, br), "%s fdb/show %s" % (actl, br), "%s fdb/stats-show %s" % (actl, br), "%s mdb/show %s" % (actl, br), "ovs-ofctl dump-flows %s" % br, "ovs-ofctl dump-ports-desc %s" % br, "ovs-ofctl dump-ports %s" % br, "ovs-ofctl queue-get-config %s" % br, "ovs-ofctl queue-stats %s" % br, "ovs-ofctl show %s" % br, "ovs-ofctl dump-groups %s" % br, ]) # Flow protocols currently supported flow_versions = [ "OpenFlow10", "OpenFlow11", "OpenFlow12", "OpenFlow13", "OpenFlow14", "OpenFlow15" ] # Flow protocol hex identifiers ofp_versions = { 0x01: "OpenFlow10", 0x02: "OpenFlow11", 0x03: "OpenFlow12", 0x04: "OpenFlow13", 0x05: "OpenFlow14", 0x06: "OpenFlow15", } # List protocols currently in use, if any ovs_list_bridge_cmd = "ovs-vsctl -t 5 list bridge %s" % br br_info = self.collect_cmd_output(ovs_list_bridge_cmd) br_protos = [] for line in br_info['output'].splitlines(): if "protocols" in line: br_protos_ln = line[line.find("[")+1:line.find("]")] br_protos = br_protos_ln.replace('"', '').split(", ") # If 'list bridge' yeilded no protocols, use the range of # protocols enabled by default on this version of ovs. if br_protos == [''] and ofp_ver_result['output']: ofp_version_range = ofp_ver_result['output'].splitlines() ver_range = [] for line in ofp_version_range: if "OpenFlow versions" in line: v = line.split("OpenFlow versions ")[1].split(":") ver_range = range(int(v[0], 16), int(v[1], 16)+1) for protocol in ver_range: if protocol in ofp_versions: br_protos.append(ofp_versions[protocol]) # Collect flow information for relevant protocol versions only for flow in flow_versions: if flow in br_protos: self.add_cmd_output([ "ovs-ofctl -O %s show %s" % (flow, br), "ovs-ofctl -O %s dump-groups %s" % (flow, br), "ovs-ofctl -O %s dump-group-stats %s" % (flow, br), "ovs-ofctl -O %s dump-flows %s" % (flow, br), "ovs-ofctl -O %s dump-tlv-map %s" % (flow, br), "ovs-ofctl -O %s dump-ports-desc %s" % (flow, br) ]) port_list_result = self.exec_cmd( "ovs-vsctl -t 5 list-ports %s" % br ) if port_list_result['status'] == 0: for port in port_list_result['output'].splitlines(): self.add_cmd_output([ "ovs-appctl cfm/show %s" % port, "ovs-appctl qos/show %s" % port, # Not all ports are "bond"s, but all "bond"s are # a single port "ovs-appctl bond/show %s" % port, # In the case of IPSec, we should pull the config "ovs-vsctl get Interface %s options" % port, ]) if check_dpdk: self.add_cmd_output( "ovs-appctl netdev-dpdk/get-mempool-info %s" % port ) if check_dpdk: iface_list_result = self.exec_cmd( "ovs-vsctl -t 5 list-ifaces %s" % br ) if iface_list_result['status'] == 0: for iface in iface_list_result['output'].splitlines(): self.add_cmd_output( "ovs-appctl netdev-dpdk/get-mempool-info %s" % iface) if check_6wind: self.add_cmd_output([ "%s evpn/vip-list-show %s" % (actl, br), "%s bridge/dump-conntracks-summary %s" % (actl, br), "%s bridge/acl-table ingress/egress %s" % (actl, br), "%s bridge/acl-table %s" % (actl, br), "%s ofproto/show %s" % (actl, br), ]) vrf_list = self.collect_cmd_output( "%s vrf/list %s" % (actl, br)) if vrf_list['status'] == 0: vrfs = vrf_list['output'].split()[1:] for vrf in vrfs: self.add_cmd_output([ "%s vrf/route-table %s" % (actl, vrf), ]) evpn_list = self.collect_cmd_output( "ovs-appctl evpn/list %s" % br) if evpn_list['status'] == 0: evpns = evpn_list['output'].split()[1:] for evpn in evpns: self.add_cmd_output([ "%s evpn/mac-table %s" % (actl, evpn), "%s evpn/arp-table %s" % (actl, evpn), "%s evpn/dump-flows %s %s" % (actl, br, evpn), "%s evpn/dhcp-pool-show %s %s" % ( actl, br, evpn), "%s evpn/dhcp-relay-show %s %s" % ( actl, br, evpn), "%s evpn/dhcp-static-show %s %s" % ( actl, br, evpn), "%s evpn/dhcp-table-show %s %s" % ( actl, br, evpn), "%s evpn/proxy-arp-filter-list %s %s" % ( actl, br, evpn), "%s evpn/show %s %s" % (actl, br, evpn), "%s port/dscp-table %s %s" % (actl, br, evpn), ]) class RedHatOpenVSwitch(OpenVSwitch, RedHatPlugin): packages = ('openvswitch', 'openvswitch[2-9].*', 'openvswitch-dpdk', 'nuage-openvswitch' '6windgate-fp') class DebianOpenVSwitch(OpenVSwitch, DebianPlugin, UbuntuPlugin): packages = ('openvswitch-switch', 'nuage-openvswitch') # vim: set et ts=4 sw=4 :
Close