1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00
Files
openshift-docs/modules/using-cluster-compare-telco-ref.adoc

175 lines
6.7 KiB
Plaintext

// Module included in the following assemblies:
//
// *scalability_and_performance/cluster-compare/using-the-cluster-compare-plugin.adoc
:_mod-docs-content-type: PROCEDURE
[id="using-cluster-compare-telco_ref_{context}"]
= Example: Comparing a cluster with the telco core reference configuration
You can use the `cluster-compare` plugin to compare a reference configuration with a configuration from a live cluster or `must-gather` data.
This example compares a configuration from a live cluster with the telco core reference configuration. The telco core reference configuration is derived from the telco core reference design specifications (RDS). The telco core RDS is designed for clusters to support large scale telco applications including control plane and some centralized data plane functions.
The reference configuration is packaged in a container image with the telco core RDS.
For further examples of using the `cluster-compare` plugin with the telco core and telco RAN distributed unit (DU) profiles, see the "Additional resources" section.
.Prerequisites
* You have access to the cluster as a user with the `cluster-admin` role.
* You have credentials to access the `registry.redhat.io` container image registry.
* You installed the `cluster-compare` plugin.
.Procedure
. Log on to the container image registry with your credentials by running the following command:
+
[source,terminal]
----
$ podman login registry.redhat.io
----
. Extract the content from the `telco-core-rds-rhel9` container image by running the following commands:
+
[source,terminal]
----
$ mkdir -p ./out
----
+
[source,terminal]
----
$ podman run -it registry.redhat.io/openshift4/openshift-telco-core-rds-rhel9:v4.18 | base64 -d | tar xv -C out
----
+
You can view the reference configuration in the `reference-crs-kube-compare/` directory.
+
[source,text]
----
out/telco-core-rds/configuration/reference-crs-kube-compare/
├── metadata.yaml <1>
├── optional <2>
│ ├── logging
│ ├── networking
│ ├── other
│ └── tuning
└── required <3>
├── networking
├── other
├── performance
├── scheduling
└── storage
----
<1> Configuration file for the reference configuration.
<2> Directory for optional templates.
<3> Directory for required templates.
. Compare the configuration for your cluster to the telco core reference configuration by running the following command:
+
[source,terminal]
----
$ oc cluster-compare -r out/telco-core-rds/configuration/reference-crs-kube-compare/metadata.yaml
----
+
.Example output
[source,terminal]
----
W1212 14:13:06.281590 36629 compare.go:425] Reference Contains Templates With Types (kind) Not Supported By Cluster: BFDProfile, BGPAdvertisement, BGPPeer, ClusterLogForwarder, Community, IPAddressPool, MetalLB, MultiNetworkPolicy, NMState, NUMAResourcesOperator, NUMAResourcesScheduler, NodeNetworkConfigurationPolicy, SriovNetwork, SriovNetworkNodePolicy, SriovOperatorConfig, StorageCluster
...
**********************************
Cluster CR: config.openshift.io/v1_OperatorHub_cluster <1>
Reference File: required/other/operator-hub.yaml <2>
Diff Output: diff -u -N /tmp/MERGED-2801470219/config-openshift-io-v1_operatorhub_cluster /tmp/LIVE-2569768241/config-openshift-io-v1_operatorhub_cluster
--- /tmp/MERGED-2801470219/config-openshift-io-v1_operatorhub_cluster 2024-12-12 14:13:22.898756462 +0000
+++ /tmp/LIVE-2569768241/config-openshift-io-v1_operatorhub_cluster 2024-12-12 14:13:22.898756462 +0000
@@ -1,6 +1,6 @@
apiVersion: config.openshift.io/v1
kind: OperatorHub
metadata:
+ annotations: <3>
+ include.release.openshift.io/hypershift: "true"
name: cluster
-spec:
- disableAllDefaultSources: true
**********************************
Summary <4>
CRs with diffs: 3/4 <5>
CRs in reference missing from the cluster: 22 <6>
other:
other:
Missing CRs: <7>
- optional/other/control-plane-load-kernel-modules.yaml
- optional/other/worker-load-kernel-modules.yaml
required-networking:
networking-root:
Missing CRs:
- required/networking/nodeNetworkConfigurationPolicy.yaml
networking-sriov:
Missing CRs:
- required/networking/sriov/sriovNetwork.yaml
- required/networking/sriov/sriovNetworkNodePolicy.yaml
- required/networking/sriov/SriovOperatorConfig.yaml
- required/networking/sriov/SriovSubscription.yaml
- required/networking/sriov/SriovSubscriptionNS.yaml
- required/networking/sriov/SriovSubscriptionOperGroup.yaml
required-other:
scheduling:
Missing CRs:
- required/other/catalog-source.yaml
- required/other/icsp.yaml
required-performance:
performance:
Missing CRs:
- required/performance/PerformanceProfile.yaml
required-scheduling:
scheduling:
Missing CRs:
- required/scheduling/nrop.yaml
- required/scheduling/NROPSubscription.yaml
- required/scheduling/NROPSubscriptionNS.yaml
- required/scheduling/NROPSubscriptionOperGroup.yaml
- required/scheduling/sched.yaml
required-storage:
storage-odf:
Missing CRs:
- required/storage/odf-external/01-rook-ceph-external-cluster-details.secret.yaml
- required/storage/odf-external/02-ocs-external-storagecluster.yaml
- required/storage/odf-external/odfNS.yaml
- required/storage/odf-external/odfOperGroup.yaml
- required/storage/odf-external/odfSubscription.yaml
No CRs are unmatched to reference CRs <8>
Metadata Hash: fe41066bac56517be02053d436c815661c9fa35eec5922af25a1be359818f297 <9>
No patched CRs <10>
----
<1> The CR under comparison. The plugin displays each CR with a difference from the corresponding template.
<2> The template matching with the CR for comparison.
<3> The output in Linux diff format shows the difference between the template and the cluster CR.
<4> After the plugin reports the line diffs for each CR, the summary of differences are reported.
<5> The number of CRs in the comparison with differences from the corresponding templates.
<6> The number of CRs represented in the reference configuration, but missing from the live cluster.
<7> The list of CRs represented in the reference configuration, but missing from the live cluster.
<8> The CRs that did not match to a corresponding template in the reference configuration.
<9> The metadata hash identifies the reference configuration.
<10> The list of patched CRs.
[NOTE]
====
Get the output in the `junit` format by adding `-o junit` to the command. For example:
[source,terminal]
----
$ oc cluster-compare -r out/telco-core-rds/configuration/reference-crs-kube-compare/metadata.yaml -o junit
----
The `junit` output includes the following result types:
* Passed results for each fully matched template.
* Failed results for differences found or missing required custom resources (CRs).
* Skipped results for differences patched using the user override mechanism.
====