Skip to content

Instantly share code, notes, and snippets.

@fenar
Last active January 26, 2024 12:32
Show Gist options
  • Save fenar/070c33c372637e7728873a47ed66b5b6 to your computer and use it in GitHub Desktop.
Save fenar/070c33c372637e7728873a47ed66b5b6 to your computer and use it in GitHub Desktop.
P5G RH-OCP Prep Guide
### Main Guideline
https://docs.openshift.com/container-platform/4.14/scalability_and_performance/ztp_far_edge/ztp-reference-cluster-configuration-for-vdu.html#sno-configure-for-vdu
### Enable SCTP
https://docs.openshift.com/container-platform/4.14/networking/using-sctp.html
For SNO make sure -> machineconfiguration.openshift.io/role: master
### Install Service Mesh
https://docs.openshift.com/container-platform/4.14/service_mesh/v2x/installing-ossm.html
### HugePages
REF: https://docs.openshift.com/container-platform/4.14/scalability_and_performance/what-huge-pages-do-and-how-they-are-consumed-by-apps.html
Edit following GIST based on your CPU model/cores and apply: https://gist.github.com/fenar/9b0461b222a63b33ffcaa2dae964ba22
Verify that your HP applied properly by following check
oc get nodes
oc get node <node_name> -o jsonpath="{.status.allocatable.hugepages-2Mi}"
Sample output:
fenar@macpro71 acmhub % oc get nodes
NAME STATUS ROLES AGE VERSION
api-int.acmhub2.narlabs.io Ready control-plane,master,worker 10d v1.27.8+4fab27b
fenar@macpro71 acmhub % oc get node api-int.acmhub2.narlabs.io -o jsonpath="{.status.allocatable.hugepages-2Mi}"
16Gi%
### Enabling Privileges for UPF
oc project i2i-5gcore
oc adm policy add-scc-to-user anyuid -z default
oc adm policy add-scc-to-user hostaccess -z default
oc adm policy add-scc-to-user hostmount-anyuid -z default
oc adm policy add-scc-to-user privileged -z default
### Hazelcast Install
Install HazelCast Cerfied Operator from Opeator Hub and use following to create secret and instance
oc create secret generic hazelcast-license-key --from-literal=license-key="UseYourKeyHere"
apiVersion: hazelcast.com/v1alpha1
kind: Hazelcast
metadata:
name: hazelcast-sample
spec:
clusterSize: 3
repository: 'docker.io/hazelcast/hazelcast-enterprise'
licenseKeySecret: hazelcast-license-key <-- Has to Match with your SecretKey Name Above!
userCodeDeployment:
clientEnabled: true
serialization:
allowOverrideDefaultSerializers: true
enableCompression: true
### Based on your NICs setup build multus interfaces
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
name: whereabouts100
spec:
config: '{
"cniVersion": "0.3.0",
"name": "was-i2i5gcore-192.168.100",
"type": "macvlan",
"master": "ens2", <-- Has to Match with your additional high throughput Network Interface Name
"mode": "bridge",
"ipam": {
"type": "whereabouts",
"range": "192.168.100.0/24",
"gateway": "192.168.100.1",
"exclude": [
"192.168.100.1/32"
]
}
}'
### In MultiNode Cluster Enabling Master for Tenant PODs
oc edit schedulers.config.openshift.io cluster
-->
spec:
mastersSchedulable: true <--
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment