kube-resource-report icon indicating copy to clipboard operation
kube-resource-report copied to clipboard

OpenShift compatible version

Open erikrs opened this issue 5 years ago • 3 comments

erikrs avatar Sep 17 '18 13:09 erikrs

What is the problem with OpenShift?

hjacobs avatar Sep 17 '18 16:09 hjacobs

Tested and working on OpenShift 3.11, with 1 resolvable error.

$ oc version
oc v3.10.0+dd10d17
kubernetes v1.10.0+b81c8f8
features: Basic-Auth

Server https://foocorp.com:8443
openshift v3.11.0+8de5c34-71
kubernetes v1.11.0+d4cacc0
$  python3 -m kube_resource_report output/ # uses clusters defined in ~/.kube/config
INFO:kube_resource_report.report:Querying cluster default/foocorp-foocorp-com:8443/tpa (https://foocorp.foocorp.com:8443)..
INFO:kube_resource_report.report:Waiting for ingress status..
INFO:kube_resource_report.report:Writing namespaces.tsv..
INFO:kube_resource_report.report:Writing clusters.tsv..
INFO:kube_resource_report.report:Writing ingresses.tsv..
INFO:kube_resource_report.report:Writing pods.tsv..
INFO:kube_resource_report.report:Generating index.html..
INFO:kube_resource_report.report:Generating clusters.html..
INFO:kube_resource_report.report:Generating ingresses.html..
INFO:kube_resource_report.report:Generating teams.html..
INFO:kube_resource_report.report:Generating applications.html..
INFO:kube_resource_report.report:Generating namespaces.html..
INFO:kube_resource_report.report:Generating pods.html..
INFO:kube_resource_report.report:Generating cluster-default/foocorp-foocorp-com:8443/tpa.html..
Traceback (most recent call last):
  File "/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/Users/tom/repos/foo/kube-resource-report/kube_resource_report/__main__.py", line 3, in <module>
    main()
  File "/Users/tom/.local/share/virtualenvs/kube-resource-report-7t8YIuTm/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/Users/tom/.local/share/virtualenvs/kube-resource-report-7t8YIuTm/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/Users/tom/.local/share/virtualenvs/kube-resource-report-7t8YIuTm/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/tom/.local/share/virtualenvs/kube-resource-report-7t8YIuTm/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/Users/tom/repos/foo/kube-resource-report/kube_resource_report/main.py", line 134, in main
    node_label,
  File "/Users/tom/repos/foo/kube-resource-report/kube_resource_report/report.py", line 638, in generate_report
    write_report(output_path, start, notifications, cluster_summaries, namespace_usage, applications, teams, node_label)
  File "/Users/tom/repos/foo/kube-resource-report/kube_resource_report/report.py", line 832, in write_report
    template.stream(**context).dump(str(output_path / file_name))
  File "/Users/tom/.local/share/virtualenvs/kube-resource-report-7t8YIuTm/lib/python3.7/site-packages/jinja2/environment.py", line 1219, in dump
    fp = open(fp, 'wb')
FileNotFoundError: [Errno 2] No such file or directory: 'output/cluster-default/foocorp-foocorp-com:8443/tpa.html'

Resolve error:

$ mkdir -p output/cluster-default/foocorp-foocorp-com:8443/
$ touch output/cluster-default/foocorp-foocorp-com:8443/tpa.html

aioue avatar Dec 14 '18 16:12 aioue

With openshift 3.9 (openshift v3.9.0+ba7faec-1, kubernetes v1.9.1+a0ce1bc657) , usage information is 0. I guess this is related:

ERROR:kube_resource_report.report:Failed to get node usage metrics
Traceback (most recent call last):
  File "/kube_resource_report/report.py", line 156, in get_node_usage
    for node_metrics in NodeMetrics.objects(cluster.client):
  File "/usr/local/lib/python3.7/site-packages/pykube/query.py", line 182, in __iter__
    return iter(self.query_cache["objects"])
  File "/usr/local/lib/python3.7/site-packages/pykube/query.py", line 172, in query_cache
    cache["response"] = self.execute().json()
  File "/usr/local/lib/python3.7/site-packages/pykube/query.py", line 149, in execute
    r.raise_for_status()
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 940, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://localhost:8001/apis/metrics.k8s.io/v1beta1/nodes
ERROR:kube_resource_report.report:Failed to get pod usage metrics
Traceback (most recent call last):
  File "/kube_resource_report/report.py", line 176, in get_pod_usage
    for pod_metrics in PodMetrics.objects(cluster.client, namespace=pykube.all):
  File "/usr/local/lib/python3.7/site-packages/pykube/query.py", line 182, in __iter__
    return iter(self.query_cache["objects"])
  File "/usr/local/lib/python3.7/site-packages/pykube/query.py", line 172, in query_cache
    cache["response"] = self.execute().json()
  File "/usr/local/lib/python3.7/site-packages/pykube/query.py", line 149, in execute
    r.raise_for_status()
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 940, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://localhost:8001/apis/metrics.k8s.io/v1beta1/pods

zdzichu avatar Oct 01 '19 08:10 zdzichu