노드 로그 조회

Node log query

노드에 SSH로 접속하지 않고 kubelet API로 시스템 로그를 조회합니다.

···
html
<div class="stage" data-phase="0"><div class="title">NODE LOG QUERY</div><div class="row query"><div class="panel mono">SYSTEM LOG<br>REQUEST</div><span>→</span><div class="panel node">NODE 03<div class="lines"><i></i><i></i><i></i></div></div></div><div class="panel mono output">waiting for system log…</div></div>
css
.stage{width:min(94vw,760px);height:min(88vh,330px);padding:clamp(9px,2.6vmin,20px);border:1px solid var(--line);border-radius:14px;background:var(--surface);font:600 clamp(12px,2.5vmin,16px)/1.3 "Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif;display:flex;flex-direction:column;gap:clamp(6px,1.7vmin,12px);overflow:hidden;position:relative}.stage *{min-width:0}.stage .title{color:var(--accent);font-weight:800}.stage .sub{color:var(--muted)}.stage .row{display:flex;align-items:center;gap:clamp(5px,1.6vmin,12px)}.stage .panel{border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:clamp(6px,1.6vmin,12px)}.stage .mono{font-family:ui-monospace,SFMono-Regular,monospace;font-size:clamp(12px,2.5vmin,15px)}.stage .grow{flex:1}.stage .on{color:var(--accent)}.query{flex:1;justify-content:space-around}.query>span{color:var(--accent);font-size:clamp(18px,5vmin,28px)}.query .panel{width:42%;text-align:center}.lines{display:flex;gap:4px;justify-content:center;margin-top:8px}.lines i{width:24%;height:5px;border-radius:3px;background:var(--line)}.output{min-height:37px;color:var(--muted)}.stage[data-phase="1"] .node{border-color:var(--accent)}.stage[data-phase="1"] .lines i:nth-child(2){background:var(--accent)}.stage[data-phase="2"] .output{font-size:0;border-color:var(--accent)}.stage[data-phase="2"] .output:after{content:'kubelet: volume mounted';font-size:clamp(12px,2.5vmin,15px);color:var(--accent)}
js
const stage=document.querySelector('.stage');let phase=0;function advance(){phase=(phase+1)%3;stage.dataset.phase=String(phase)}const timer=setInterval(advance,1200);stage.addEventListener('pointerdown',()=>{clearInterval(timer);advance()})

노드 로그 조회는 kubelet이나 kube-proxy의 로그를 쿠버네티스 API 경로로 확인하는 기능입니다. 파드 로그만으로는 보이지 않는 노드 장애를 조사할 때 쓸 수 있습니다.

데모에서는 조회 요청이 노드를 지나 특정 서비스의 로그 줄을 반환합니다. 쿠버네티스 1.36에서 안정 기능이 되었지만, kubelet의 enableSystemLogQuery 설정과 적절한 조회 권한이 필요하며 모든 노드 장애를 SSH 없이 해결할 수 있다는 뜻은 아닙니다.

언제 쓰나

클러스터 운영자가 파드 밖의 kubelet·네트워크 문제를 원격 진단할 때 사용합니다.

페이지로 열기 ↗