OpenShift: Jak zvětšit velikost vyrovnávací paměti síťového okruhu na pracovních uzlech pro řídicí rovinu

Summary: Tento článek popisuje postup zvýšení kruhových vyrovnávacích pamětí RX na rozhraních jednotlivých pracovních uzlů v clusteru HCP (Hosted Control Plane) platformy OpenShift Container Platform (OCP). ...

Acest articol se aplică pentru Acest articol nu se aplică pentru Acest articol nu este legat de un produs specific. Acest articol nu acoperă toate versiunile de produs existente.

Instructions

Příprava

 V níže uvedených příkladech jsme identifikovali dvě rozhraní, která vyžadují úpravu vyrovnávacích pamětí RX. 

 

eno12399np0
ens1f1np1

Ověřili jsme platné hodnoty kruhových vyrovnávacích pamětí na síťových kartách pomocí příkazu ethtool -g . To lze provést z ladicího podu na uzlu nebo extrahovat ze sady SOS. 

 

# oc debug node/samplenode

# chroot /host

# ethtool -g eno12399np0
Ring parameters for eno12399np0:
Pre-set maximums:
RX:             8192
RX Mini:        n/a
RX Jumbo:       n/a
TX:             8192
Current hardware settings:
RX:             4096
RX Mini:        n/a
RX Jumbo:       n/a
TX:             1024
RX Buf Len:     n/a
CQE Size:       n/a
TX Push:        off
TCP data split: off

Rozhodli jsme se pro 4096 jako hodnotu pro nastavení kruhových vyrovnávacích pamětí. 

Operaci dokončíme následovně.

  1. Vytvoření Butane Soubory. 
  2. Převeďte tyto butanové soubory na YAML
  3. Vložte vygenerovaný YAML do a configmap Objekt. 
  4. Vytvořte configmaps
  5.  Upravte nodepool odkazovat na configmaps Vytvořen. 
  6. Počkejte na dokončení aktualizace konfigurace. 
  7. Ověřte, že aktualizace konfigurace byla dokončena a změny byly úspěšně implementovány.  

 

Připravte butanové pilníky.

Vytvořit dva Butane soubory, jeden pro každé rozhraní.

# eno12399np0.bu
variant: openshift
version: 4.18.0
metadata:
  name: 99-worker-ethtool-eno12399np0-buffer
  labels:
    machineconfiguration.openshift.io/role: worker
storage:
  files:
  - path: /etc/systemd/system/set-ethtool-eno12399np0-buffer.service
    mode: 0644
    overwrite: true
    contents:
      inline: |
        [Unit]
        Description=Set ethtool RX buffer size for network interface
        Requires=NetworkManager.service
        After=NetworkManager.service
        Before=ovs-configuration.service
        DefaultDependencies=no
        [Service]
        Type=oneshot
        ExecStart=/bin/bash -c "/sbin/ethtool -G eno12399np0 rx 4096 >> /var/log/user-data.log 2>&1"
        [Install]
        WantedBy=multi-user.target
systemd:
  units:
  - name: set-ethtool-eno12399np0-buffer.service
    enabled: true
# ens1f1np1.bu
variant: openshift
version: 4.18.0
metadata:
  name: 99-worker-ethtool-ens1f1np1-buffer
  labels:
    machineconfiguration.openshift.io/role: worker
storage:
  files:
  - path: /etc/systemd/system/set-ethtool-ens1f1np1-buffer.service
    mode: 0644
    overwrite: true
    contents:
      inline: |
        [Unit]
        Description=Set ethtool RX buffer size for network interface
        Requires=NetworkManager.service
        After=NetworkManager.service
        Before=ovs-configuration.service
        DefaultDependencies=no
        [Service]
        Type=oneshot
        ExecStart=/bin/bash -c "/sbin/ethtool -G ens1f1np1 rx 4096 >> /var/log/user-data.log 2>&1"
        [Install]
        WantedBy=multi-user.target
systemd:
  units:
  - name: set-ethtool-ens1f1np1-buffer.service
    enabled: true

Převést Butane souborů, které chcete MachineConfig YAML

Stáhněte si spustitelný soubor butanu a spusťte převod.

# Download butane (example)
$ curl -L -o butane https://mirror.openshift.com/pub/openshift-v4/clients/butane/butane-linux-amd64
$ chmod +x butane

# Convert
$ ./butane eno12399np0.bu -o eno12399np0.yaml
$ ./butane ens1f1np1.bu -o ens1f1np1.yaml

Vytvoření ConfigMap Objekty.

Zalomit každý vygenerovaný YAML v a ConfigMap S názvem mc-worker-ethtool- -buffer V dialogovém okně clusters Obor názvů.

# mc-worker-ethtool-eno12399np0-buffer.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: mc-worker-ethtool-eno12399np0-buffer
  namespace: clusters
data:
  config: |
    apiVersion: machineconfiguration.openshift.io/v1
    kind: MachineConfig
    metadata:
      labels:
        machineconfiguration.openshift.io/role: worker
      name: 99-worker-ethtool-eno12399np0-buffer
    spec:
      config:
        ignition:
          version: 3.4.0
        storage:
          files:
          - contents:
              compression: gzip
              source: data:;base64,[BASE64_CONTENT]
            mode: 420
            overwrite: true
            path: /etc/systemd/system/set-ethtool-eno12399np0-buffer.service
        systemd:
          units:
          - name: set-ethtool-eno12399np0-buffer.service
            enabled: true
# mc-worker-ethtool-ens1f1np1-buffer.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: mc-worker-ethtool-ens1f1np1-buffer
  namespace: clusters
data:
  config: |
    apiVersion: machineconfiguration.openshift.io/v1
    kind: MachineConfig
    metadata:
      labels:
        machineconfiguration.openshift.io/role: worker
      name: 99-worker-ethtool-ens1f1np1-buffer
    spec:
      config:
        ignition:
          version: 3.4.0
        storage:
          files:
          - contents:
              compression: gzip
              source: data:;base64,[BASE64_CONTENT]
            mode: 420
            overwrite: true
            path: /etc/systemd/system/set-ethtool-ens1f1np1-buffer.service
        systemd:
          units:
          - name: set-ethtool-ens1f1np1-buffer.service
            enabled: true

Apply ConfigMaps do clusteru.

$ oc apply -f mc-worker-ethtool-eno12399np0-buffer.yaml
$ oc apply -f mc-worker-ethtool-ens1f1np1-buffer.yaml

Připojení ConfigMaps do fondu uzlů.

Upravte fond uzlů a přidejte ConfigMap Názvy pod položkou spec.config 

$ oc edit nodepool [NODEPOOL_NAME] -n clusters

Vložte následující řádky do spec Oddíl:

spec:
  config:
  - name: mc-worker-ethtool-eno12399np0-buffer
  - name: mc-worker-ethtool-ens1f1np1-buffer

Ověření node‑pool Aktualizace.

$ oc get nodepool -n clusters

Potvrďte, že UPDATINGCONFIG zobrazuje True a že verze odpovídá verzi clusteru.

Zkontrolujte stav služby na každém pracovním uzlu.

for i in $(oc get nodes -l node-role.kubernetes.io/worker= --no-headers | awk '{print $1}'); do
  oc debug node/$i -- chroot /host systemctl status set-ethtool-eno12399np0-buffer.service;
done
for i in $(oc get nodes -l node-role.kubernetes.io/worker= --no-headers | awk '{print $1}'); do
  oc debug node/$i -- chroot /host systemctl status set-ethtool-ens1f1np1-buffer.service;
done

Potvrzení nastavení kruhové vyrovnávací paměti

for i in $(oc get nodes -l node-role.kubernetes.io/worker= --no-headers | awk '{print $1}'); do
  oc debug node/$i -- chroot /host ethtool -g eno12399np0;
done
for i in $(oc get nodes -l node-role.kubernetes.io/worker= --no-headers | awk '{print $1}'); do
  oc debug node/$i -- chroot /host ethtool -g ens1f1np1;
done

Produse afectate

APEX, APEX Cloud Platform for Red Hat OpenShift
Proprietăți articol
Article Number: 000428878
Article Type: How To
Ultima modificare: 17 Feb 2026
Version:  1
Găsiți răspunsuri la întrebările dvs. de la alți utilizatori Dell
Servicii de asistență
Verificați dacă dispozitivul dvs. este acoperit de serviciile de asistență.