Solaris 10에서 네트워크 통계를 얻으려고 합니다.
Linux에서 작업할 때 수행하는 작업은 다음과 같습니다.:
02:42:06 IST IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
02:42:07 IST ens192 8.00 0.00 0.52 0.00 0.00 0.00 1.00
02:42:07 IST lo 43.00 43.00 7.98 7.98 0.00 0.00 0.00
이와 관련된 문제는 사용자가 사전 설치된 패키지 외에 추가 패키지를 설치할 것을 기대할 수 없다는 것입니다.
내가 시도한 것과 해당 질문은 다음과 같습니다.
- dladm 쇼 -dev -s: 보내고 받은 총 패키지 수를 표시합니다. 1초마다 보내고 받아야 해요
- dladm 쇼 -dev -s -i 1: 멈추지 않을 거예요. 스크립트가 Splunk에서 데이터를 추가로 인덱싱해야 하기 때문에 이는 허용되지 않습니다.
- 통계: 이 명령은 문제를 해결하지만 Solaris에는 사전 설치되어 있지 않습니다.
- 여기에 질문이 있습니다:: 솔라리스에 dlstat를 설치할 수 있는 방법이 있습니까?
- 닉스스타: Solaris 10 또는 11에는 사전 설치되지 않습니다.
추가 패키지를 설치하지 않고 이러한 필드를 얻을 수 있는 방법이 있습니까?
참고: 이 경우 전송 및 수신된 총 패키지 수를 수동으로 빼는 것은 신뢰할 수 없으며 추가 구현이 승인되지 않습니다.
미리 감사드립니다.
답변1
dladm show-dev -s ...
필요한 통계를 생성하는 경우 dladm show-dev -s
옵션 없이 명령을 사용하여 -i 1
한 번만 인쇄하거나 현재 사용량에 대한 스냅샷을 얻기 위해 여러 줄의 출력이 필요한 경우 명령을 시간 초과할 수 있습니다.
가장 쉬운 방법은 이 timeout
유틸리티를 사용하는 것이지만 Solaris 10에서 작동하는지 모르겠습니다.
timeout 5 dladm show-dev -s -i 1
또는 bash에서(Solaris 10에서 사용 가능):
( dladm show-dev -s -i 1 ) & sleep 5; kill $!
(또한 dladm
Solaris 11의 명령은 Solaris 10의 명령과 매우 다릅니다. Solaris 11에는 적용되지 dladm
않는 것 같습니다 .)dladm show-dev -s ...
답변2
귀하가 찾고 있는 명령은 netstat -i
Solaris 10 명령 또는 그 변형이라고 생각합니다.
dlstat
Solaris 11 명령입니다.
나는 nicstat가 Solaris 10의 일부가 아니라는 점에 대해 당신이 옳다고 믿습니다. v8에서 사용하기 위해 소스 코드를 다운로드하고 컴파일한 것을 기억하세요. Solaris 11에는 다음 패키지가 있습니다: pkg:diagnostic/nicstat
답변3
kstat 유틸리티를 사용할 수 있습니다. Solaris 10과 Solaris 11에서는 변수가 다릅니다. 다음은 공통 코드입니다.
KSTAT=$(kstat -p -c net '::mac:obytes64'; echo solaris10 globzone sent >/dev/null
kstat -p -c net '::mac:rbytes64'; echo solaris10 globzone rsv >/dev/null
kstat -p -c net '::phys:obytes64'; echo solaris11 globzone sent >/dev/null
kstat -p -c net '::phys:rbytes64'; echo solaris11 globzone rcv >/dev/null)
$KSTAT=$(echo "${KSTAT}" | sed 's/:[a-z]*:.*bytes64//; s/://; /vnic/d; /vsw/d;')
예제 변수 KSTAT는 전송 및 수신 트래픽으로 구성됩니다.
$ echo "$KSTAT"
igb0 1381124551259
igb1 0
igb2 0
igb3 0
usbecm2 509924057
igb0 803508091598
igb1 0
igb2 0
igb3 0
usbecm2 1007403041
이 모든 카운터는 항상 증가하고 있습니다. 사람이 읽을 수 있는 통계를 캡처하기 위해 시간 분석을 수행할 수 있습니다.
또한 비전역 영역이 있는 경우이 통계는 전용 IP 스택에만 사용할 수 있습니다.. 공유 IP 스택의 모든 영역은 동일한 통계를 갖습니다.