반응형
systemd에 서비스를 등록하면 부팅시 자동실행(systemctl enable) 할 수 있다. 그런데 자동실행 시 우선순위가 필요하다면 다음과 같이 tuned 패키지를 설치하여 우선순위를 설정할 수 있다.
부팅 프로세스 중 서비스 우선 순위 변경
systemd 서비스를 사용하면 부팅 프로세스 중에 시작된 서비스에 대한 실시간 우선 순위를 설정할 수 있습니다. 장치 구성 지시문 은 부팅 프로세스 중에 서비스의 우선 순위를 변경하는 데 사용됩니다.
부팅 프로세스 우선 순위 변경은 service 섹션에서 다음 지시문을 사용하여 수행합니다.
CPUSchedulingPolicy=실행된 프로세스에 대한 CPU 스케줄링 정책을 설정합니다. 기타,fifo 및 rr 정책을 설정하는 데 사용됩니다.CPUSchedulingPriority=실행된 프로세스의 CPU 스케줄링 우선 순위를 설정합니다. 사용 가능한 우선 순위 범위는 선택한 CPU 스케줄링 정책에 따라 다릅니다. 실시간 스케줄링 정책의 경우 1 (최저 우선 순위)에서 99 (최고 우선 순위) 사이의 정수를 사용할 수 있습니다.
다음 절차에서는 mcelog 서비스를 사용하여 부팅 프로세스 중에 서비스의 우선 순위를 변경하는 방법을 설명합니다.
사전 요구 사항
- TuneD 패키지를 설치합니다.
-
# yum install tuned
- TuneD 서비스를 활성화하고 시작합니다.
-
# systemctl enable --now tuned
절차
- 실행 중인 스레드의 스케줄링 우선 순위를 확인합니다.
-
# tuna --show_threads thread ctxt_switches pid SCHED_ rtpri affinity voluntary nonvoluntary cmd 1 OTHER 0 0xff 3181 292 systemd 2 OTHER 0 0xff 254 0 kthreadd 3 OTHER 0 0xff 2 0 rcu_gp 4 OTHER 0 0xff 2 0 rcu_par_gp 6 OTHER 0 0 9 0 kworker/0:0H-kblockd 7 OTHER 0 0xff 1301 1 kworker/u16:0-events_unbound 8 OTHER 0 0xff 2 0 mm_percpu_wq 9 OTHER 0 0 266 0 ksoftirqd/0 [...]
- 보조 mcelog 서비스 구성 디렉터리 파일을 생성하고 이 파일에 정책 이름 및 우선 순위를 삽입합니다.
-
# cat << EOF > /etc/systemd/system/mcelog.system.d/priority.conf [SERVICE] CPUSchedulingPolicy=fifo CPUSchedulingPriority=20 EOF
- systemd 스크립트 구성을 다시 로드합니다.
-
# systemctl daemon-reload
- mcelog 서비스를 다시 시작하십시오.
-
# systemctl restart mcelog
검증 단계
- systemd 문제로 설정된 mcelog 우선 순위를 표시합니다.
-
# tuna -t mcelog -P thread ctxt_switches pid SCHED_ rtpri affinity voluntary nonvoluntary cmd 826 FIFO 20 0,1,2,3 13 0 mcelog
반응형
'Linux' 카테고리의 다른 글
일반유저가 1024 이하 포트를 사용하기(setcap/getcap) (1) | 2024.01.23 |
---|---|
nvidia A30 Graphic 드라이버 설치 (0) | 2024.01.16 |
NAS로 Windows CIFS, Linux/UNIX NFS 공유 (1) | 2023.10.26 |
원격 서버 서비스 정지/가동 스크립트 (0) | 2023.10.19 |
pacemaker HA 공유 볼륨 추가 후 lvm rescan 방법 (1) | 2023.10.06 |
댓글