2.5. 간단한 Compute 노드 CPU 파티셔닝 및 메모리 검사


사전 요구 사항

배포된 컴퓨팅 노드에서 이 명령을 실행하고 cpu 마스크가 TripleO Heat Template 값에 매핑되는 방법을 확인합니다.

$ sudo ovs-vsctl get Open_vSwitch . other_config

{dpdk-init="true", dpdk-lcore-mask="300003", dpdk-socket-mem="3072,1024", pmd-cpu-mask="c0000c"}
Copy to Clipboard Toggle word wrap

다음을 확인합니다.

2.5.1. CPU 감지

pid 1의 CPU를 감지하려면 다음 명령을 사용합니다. PMD 또는 Nova vCPU는 다음 코어에서 실행되지 않아야 합니다.

$ taskset -c -p 1

pid 1's current affinity list: 0,1,20,21
Copy to Clipboard Toggle word wrap

2.5.2. PMD 스레드 감지

PMD 스레드를 보려면 다음 명령을 사용합니다. 출력에 Tripleo 매개변수 OvsPmdCoreList 의 값이 반영되어야 합니다. Tripleo 매개변수 OvsDpdkCoreList 또는 HostIsolatedCores list 의 값과 겹치지 않아야 합니다.

$ ps -T -o spid,comm -p $(pidof ovs-vswitchd) |grep '\<pmd' |while read spid name; do echo $name $(taskset -p -c $spid); done

pmd44 pid 679318's current affinity list: 3
pmd45 pid 679319's current affinity list: 23
pmd46 pid 679320's current affinity list: 22
pmd47 pid 679321's current affinity list: 2
Copy to Clipboard Toggle word wrap

2.5.3. NUMA 노드 감지

최적의 성능을 위해 인스턴스의 물리적 네트워크 어댑터, PMD 스레드 및 고정 CPU가 모두 동일한 NUMA 노드에 있는지 확인합니다. 자세한 내용은 다음을 참조하십시오. CPU 및 NUMA 노드.

다음은 NUMA 할당 검사를 위한 간단한 방법입니다.

  1. 컴퓨팅 노드에서 인스턴스의 vhu 포트를 검사합니다.

    $ sudo virsh domiflist 1
    
    Interface  Type       Source     Model       MAC
    -------------------------------------------------------
    vhu24e6c032-db vhostuser  -          virtio      fa:16:3e:e3:c4:c2
    Copy to Clipboard Toggle word wrap
  2. 해당 포트를 서비스하는 PMD 스레드를 검사하고 NUMA 노드를 확인합니다.

    $ sudo ovs-appctl dpif-netdev/pmd-rxq-show
    
    pmd thread numa_id 0 core_id 2:
        isolated : false
        port: vhu24e6c032-db      queue-id:  0    pmd usage:  0 %
        port: vhu94ccc316-ea      queue-id:  0    pmd usage:  0 %
    Copy to Clipboard Toggle word wrap
  3. 인스턴스에 대한 물리적 고정된 cpu를 찾습니다. 예를 들어 이 인스턴스의 포트는 cpu 2에 있으며 인스턴스는 cpus 34 및 6에 의해 제공됩니다.

    $ sudo virsh dumpxml 1 | grep cpuset
    
        <vcpupin 1 vcpu='0' cpuset='34'/>
        <emulatorpin cpuset='6'/>
    Copy to Clipboard Toggle word wrap
  4. 각 NUMA 노드의 코어를 검사합니다. 인스턴스를 서비스하는 CPU(34,6)는 동일한 NUMA 노드(0)에 있습니다.

    $ lscpu | grep ^NUMA
    
    NUMA node(s):          2
    NUMA node0 CPU(s):     0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38
    NUMA node1 CPU(s):     1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39
    Copy to Clipboard Toggle word wrap

또한 OVS DPDK에서 관리하지 않는 네트워크 어댑터에는 해당 어댑터에 속하는 NUMA 노드를 나타내는 항목이 있습니다.

$ sudo cat /sys/class/net/<device name>/device/numa_node
Copy to Clipboard Toggle word wrap

또는 OVS DPDK에서 관리하는 경우 PCI 주소를 쿼리하여 네트워크 어댑터의 NUMA 노드를 볼 수 있습니다.

$ sudo lspci -v -s 05:00.1 | grep -i numa

Flags: bus master, fast devsel, latency 0, IRQ 203, NUMA node 0
Copy to Clipboard Toggle word wrap

이러한 관행은 PMD, 인스턴스 및 네트워크 어댑터가 모두 NUMA 0에 있음을 보여줍니다. openvswitch 로그( /var/log/openvswitch에 위치)에서 교차 NUMA 폴링을 나타내는 경우 다음과 유사한 로그 항목을 찾습니다.

dpif_netdev|WARN|There's no available (non-isolated) pmd thread on numa node 0. Queue 0 on port 'dpdk0' will be assigned to the pmd on core 7 (numa node 1). Expect reduced performance.
Copy to Clipboard Toggle word wrap

2.5.4. 분리된 CPU 감지

다음 명령을 사용하여 분리된 CPU를 표시합니다. 출력은 TripleO 매개 변수 IsolCpusList 의 값과 동일해야 합니다.

$ cat /etc/tuned/cpu-partitioning-variables.conf | grep -v ^#

isolated_cores=2-19,22-39
Copy to Clipboard Toggle word wrap

2.5.5. Nova 인스턴스에 전용 CPU 감지

다음 명령을 사용하여 Nova 인스턴스 전용 CPU를 표시합니다. 이 출력은 PMD( poll mode driver) CPU 없이 isolcpus의 값과 동일해야 합니다.

$ grep ^vcpu_pin_set /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf

vcpu_pin_set=4-19,24-39
Copy to Clipboard Toggle word wrap

2.5.6. 대규모 페이지 설정 확인

계산 노드에서 대규모 페이지 구성을 확인합니다.

[root@compute-0 ~]# cat /sys/devices/system/node/node*/meminfo  | grep -i huge
Node 0 AnonHugePages:      4096 kB
Node 0 HugePages_Total:    16
Node 0 HugePages_Free:     11
Node 0 HugePages_Surp:      0
Node 1 AnonHugePages:      8192 kB
Node 1 HugePages_Total:    16
Node 1 HugePages_Free:     15
Node 1 HugePages_Surp:      0
Copy to Clipboard Toggle word wrap

대규모 페이지가 구성되어 있지 않거나 소진된 경우 KernelArgs를 참조하십시오.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat