-
Notifications
You must be signed in to change notification settings - Fork 107
Performance addon operator code base move to NTO #322
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
all operations in this commit where done with git mv to preserve git references for future cherry picks
affb093
to
f65de7e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The structure overall looks reasonable to me. A couple of notes though:
- Can the
/testdata
be placed somewhere under/test
to keep the root a bit more tidy? - How will
/config/pao/rbac/role_binding.yaml
and/config/pao/rbac/role.yaml
get instantiated? Should we place them in/manifests
instead to leave this up to CVO? - Why is
/assets/pao/configs
plural and/config
singlular? I.e. consistency. - I like the addition of
/docs
. We should shorten the NTO/README.md
and move most of the docs from the/README.md
to that folder alongside PAO. Not necessarily as part of this PR.
Yes, I will work on that on a cleanup separate commit (maybe after some more comments)
Actually I might be able to remove that folder completely , our test data depends on that and there is still work to be done in the code generators (not in this PR at this point of time)
ack
I will need to really cleanup the docs here . The content should be adjusted + the links. |
/hold cancel |
Some initial review.
|
There is some code still using it, examining how to remove it completely atm
Docs will be removed from this PR and will be handled in a separate one.
Same comment as above.
There is a section that still uses a tool there. I will see if it can be removed
I think the current hierarchy can be kept. Mainly if considering cherry picks and familiarity |
In my view this is not necessary, but if you feel it should be done no-one will stop you. |
Agreed. I will not run these tests. |
I think we should get rid of |
Additionally, I don't think we need |
the overall direction looks good to me and after a first pass the most import bits of PAO seem in the right places. |
…)" This reverts commit 7e304f0.
The functionality will be provided by NTO and PAO must not interfere with it in case someone installs this version on OCP 4.11. See the following: openshift/cluster-node-tuning-operator#322
The functionality will be provided by NTO and PAO must not interfere with it in case someone installs this version on OCP 4.11. See the following: openshift/cluster-node-tuning-operator#322
The functionality will be provided by NTO and PAO must not interfere with it in case someone installs this version on OCP 4.11. See the following: openshift/cluster-node-tuning-operator#322
The functionality will be provided by NTO and PAO must not interfere with it in case someone installs this version on OCP 4.11. See the following: openshift/cluster-node-tuning-operator#322
* direct copy of pao code tree * git mv pao content according to nto structure all operations in this commit where done with git mv to preserve git references for future cherry picks * pao code base alignment into nto Performance addon operator code base copied and aligned in NTO. The code base copied over resides under pao subfolders for pkg,apis and tests. This also includes: - PAO controller functionality invoked and run (as runnable) by controller runtime lib manager in the same process as NTO. - OLM upgrade support: remove PAO OLM operator and artifacts in upgrade from ocp 4.10 and below. - Required PAO crd,rbac,webhook and operator configurations under manifests folder. - PAO modules vendoring - Update to kubernetes 1.23.3 - Makefile additions for running PAO tests and CRDs.
…)" This reverts commit 7e304f0.
* direct copy of pao code tree * git mv pao content according to nto structure all operations in this commit where done with git mv to preserve git references for future cherry picks * pao code base alignment into nto Performance addon operator code base copied and aligned in NTO. The code base copied over resides under pao subfolders for pkg,apis and tests. This also includes: - PAO controller functionality invoked and run (as runnable) by controller runtime lib manager in the same process as NTO. - OLM upgrade support: remove PAO OLM operator and artifacts in upgrade from ocp 4.10 and below. - Required PAO crd,rbac,webhook and operator configurations under manifests folder. - PAO modules vendoring - Update to kubernetes 1.23.3 - Makefile additions for running PAO tests and CRDs.
…)" This reverts commit 7e304f0.
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [4]. The code used to live in a separate repository [5], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There are two major pieces added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the must gather image itself, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. The gather_sysinfo binary that uses the ghw [3] library to collect some extra low level data about the node hardware and cpu topology. This binary is built as part of the must-gather Dockerfile build process (two stage build) as it is just another gather "script", although in a binary form. There is no other source to get this binary from. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://github.com/jaypipes/ghw [4] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [5] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [4]. The code used to live in a separate repository [5], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There are two major pieces added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the must gather image itself, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. The gather_sysinfo binary that uses the ghw [3] library to collect some extra low level data about the node hardware and cpu topology. This binary is built as part of the must-gather Dockerfile build process (two stage build) as it is just another gather "script", although in a binary form. There is no other source to get this binary from. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://github.com/jaypipes/ghw [4] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [5] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [4]. The code used to live in a separate repository [5], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There are two major pieces added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the must gather image itself, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. The gather_sysinfo binary that uses the ghw [3] library to collect some extra low level data about the node hardware and cpu topology. This binary is built as part of the must-gather Dockerfile build process (two stage build) as it is just another gather "script", although in a binary form. There is no other source to get this binary from. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://github.com/jaypipes/ghw [4] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [5] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [4]. The code used to live in a separate repository [5], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There are two major pieces added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the must gather image itself, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. The gather_sysinfo binary that uses the ghw [3] library to collect some extra low level data about the node hardware and cpu topology. This binary is built as part of the must-gather Dockerfile build process (two stage build) as it is just another gather "script", although in a binary form. There is no other source to get this binary from. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://github.com/jaypipes/ghw [4] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [5] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR adds support for collecting data related to the PerformanceProfile CR (provided by a core OCP operator - Cluster Node Tuning Operator) operation and creation [3]. The code used to live in a separate repository [4], but the Performance Profile logic became part of NTO in OCP 4.11 ([1][2]). There major piece added: The gather_ppc script (ppc stands for Performance profile controller) which is a pretty common gather script with one exception. It starts a daemon set re-using the NTO image with the needed tools, but with extra host volumes (/proc, /sys, ..) to be able to collect some low level hardware data. Some it collects directly using oc exec, some it uses gather_sysinfo for. [1] openshift/cluster-node-tuning-operator#322 [2] https://github.com/openshift/enhancements/blob/fc2f2e9bf046559ea105b5f64e83da090d1f6915/enhancements/node-tuning/pao-in-nto.md [3] https://docs.openshift.com/container-platform/4.11/scalability_and_performance/cnf-create-performance-profiles.html#gathering-data-about-your-cluster-using-must-gather_cnf-create-performance-profiles [4] https://github.com/openshift-kni/performance-addon-operators/tree/master/must-gather On a standard 3 masters + 3 workers AWS CI cluster the gather_ppc script added about 2 MiB to the total size and took about 20 seconds to complete. [must-gather-hvtql] OUT total size is 1.974.701 speedup is 3,79 Signed-off-by: Martin Sivak <msivak@redhat.com>
This PR includes :
Additional notes: