Bug 1885232 - Sync with upstream (fix panicking cluster-capacity binary)
Summary: Sync with upstream (fix panicking cluster-capacity binary)
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: kube-scheduler
Version: 4.6
Hardware: Unspecified
OS: Unspecified
urgent
urgent
Target Milestone: ---
: 4.6.0
Assignee: Jan Chaloupka
QA Contact: RamaKasturi
URL:
Whiteboard:
Depends On: 1885223
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-10-05 13:34 UTC by Jan Chaloupka
Modified: 2020-10-27 16:48 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1885223
Environment:
Last Closed: 2020-10-27 16:47:41 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openshift cluster-capacity pull 41 0 None closed bug 1885232: Sync with upstream 4.6 2020-10-15 08:14:29 UTC
Red Hat Product Errata RHBA-2020:4196 0 None None None 2020-10-27 16:48:11 UTC

Description Jan Chaloupka 2020-10-05 13:34:54 UTC
+++ This bug was initially created as a clone of Bug #1885223 +++

The last master HEAD panics:

```
./cluster-capacity --kubeconfig ~/.kube/config  --podspec examples/pod.yaml
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x16daa79]

goroutine 1 [running]:
sigs.k8s.io/cluster-capacity/vendor/k8s.io/component-base/logs.(*Options).Get(...)
/go/src/sigs.k8s.io/cluster-capacity/cmd/hypercc/main.go:42 +0x2f
```

Comment 2 RamaKasturi 2020-10-06 16:38:06 UTC
Verified bug by cloning the upstream repo and i see that there is no panic. Below are the steps followed to verify the bug.

1) clone repo https://github.com/kubernetes-sigs/cluster-capacity
2) cd cluster-capacity/
3) make build 
go build -o hypercc sigs.k8s.io/cluster-capacity/cmd/hypercc
ln -sf hypercc cluster-capacity
ln -sf hypercc genpod
4) ./cluster-capacity --kubeconfig /home/knarra/Downloads/kubeconfig_46O --podspec=examples/pod.yaml
I1006 21:59:49.361591   19459 registry.go:173] Registering SelectorSpread plugin
I1006 21:59:49.361630   19459 registry.go:173] Registering SelectorSpread plugin
16

[knarra@knarra cluster-capacity]$ ./cluster-capacity --kubeconfig /home/knarra/Downloads/kubeconfig_46O --podspec=examples/pod.yaml --verbose
I1006 22:01:37.252776   19722 registry.go:173] Registering SelectorSpread plugin
I1006 22:01:37.252802   19722 registry.go:173] Registering SelectorSpread plugin
small-pod pod requirements:
	- CPU: 150m
	- Memory: 100Mi

The cluster can schedule 16 instance(s) of the pod small-pod.

Termination reason: Unschedulable: 0/6 nodes are available: 3 Insufficient cpu, 3 node(s) had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate.

Pod distribution among nodes:
small-pod
	- ip-10-0-185-218.us-east-2.compute.internal: 7 instance(s)
	- ip-10-0-147-35.us-east-2.compute.internal: 5 instance(s)
	- ip-10-0-202-50.us-east-2.compute.internal: 4 instance(s)

Based on the above moving bug to verified state.

Comment 3 RamaKasturi 2020-10-06 16:38:34 UTC
Verified bug by cloning the upstream repo and i see that there is no panic. Below are the steps followed to verify the bug.

1) clone repo https://github.com/kubernetes-sigs/cluster-capacity
2) cd cluster-capacity/
3) make build 
go build -o hypercc sigs.k8s.io/cluster-capacity/cmd/hypercc
ln -sf hypercc cluster-capacity
ln -sf hypercc genpod
4) ./cluster-capacity --kubeconfig /home/knarra/Downloads/kubeconfig_46O --podspec=examples/pod.yaml
I1006 21:59:49.361591   19459 registry.go:173] Registering SelectorSpread plugin
I1006 21:59:49.361630   19459 registry.go:173] Registering SelectorSpread plugin
16

[knarra@knarra cluster-capacity]$ ./cluster-capacity --kubeconfig /home/knarra/Downloads/kubeconfig_46O --podspec=examples/pod.yaml --verbose
I1006 22:01:37.252776   19722 registry.go:173] Registering SelectorSpread plugin
I1006 22:01:37.252802   19722 registry.go:173] Registering SelectorSpread plugin
small-pod pod requirements:
	- CPU: 150m
	- Memory: 100Mi

The cluster can schedule 16 instance(s) of the pod small-pod.

Termination reason: Unschedulable: 0/6 nodes are available: 3 Insufficient cpu, 3 node(s) had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate.

Pod distribution among nodes:
small-pod
	- ip-10-0-185-218.us-east-2.compute.internal: 7 instance(s)
	- ip-10-0-147-35.us-east-2.compute.internal: 5 instance(s)
	- ip-10-0-202-50.us-east-2.compute.internal: 4 instance(s)

Based on the above moving bug to verified state.

Comment 6 errata-xmlrpc 2020-10-27 16:47:41 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (OpenShift Container Platform 4.6 GA Images), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:4196


Note You need to log in before you can comment on or make changes to this bug.