__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
# Copyright (C) 2014 Red Hat, Inc. Neependra Khare <nkhare@redhat.com>
# Copyright (C) 2014 Red Hat, Inc. Bryn M. Reeves <bmr@redhat.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 fnmatch import translate
import re
import json
import os
from sos.report.plugins import (Plugin, RedHatPlugin, DebianPlugin,
UbuntuPlugin, PluginOpt)
KUBE_PACKAGES = (
'kubelet',
'kubernetes',
)
KUBE_SVCS = (
'kubelet',
'kube-apiserver',
'kube-proxy',
'kube-scheduler',
'kube-controller-manager',
)
KUBECONFIGS = (
'/etc/kubernetes/admin.conf',
)
class Kubernetes(Plugin):
short_desc = 'Kubernetes container orchestration platform'
plugin_name = "kubernetes"
profiles = ('container',)
plugin_timeout = 1200
config_files = [
"/etc/kubernetes",
"/run/flannel",
"/var/lib/kubelet/config.yaml",
"/var/lib/kubelet/kubeadm-flags.env",
"/var/lib/kubelet/*_manager_state",
]
forbidden_paths = [
"/etc/kubernetes/pki",
]
kube_system_logs = [
"/var/log/pods/kube-system_etcd-*",
"/var/log/pods/kube-system_kube-apiserver-*",
"/var/log/pods/kube-system_kube-controller-manager-*",
"/var/log/pods/kube-system_kube-scheduler-*",
]
resources = [
'events',
'deployments',
'ingresses',
'pods',
'pvc',
'services',
'daemonsets',
'replicasets',
'endpoints',
'statefulsets',
'configmaps',
'serviceaccounts',
'secrets',
'jobs',
'cronjobs',
'clusterroles',
'clusterrolebindings',
'limitranges',
'resourcequotas',
]
# these are not namespaced, must pull separately.
global_resources = [
'sc',
'pv',
'roles',
'rolebindings',
]
option_list = [
PluginOpt('all', default=False,
desc='collect all namespace output separately'),
PluginOpt('describe', default=False,
desc='collect describe output of all resources'),
PluginOpt('kubelogs', default=False,
desc='copy some kube-system pod logs without using the API'),
PluginOpt('podlogs', default=False,
desc='capture stdout/stderr logs from pods using the API'),
PluginOpt('podlogs-filter', default='', val_type=str,
desc='only collect logs from pods matching this pattern')
]
kube_cmd = "kubectl"
def set_kubeconfig(self):
if os.environ.get('KUBECONFIG'):
return
for _kconf in self.files:
if self.path_exists(_kconf):
self.kube_cmd += f" --kubeconfig={_kconf}"
break
def check_is_master(self):
""" Check if this is the master node """
return any(self.path_exists(f) for f in self.files)
def setup(self):
self.add_copy_spec(self.config_files)
self.add_forbidden_path(self.forbidden_paths)
if self.get_option('kubelogs'):
self.add_copy_spec(self.kube_system_logs)
self.add_env_var([
'KUBECONFIG',
'KUBERNETES_HTTP_PROXY',
'KUBERNETES_HTTPS_PROXY',
'KUBERNETES_NO_PROXY',
])
# We can only grab kubectl output from the master
if not self.check_is_master():
return
for subcmd in ['version', 'config view']:
self.add_cmd_output(
f'{self.kube_cmd} {subcmd}',
subdir='cluster-info'
)
if self.get_option('all'):
self.add_cmd_output([
f"{self.kube_cmd} get -o json {res}"
for res in self.global_resources
], subdir='cluster-info')
else:
self.add_cmd_output([
f"{self.kube_cmd} get {res}"
for res in self.global_resources
], subdir='cluster-info')
# Get detailed node information
nodes = self.collect_cmd_output(f"{self.kube_cmd} get nodes",
subdir='cluster-info')
if nodes['status'] == 0 and self.get_option('describe'):
for line in nodes['output'].splitlines()[1:]:
# find first word in the line and ignore empty+blank lines
words = line.split()
if not words:
continue
node = words[0]
self.add_cmd_output(
f"{self.kube_cmd} describe node {node}",
subdir='cluster-info'
)
self.add_cmd_output([
f"{self.kube_cmd} get -o json nodes",
], subdir='cluster-info')
# Also collect master metrics
self.add_cmd_output(
f"{self.kube_cmd} get --raw /metrics",
subdir='cluster-info'
)
# CNV is not part of the base installation, but can be added
if self.is_installed('kubevirt-virtctl'):
self.resources.extend(['vms', 'vmis'])
self.add_cmd_output('virtctl version')
self.collect_per_resource_details()
self.collect_all_resources()
def collect_per_resource_details(self):
""" Collect details about each resource in all namespaces """
# get all namespaces in use
kns = self.collect_cmd_output(f'{self.kube_cmd} get namespaces',
subdir='cluster-info')
# namespace is the 1st word on line, until the line has spaces only
kn_output = kns['output'].splitlines()[1:]
knsps = [n.split()[0] for n in kn_output if n and len(n.split())]
for nspace in knsps:
knsp = f'--namespace={nspace}'
if self.get_option('all'):
k_cmd = f'{self.kube_cmd} get -o json {knsp}'
for res in self.resources:
self.add_cmd_output(
f'{k_cmd} {res}',
subdir=f'cluster-info/{nspace}'
)
if self.get_option('describe'):
# need to drop json formatting for this
k_cmd = f'{self.kube_cmd} {knsp}'
for res in self.resources:
if res == 'events':
continue
ret = self.exec_cmd(f'{k_cmd} get {res}')
if ret['status'] == 0:
k_list = [k.split()[0] for k in
ret['output'].splitlines()[1:]]
for item in k_list:
k_cmd = f'{self.kube_cmd} {knsp}'
self.add_cmd_output(
f'{k_cmd} describe {res} {item}',
subdir=f'cluster-info/{nspace}/{res}'
)
if self.get_option('podlogs'):
self._get_pod_logs(knsp)
def _get_pod_logs(self, namespace):
k_cmd = f'{self.kube_cmd} get -o json {namespace}'
ret = self.exec_cmd(f'{k_cmd} pods')
if ret['status'] == 0:
pods = json.loads(ret['output'])
# allow shell-style regex
reg = (translate(self.get_option('podlogs-filter')) if
self.get_option('podlogs-filter') else None)
for pod in pods["items"]:
if reg and not re.match(reg, pod["metadata"]["name"]):
continue
_subdir = (f'cluster-info/'
f'{pod["metadata"]["namespace"]}/podlogs/'
f'{pod["metadata"]["name"]}')
if "containers" in pod["spec"]:
for cont in pod["spec"]["containers"]:
pod_name = pod["metadata"]["name"]
cont_name = cont["name"]
self.add_cmd_output(
f'{self.kube_cmd} {namespace} logs '
f'{pod_name} -c {cont_name}',
subdir=_subdir
)
if "initContainers" in pod["spec"]:
for cont in pod["spec"]["initContainers"]:
pod_name = pod["metadata"]["name"]
cont_name = cont["name"]
self.add_cmd_output(
f'{self.kube_cmd} {namespace} logs '
f'{pod_name} -c {cont_name}',
subdir=_subdir
)
def collect_all_resources(self):
""" Collect details about all resources """
if not self.get_option('all'):
k_cmd = f'{self.kube_cmd} get --all-namespaces=true'
for res in self.resources:
self.add_cmd_output(
f'{k_cmd} {res}',
subdir='cluster-info'
)
def postproc(self):
# First, clear sensitive data from the json output collected.
# This will mask values when the "name" looks susceptible of
# values worth obfuscating, i.e. if the name contains strings
# like "pass", "pwd", "key" or "token"
env_regexp = r'(?P<var>{\s*"name":\s*[^,]*' \
r'(pass|pwd|key|token|cred|PASS|PWD|KEY)[^,]*,\s*"value":)[^}]*'
self.do_cmd_output_sub(self.kube_cmd, env_regexp,
r'\g<var> "********"')
# Next, we need to handle the private keys and certs in some
# output that is not hit by the previous iteration.
self.do_cmd_private_sub(self.kube_cmd)
pathexp = fr'^({"|".join(self.config_files)})'
self.do_file_private_sub(pathexp)
# clear base64 encoded PEM from kubeconfigs files
regexp = r'LS0tLS1CRUdJ[A-Za-z0-9+/=]+'
subst = '***** SCRUBBED BASE64 PEM *****'
pathexp = fr'^({"|".join(list(self.files)+self.config_files)})'
self.do_path_regex_sub(pathexp, regexp, subst)
class RedHatKubernetes(Kubernetes, RedHatPlugin):
packages = KUBE_PACKAGES
files = KUBECONFIGS
services = KUBE_SVCS
def check_enabled(self):
# do not run at the same time as the openshift plugin
if self.is_installed("openshift-hyperkube"):
return False
return super().check_enabled()
def setup(self):
self.set_kubeconfig()
super().setup()
class UbuntuKubernetes(Kubernetes, UbuntuPlugin, DebianPlugin):
packages = KUBE_PACKAGES + (
'k8s',
)
files = KUBECONFIGS + (
'/root/cdk/cdk_addons_kubectl_config',
'/var/snap/microk8s/current/credentials/client.config',
)
services = KUBE_SVCS + (
'snap.kubelet.daemon',
'snap.kube-apiserver.daemon',
'snap.kube-proxy.daemon',
'snap.kube-scheduler.daemon',
'snap.kube-controller-manager.daemon',
# CDK
'cdk.master.auth-webhook',
)
def setup(self):
self.set_kubeconfig()
if self.is_installed('microk8s'):
self.kube_cmd = 'microk8s kubectl'
elif self.is_installed('k8s'):
self.kube_cmd = 'k8s kubectl'
self._canonical_kubernetes()
self.config_files.extend([
'/root/cdk/kubelet/config.yaml',
'/root/cdk/audit/audit-policy.yaml',
])
super().setup()
def _canonical_kubernetes(self):
self.add_journal(units="snap.k8s.*")
k8s_cmd = "k8s"
k8s_common = "/var/snap/k8s/common"
k8s_subcmds = [
'status',
'get',
]
self.add_copy_spec([
f"{k8s_common}/args",
f"{k8s_common}/var/lib/k8s-dqlite/info.yaml",
f"{k8s_common}/var/lib/k8s-dqlite/cluster.yaml",
f"{k8s_common}/var/lib/k8sd/state/truststore/k8s.yaml",
f"{k8s_common}/var/lib/k8sd/state/database/info.yaml",
f"{k8s_common}/var/lib/k8sd/state/database/cluster.yaml",
f"{k8s_common}/var/lib/k8sd/state/daemon.yaml",
])
self.add_cmd_output([
f"{k8s_cmd} {subcmd}" for subcmd in k8s_subcmds
])
def postproc(self):
super().postproc()
self.do_file_private_sub(
"/var/snap/k8s/common/var/lib/k8sd/state/truststore/k8s.yaml")
# vim: et ts=5 sw=4
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| __pycache__ | Folder | 0755 |
|
|
| __init__.py | File | 138.51 KB | 0644 |
|
| aap_containerized.py | File | 5.04 KB | 0644 |
|
| aap_controller.py | File | 3.15 KB | 0644 |
|
| aap_eda.py | File | 2.16 KB | 0644 |
|
| aap_gateway.py | File | 1.71 KB | 0644 |
|
| aap_hub.py | File | 1.31 KB | 0644 |
|
| aap_receptor.py | File | 1.85 KB | 0644 |
|
| abrt.py | File | 1.51 KB | 0644 |
|
| acpid.py | File | 917 B | 0644 |
|
| activemq.py | File | 1.65 KB | 0644 |
|
| aide.py | File | 1.41 KB | 0644 |
|
| alternatives.py | File | 2.27 KB | 0644 |
|
| anaconda.py | File | 1.46 KB | 0644 |
|
| anacron.py | File | 782 B | 0644 |
|
| ansible.py | File | 1.08 KB | 0644 |
|
| apache.py | File | 6 KB | 0644 |
|
| apparmor.py | File | 1.05 KB | 0644 |
|
| apport.py | File | 1.37 KB | 0644 |
|
| apt.py | File | 1.73 KB | 0644 |
|
| arcconf.py | File | 2.17 KB | 0644 |
|
| ata.py | File | 1016 B | 0644 |
|
| auditd.py | File | 1.83 KB | 0644 |
|
| authd.py | File | 2.2 KB | 0644 |
|
| autofs.py | File | 2.77 KB | 0644 |
|
| azure.py | File | 2.37 KB | 0644 |
|
| bcache.py | File | 2.2 KB | 0644 |
|
| bird.py | File | 2.41 KB | 0644 |
|
| block.py | File | 2.44 KB | 0644 |
|
| boom.py | File | 1.05 KB | 0644 |
|
| boot.py | File | 1.99 KB | 0644 |
|
| bootc.py | File | 940 B | 0644 |
|
| btrfs.py | File | 739 B | 0644 |
|
| buildah.py | File | 1.82 KB | 0644 |
|
| candlepin.py | File | 5.84 KB | 0644 |
|
| canonical_livepatch.py | File | 1.04 KB | 0644 |
|
| canonical_livepatch_onprem.py | File | 1.22 KB | 0644 |
|
| ceph_ansible.py | File | 956 B | 0644 |
|
| ceph_common.py | File | 6.83 KB | 0644 |
|
| ceph_iscsi.py | File | 1.55 KB | 0644 |
|
| ceph_mds.py | File | 4.15 KB | 0644 |
|
| ceph_mgr.py | File | 5.92 KB | 0644 |
|
| ceph_mon.py | File | 9.82 KB | 0644 |
|
| ceph_osd.py | File | 5.27 KB | 0644 |
|
| ceph_rgw.py | File | 4.51 KB | 0644 |
|
| cgroups.py | File | 1.39 KB | 0644 |
|
| charmed_mysql.py | File | 5.23 KB | 0644 |
|
| charmed_postgresql.py | File | 6.05 KB | 0644 |
|
| chrony.py | File | 1.84 KB | 0644 |
|
| cifs.py | File | 962 B | 0644 |
|
| clear_containers.py | File | 2.58 KB | 0644 |
|
| cloud_init.py | File | 1.07 KB | 0644 |
|
| cman.py | File | 1.78 KB | 0644 |
|
| cobbler.py | File | 1.29 KB | 0644 |
|
| cockpit.py | File | 968 B | 0644 |
|
| collectd.py | File | 2.24 KB | 0644 |
|
| collectl.py | File | 752 B | 0644 |
|
| composer.py | File | 2.11 KB | 0644 |
|
| conntrack.py | File | 2.37 KB | 0644 |
|
| console.py | File | 869 B | 0644 |
|
| container_log.py | File | 1.54 KB | 0644 |
|
| containerd.py | File | 1.37 KB | 0644 |
|
| containers_common.py | File | 2.64 KB | 0644 |
|
| convert2rhel.py | File | 1.04 KB | 0644 |
|
| coredump.py | File | 5.13 KB | 0644 |
|
| corosync.py | File | 2.41 KB | 0644 |
|
| crio.py | File | 3.38 KB | 0644 |
|
| cron.py | File | 1.01 KB | 0644 |
|
| crypto.py | File | 1.38 KB | 0644 |
|
| cs.py | File | 4.5 KB | 0644 |
|
| ctdb.py | File | 1.42 KB | 0644 |
|
| cups.py | File | 3.08 KB | 0644 |
|
| curtin.py | File | 1.74 KB | 0644 |
|
| cxl.py | File | 1.32 KB | 0644 |
|
| date.py | File | 867 B | 0644 |
|
| dbus.py | File | 877 B | 0644 |
|
| dellrac.py | File | 1.69 KB | 0644 |
|
| devicemapper.py | File | 1.13 KB | 0644 |
|
| devices.py | File | 740 B | 0644 |
|
| dhcp.py | File | 1.03 KB | 0644 |
|
| discovery.py | File | 1.15 KB | 0644 |
|
| distupgrade.py | File | 1.51 KB | 0644 |
|
| dlm.py | File | 1.52 KB | 0644 |
|
| dmraid.py | File | 1.29 KB | 0644 |
|
| dnf.py | File | 5.42 KB | 0644 |
|
| docker.py | File | 5.08 KB | 0644 |
|
| docker_distribution.py | File | 1.3 KB | 0644 |
|
| dovecot.py | File | 1007 B | 0644 |
|
| dpkg.py | File | 1.16 KB | 0644 |
|
| dracut.py | File | 942 B | 0644 |
|
| drbd.py | File | 955 B | 0644 |
|
| ds.py | File | 3.6 KB | 0644 |
|
| ebpf.py | File | 3.11 KB | 0644 |
|
| elastic.py | File | 2.5 KB | 0644 |
|
| etcd.py | File | 2.14 KB | 0644 |
|
| fail2ban.py | File | 830 B | 0644 |
|
| fapolicyd.py | File | 1.34 KB | 0644 |
|
| fcoe.py | File | 1018 B | 0644 |
|
| fibrechannel.py | File | 1.77 KB | 0644 |
|
| filesys.py | File | 3.81 KB | 0644 |
|
| firewall_tables.py | File | 5.07 KB | 0644 |
|
| firewalld.py | File | 1.95 KB | 0644 |
|
| flatpak.py | File | 1.29 KB | 0644 |
|
| foreman.py | File | 15.24 KB | 0644 |
|
| foreman_installer.py | File | 3.86 KB | 0644 |
|
| foreman_openscap.py | File | 830 B | 0644 |
|
| foreman_proxy.py | File | 2.19 KB | 0644 |
|
| freeipmi.py | File | 896 B | 0644 |
|
| frr.py | File | 1.79 KB | 0644 |
|
| fwupd.py | File | 1.41 KB | 0644 |
|
| gcp.py | File | 5.38 KB | 0644 |
|
| gdm.py | File | 735 B | 0644 |
|
| gfs2.py | File | 1.36 KB | 0644 |
|
| gluster.py | File | 4.34 KB | 0644 |
|
| gluster_block.py | File | 1.07 KB | 0644 |
|
| grafana.py | File | 2.01 KB | 0644 |
|
| greenboot.py | File | 905 B | 0644 |
|
| grub.py | File | 988 B | 0644 |
|
| grub2.py | File | 2.81 KB | 0644 |
|
| gssproxy.py | File | 823 B | 0644 |
|
| haproxy.py | File | 2.41 KB | 0644 |
|
| hardware.py | File | 1.13 KB | 0644 |
|
| helm.py | File | 1.14 KB | 0644 |
|
| host.py | File | 1.74 KB | 0644 |
|
| hpasm.py | File | 898 B | 0644 |
|
| hpssm.py | File | 2.65 KB | 0644 |
|
| hts.py | File | 700 B | 0644 |
|
| hyperv.py | File | 886 B | 0644 |
|
| i18n.py | File | 774 B | 0644 |
|
| infiniband.py | File | 2.66 KB | 0644 |
|
| infinidat.py | File | 1.38 KB | 0644 |
|
| insights.py | File | 2.49 KB | 0644 |
|
| instructlab.py | File | 5.45 KB | 0644 |
|
| ipa.py | File | 7.36 KB | 0644 |
|
| ipmitool.py | File | 1.53 KB | 0644 |
|
| iprconfig.py | File | 4.53 KB | 0644 |
|
| ipvs.py | File | 1.04 KB | 0644 |
|
| iscsi.py | File | 2.15 KB | 0644 |
|
| iscsitarget.py | File | 1.25 KB | 0644 |
|
| jars.py | File | 5.39 KB | 0644 |
|
| java.py | File | 978 B | 0644 |
|
| juju.py | File | 8.03 KB | 0644 |
|
| kafka.py | File | 2.07 KB | 0644 |
|
| kata_containers.py | File | 1.34 KB | 0644 |
|
| kdump.py | File | 5.63 KB | 0644 |
|
| kea.py | File | 1.37 KB | 0644 |
|
| keepalived.py | File | 855 B | 0644 |
|
| kernel.py | File | 5.85 KB | 0644 |
|
| kernelrt.py | File | 1.66 KB | 0644 |
|
| keyutils.py | File | 894 B | 0644 |
|
| kimchi.py | File | 1009 B | 0644 |
|
| kpatch.py | File | 1.02 KB | 0644 |
|
| krb5.py | File | 2.88 KB | 0644 |
|
| kubernetes.py | File | 12.45 KB | 0644 |
|
| kvm.py | File | 954 B | 0644 |
|
| landscape.py | File | 3.17 KB | 0644 |
|
| ldap.py | File | 2.99 KB | 0644 |
|
| leapp.py | File | 1.49 KB | 0644 |
|
| libraries.py | File | 1.56 KB | 0644 |
|
| libreswan.py | File | 2.47 KB | 0644 |
|
| libvirt.py | File | 3.76 KB | 0644 |
|
| lightdm.py | File | 1.11 KB | 0644 |
|
| lilo.py | File | 716 B | 0644 |
|
| login.py | File | 1.06 KB | 0644 |
|
| logrotate.py | File | 1.24 KB | 0644 |
|
| logs.py | File | 3.92 KB | 0644 |
|
| lstopo.py | File | 1.2 KB | 0644 |
|
| lustre.py | File | 2.86 KB | 0644 |
|
| lvm2.py | File | 4.6 KB | 0644 |
|
| lxd.py | File | 4.31 KB | 0644 |
|
| maas.py | File | 5.07 KB | 0644 |
|
| manageiq.py | File | 2.86 KB | 0644 |
|
| md.py | File | 1.22 KB | 0644 |
|
| megacli.py | File | 1.01 KB | 0644 |
|
| mellanox_firmware.py | File | 4.7 KB | 0644 |
|
| memcached.py | File | 1.58 KB | 0644 |
|
| memory.py | File | 1.44 KB | 0644 |
|
| microcloud.py | File | 2.72 KB | 0644 |
|
| microk8s.py | File | 4.38 KB | 0644 |
|
| microovn.py | File | 3.23 KB | 0644 |
|
| microshift.py | File | 6.96 KB | 0644 |
|
| microshift_ovn.py | File | 1.69 KB | 0644 |
|
| migration_results.py | File | 637 B | 0644 |
|
| mongodb.py | File | 4.03 KB | 0644 |
|
| monit.py | File | 1.68 KB | 0644 |
|
| mpt.py | File | 732 B | 0644 |
|
| mssql.py | File | 3.29 KB | 0644 |
|
| multipath.py | File | 1011 B | 0644 |
|
| mvcli.py | File | 1003 B | 0644 |
|
| mysql.py | File | 4.44 KB | 0644 |
|
| named.py | File | 2.5 KB | 0644 |
|
| navicli.py | File | 2.47 KB | 0644 |
|
| networking.py | File | 14.36 KB | 0644 |
|
| networkmanager.py | File | 5.04 KB | 0644 |
|
| nfs.py | File | 1.32 KB | 0644 |
|
| nfsganesha.py | File | 1.2 KB | 0644 |
|
| nginx.py | File | 1.53 KB | 0644 |
|
| nis.py | File | 812 B | 0644 |
|
| nodejs.py | File | 1.18 KB | 0644 |
|
| npm.py | File | 2.06 KB | 0644 |
|
| nscd.py | File | 989 B | 0644 |
|
| nss.py | File | 885 B | 0644 |
|
| ntb.py | File | 937 B | 0644 |
|
| ntp.py | File | 1.41 KB | 0644 |
|
| numa.py | File | 1.46 KB | 0644 |
|
| nvidia.py | File | 1.82 KB | 0644 |
|
| nvme.py | File | 1.71 KB | 0644 |
|
| nvmetcli.py | File | 977 B | 0644 |
|
| oddjob.py | File | 871 B | 0644 |
|
| omnipath_client.py | File | 1.92 KB | 0644 |
|
| omnipath_manager.py | File | 2.38 KB | 0644 |
|
| omsa.py | File | 1.64 KB | 0644 |
|
| opencl.py | File | 692 B | 0644 |
|
| opencontrail.py | File | 1.35 KB | 0644 |
|
| opendaylight.py | File | 1.38 KB | 0644 |
|
| opengl.py | File | 694 B | 0644 |
|
| openhpi.py | File | 878 B | 0644 |
|
| openshift.py | File | 16.88 KB | 0644 |
|
| openshift_ovn.py | File | 2.61 KB | 0644 |
|
| openssl.py | File | 1.4 KB | 0644 |
|
| openstack_ansible.py | File | 1.31 KB | 0644 |
|
| openstack_aodh.py | File | 3.93 KB | 0644 |
|
| openstack_barbican.py | File | 1.76 KB | 0644 |
|
| openstack_ceilometer.py | File | 3.24 KB | 0644 |
|
| openstack_cinder.py | File | 6.84 KB | 0644 |
|
| openstack_database.py | File | 2.47 KB | 0644 |
|
| openstack_designate.py | File | 3.58 KB | 0644 |
|
| openstack_edpm.py | File | 1.45 KB | 0644 |
|
| openstack_glance.py | File | 4.67 KB | 0644 |
|
| openstack_gnocchi.py | File | 4.27 KB | 0644 |
|
| openstack_heat.py | File | 5.34 KB | 0644 |
|
| openstack_horizon.py | File | 3.37 KB | 0644 |
|
| openstack_instack.py | File | 5.98 KB | 0644 |
|
| openstack_ironic.py | File | 8.28 KB | 0644 |
|
| openstack_keystone.py | File | 4.9 KB | 0644 |
|
| openstack_manila.py | File | 3.68 KB | 0644 |
|
| openstack_masakari.py | File | 2.08 KB | 0644 |
|
| openstack_masakarimonitors.py | File | 1.5 KB | 0644 |
|
| openstack_mistral.py | File | 1.6 KB | 0644 |
|
| openstack_neutron.py | File | 6.29 KB | 0644 |
|
| openstack_nova.py | File | 8.75 KB | 0644 |
|
| openstack_novajoin.py | File | 1.15 KB | 0644 |
|
| openstack_octavia.py | File | 5.16 KB | 0644 |
|
| openstack_placement.py | File | 5.01 KB | 0644 |
|
| openstack_sahara.py | File | 2.67 KB | 0644 |
|
| openstack_swift.py | File | 2.95 KB | 0644 |
|
| openstack_tripleo.py | File | 1.62 KB | 0644 |
|
| openstack_trove.py | File | 2.26 KB | 0644 |
|
| opensvc.py | File | 3.39 KB | 0644 |
|
| openvswitch.py | File | 17.47 KB | 0644 |
|
| oratab.py | File | 1.92 KB | 0644 |
|
| origin.py | File | 8.57 KB | 0644 |
|
| os_net_config.py | File | 800 B | 0644 |
|
| ostree.py | File | 1.05 KB | 0644 |
|
| ovirt.py | File | 9.44 KB | 0644 |
|
| ovirt_engine_backup.py | File | 1.72 KB | 0644 |
|
| ovirt_hosted_engine.py | File | 2.16 KB | 0644 |
|
| ovirt_imageio.py | File | 1.56 KB | 0644 |
|
| ovirt_node.py | File | 1.62 KB | 0644 |
|
| ovirt_provider_ovn.py | File | 1.16 KB | 0644 |
|
| ovn_central.py | File | 9.86 KB | 0644 |
|
| ovn_host.py | File | 3.32 KB | 0644 |
|
| pacemaker.py | File | 5.81 KB | 0644 |
|
| pam.py | File | 1.37 KB | 0644 |
|
| pci.py | File | 1.35 KB | 0644 |
|
| pcp.py | File | 6.05 KB | 0644 |
|
| perccli.py | File | 1.81 KB | 0644 |
|
| perccli2.py | File | 1.82 KB | 0644 |
|
| peripety.py | File | 1.19 KB | 0644 |
|
| perl.py | File | 662 B | 0644 |
|
| pmem.py | File | 3.34 KB | 0644 |
|
| podman.py | File | 5.49 KB | 0644 |
|
| postfix.py | File | 4.32 KB | 0644 |
|
| postgresql.py | File | 4.36 KB | 0644 |
|
| powerpath.py | File | 1.82 KB | 0644 |
|
| powerpc.py | File | 4.22 KB | 0644 |
|
| ppp.py | File | 848 B | 0644 |
|
| procenv.py | File | 710 B | 0644 |
|
| process.py | File | 4.29 KB | 0644 |
|
| processor.py | File | 2.56 KB | 0644 |
|
| proxmox.py | File | 2.98 KB | 0644 |
|
| psacct.py | File | 1.29 KB | 0644 |
|
| ptp.py | File | 892 B | 0644 |
|
| pulp.py | File | 7.66 KB | 0644 |
|
| pulpcore.py | File | 7.8 KB | 0644 |
|
| pulseaudio.py | File | 1.56 KB | 0644 |
|
| puppet.py | File | 2.26 KB | 0644 |
|
| pxe.py | File | 1.39 KB | 0644 |
|
| python.py | File | 3.79 KB | 0644 |
|
| qaucli.py | File | 1.35 KB | 0644 |
|
| qpid.py | File | 3.53 KB | 0644 |
|
| qpid_dispatch.py | File | 2.19 KB | 0644 |
|
| qt.py | File | 809 B | 0644 |
|
| quagga.py | File | 755 B | 0644 |
|
| rabbitmq.py | File | 2.73 KB | 0644 |
|
| radius.py | File | 1.34 KB | 0644 |
|
| rasdaemon.py | File | 994 B | 0644 |
|
| rear.py | File | 1.31 KB | 0644 |
|
| redis.py | File | 1.6 KB | 0644 |
|
| release.py | File | 1.2 KB | 0644 |
|
| rhc.py | File | 2.02 KB | 0644 |
|
| rhcos.py | File | 1.36 KB | 0644 |
|
| rhui.py | File | 2.27 KB | 0644 |
|
| rhv_analyzer.py | File | 941 B | 0644 |
|
| rpm.py | File | 2.34 KB | 0644 |
|
| rpmostree.py | File | 1.12 KB | 0644 |
|
| ruby.py | File | 813 B | 0644 |
|
| s390.py | File | 2.38 KB | 0644 |
|
| salt.py | File | 2.14 KB | 0644 |
|
| saltmaster.py | File | 2.26 KB | 0644 |
|
| samba.py | File | 1.79 KB | 0644 |
|
| sanlock.py | File | 1000 B | 0644 |
|
| saphana.py | File | 2.52 KB | 0644 |
|
| sapnw.py | File | 5.03 KB | 0644 |
|
| sar.py | File | 3.95 KB | 0644 |
|
| sas3ircu.py | File | 1.3 KB | 0644 |
|
| scsi.py | File | 2.4 KB | 0644 |
|
| seagate_ses.py | File | 2.1 KB | 0644 |
|
| sedutil.py | File | 1.7 KB | 0644 |
|
| selinux.py | File | 2.02 KB | 0644 |
|
| sendmail.py | File | 1.18 KB | 0644 |
|
| services.py | File | 1.43 KB | 0644 |
|
| shmcli.py | File | 4.21 KB | 0644 |
|
| skydive.py | File | 2.28 KB | 0644 |
|
| slurm.py | File | 3.75 KB | 0644 |
|
| smartcard.py | File | 1.49 KB | 0644 |
|
| smclient.py | File | 1.89 KB | 0644 |
|
| snap.py | File | 2.99 KB | 0644 |
|
| snapper.py | File | 741 B | 0644 |
|
| snmp.py | File | 903 B | 0644 |
|
| sos_extras.py | File | 3.74 KB | 0644 |
|
| soundcard.py | File | 980 B | 0644 |
|
| squid.py | File | 1.25 KB | 0644 |
|
| ssh.py | File | 3.73 KB | 0644 |
|
| ssmtp.py | File | 976 B | 0644 |
|
| sssd.py | File | 2.33 KB | 0644 |
|
| storageconsole.py | File | 1.66 KB | 0644 |
|
| storcli.py | File | 1.8 KB | 0644 |
|
| stratis.py | File | 1.12 KB | 0644 |
|
| subscription_manager.py | File | 5.55 KB | 0644 |
|
| sudo.py | File | 1.48 KB | 0644 |
|
| sunbeam.py | File | 6.89 KB | 0644 |
|
| sunbeam_hypervisor.py | File | 3.73 KB | 0644 |
|
| sunrpc.py | File | 818 B | 0644 |
|
| symcli.py | File | 3.46 KB | 0644 |
|
| system.py | File | 1.67 KB | 0644 |
|
| systemd.py | File | 3.68 KB | 0644 |
|
| systemtap.py | File | 881 B | 0644 |
|
| sysvipc.py | File | 886 B | 0644 |
|
| targetcli.py | File | 1.12 KB | 0644 |
|
| teamd.py | File | 1.24 KB | 0644 |
|
| telegraf.py | File | 1.68 KB | 0644 |
|
| tftpserver.py | File | 879 B | 0644 |
|
| tigervnc.py | File | 1.67 KB | 0644 |
|
| tomcat.py | File | 2.08 KB | 0644 |
|
| tpm2.py | File | 989 B | 0644 |
|
| tuned.py | File | 1.17 KB | 0644 |
|
| ubuntu.py | File | 2.23 KB | 0644 |
|
| udev.py | File | 900 B | 0644 |
|
| udisks.py | File | 804 B | 0644 |
|
| ufw.py | File | 987 B | 0644 |
|
| ultrapath.py | File | 1.3 KB | 0644 |
|
| unbound.py | File | 899 B | 0644 |
|
| unity.py | File | 703 B | 0644 |
|
| unpackaged.py | File | 3.48 KB | 0644 |
|
| usb.py | File | 731 B | 0644 |
|
| usbguard.py | File | 813 B | 0644 |
|
| validation_framework.py | File | 1.5 KB | 0644 |
|
| valkey.py | File | 1.72 KB | 0644 |
|
| vault.py | File | 1.74 KB | 0644 |
|
| vdo.py | File | 2.27 KB | 0644 |
|
| vdsm.py | File | 5.05 KB | 0644 |
|
| vectordev.py | File | 1.2 KB | 0644 |
|
| veritas.py | File | 1.33 KB | 0644 |
|
| vhostmd.py | File | 1.71 KB | 0644 |
|
| virsh.py | File | 4.42 KB | 0644 |
|
| virtwho.py | File | 985 B | 0644 |
|
| vmware.py | File | 1.74 KB | 0644 |
|
| vsftpd.py | File | 724 B | 0644 |
|
| vulkan.py | File | 700 B | 0644 |
|
| watchdog.py | File | 2.89 KB | 0644 |
|
| wireless.py | File | 886 B | 0644 |
|
| x11.py | File | 1.38 KB | 0644 |
|
| xdp.py | File | 659 B | 0644 |
|
| xen.py | File | 3.32 KB | 0644 |
|
| xfs.py | File | 1.34 KB | 0644 |
|
| xinetd.py | File | 837 B | 0644 |
|
| zfs.py | File | 1.91 KB | 0644 |
|
| zvm.py | File | 2.76 KB | 0644 |
|