본문 바로가기

Linux is....

후잡한 실력으로 core debug을 넘보다. -.-b 후잡이니보지마삼 이번주 들어 부쩍 추워졌다.벌써 겨울인가 싶을정도로....ㅠ이제부터 춥기시작하면 내년 3월 까지 추울텐데...쩝;;차라리 더운게 낫기 쉽다... 아직 application core dump을 직접 분석해볼 기회가 없어 손놓고 있었는데 우연한 기회로 시도할수 있게되었다.많이 미흡한 실력인지라 블로그에 올리기도 민망하지만...그래도 난 올려볼란다 심심하니깐ㅎ 고객이 보낸 파일이 정상적인지 비정상적인지도 판단할 실력이 아닌지라,그냥 출력되는 내용만으로 유추해보고 싶어졌다. 환경 RedHat Enterprise Linux 5 update 10 httpd-2.2.3-83 사건내역(?)은 이렇다. 사용도중 특정 웹서버 몇대만이 httpd log을 통해 세그먼트폴트를 출력한다는 내용이다.OS messages에는 메시.. 더보기
ioping명령어를 통해 간단하게 Disk i/O Latency를 측정해보자. 네트워크 상에서 많이 쓰는 도구중에 하나가 PING 이 아닐까 생각한다.네트워크가 안된다면 우리들은 일단 PING 을 통해서 습관적으로 확인하니깐네트워크에 PING 이 있다면, 디스크에는 IO Latency 를 확인해 볼 수 있는 IOPING 이 있다. 세부 정보는 다음 경로에서 확인해보자. [dhkim@redhat ~]$ wget https://ioping.googlecode.com/files/ioping-0.7.tar.gz 외부와 통신이 되어있다면, 리눅스환경에서 wget명령어를 통해 바로 파일을 다운받는다.자세한 사항은 https://ioping.googlecode.com/ URL을 통해 확인한다. 다운 받아보면 아주 간단하게 구성되어 있다[dhkim@redhat ioping-0.7]$ lsMake.. 더보기
SysRq의 개념과 사용법 전 직장에서 근무당시에 SK*쪽에서 상주근무를 하였는데, 당시에 나는 많은 준비가 안되어있었다.더군다나 나는 운영(필요한 기술 튜닝, 권고사항, 보안, 성능분석 등등) 해당 분야에 미흡했기 때문에 많은 실수와 부분을 배워나갔다고 볼수 있다. 한달 두달 단순 커맨더에서 벗어나 알고리즘 및 아키텍쳐에 대해서 공부해 나아가야 겠다는 마음이 절실했던 순간이기도 하다.그런 의미해서 당시 담당 매니저가 나에게 문의헸던 내용에 대해 답변했던 사항을 간단하게 글로써 풀고자 한다. "Magic" SysRq key는 무엇인가? Linux kernel문서에 따르면:이것은 kernel의 정보를 나타나게 하는 콤보 키다. 일반적인 경우, 이 콤보 키를 이용하면 kernel이 무엇을 하고 있든지를 막론하고 즉시로 kernel의 .. 더보기
netstat을 이용한 Socket연결상태확인 POC 등을 위한 성능테스트를 위해 진행하게 되면 여러가지 성능부하테스트툴을 이용하여 진행하게 되는데,이때 DBMS 및 Application 등 소켓상태를 확인하게 된다.즉, 그에따라 정상적으로 서비스가 이뤄지는지 확인이 가능할수 있게 되는데 그에 따라 플랫폼입장에선 netstat명령어를 이용하여 대략적으로 확인할수 있겠다. [dhkim@redhat ~]$ sudo netstat -a -n|grep -E "^(tcp)"tcp 0 0 0.0.0.0:902 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 192.168.219.149:37763 203.233.10.242:443 ESTABLISHEDtcp 0 0 192.168.219.149:55.. 더보기
linux(이하. RHEL)버전별 넘버에 대한 내용 너무나도 기본적인 부분이지만 다시 한번 짚어가는 의미로 커널버전 넘버에 대해 알아보려한다. 아시다시피 uname -a을 통한 현 커널버전의 상태는 아래와 같이 확인할것이다. [root@server1 ~]# uname -aLinux server1.example.com 2.6.18-274.el5 #1 SMP Fri Jul 8 17:36:59 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux 위 내용을 보시다시피,커널 버전은 #.#.# 으로 구성되어 있으며, 각 #(숫자)를A.B.C 로 구성되었다고 할때 앞에 있는 A.B 는 커널의 버전을 나타 낸다. 나머지 C 는 마이너 버전을 가리킨다. 위를 참고삼아 내용을 지정하자면,A(2) : 커널 버전을 가리킨다.B(6) : 해당 커널 버전의 m.. 더보기
Clustered Samba?CTDB?그게 뭘까... 벌써 10월 한달도 가고 겨울 문턱인 11월이다. 오늘 간만에 이것저것 보다가, 이전 기술지원 고객중 AIX GPFS제품을 이용한 ctdb서비스를 이용했던, 사이트/사례가 생각이 났다.아는 사람만 알겠지만, Redhat에서도 RHEL6.2이상부터, Clustered Samba을 Fully Support지원한다.(RHEL5.X +되나 어디까지나, tech preview로 분류됨) RHEL 4: There is no support for CTDB.RHEL 5: CTDB is a Technology Preview only.RHEL 6: CTDB is supported on RHEL 6.2 and greater with a maximum of 4 active nodes. 먼저 CTDB에 대해서 알아야 하는데, .. 더보기
RHCS환경에서 DATA영역을 ext3에서 ext4로 convert해보자 오늘은 기존 단일시스템에서 ext4 convert가 아닌 RHCS환경에서의 PM을 통한 작업시나리오를 더불어 작성해볼까 한다. 일단 먼저 변환하기 위해서 아래와 같은 RPM이 필요하다.그렇치 않으면 하기와 같은 메시지를 맞닿들일수 있다..tune2fs 1.39 (29-May-2006)Invalid filesystem option set: extents,uninit_bg,dir_index In Red Hat Enterprise Linux 5, ext4 support comes with the additional package 'e4fsprogs'. So in order to convert an ext3 file system to ext4, use the command 'tune4fs' from 'e4fsp.. 더보기
ifcfg-ethN파일내에 UUID는 무엇을 뜻하는 것인가? 환경RedHat Enterprise Linux 6 All Versions rhel6내의 ifcfg-ethN파일을 보면, 아래와 같은 형태의 세션을 확인할수 있을 것이다. $ cat ifcfg-ethXUUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"NM_CONTROLLED="yes"HWADDR="xx:xx:xx:xx:xx:xx"BOOTPROTO="dhcp"DEVICE="eth0"ONBOOT="yes" 그중에 못보던 놈이 있는데 UUID는 놈이다. 앞서 rhel6버전의 networking에 대해서 애기한 내용중에 자주 언급되던 놈이 있다. 바로 NetworkManager라는 놈인데,사실 처음 GA버전6.0이 나왔을때, 엔지니어 및 커뮤니티에서 많은 이슈를 뿌리던 놈이기도 하다. .. 더보기
SCSI Addressing에 대한 이해 그간 바쁘다고 포스팅을 게을리했더니....정말이지 머릿속이 백지장이 된듯하네요...;;쩝아무튼 오늘은 간만이지 필받은(?)하루여서 이렇게 늦은시간에 포스팅을 하게되었습니다. 그럼 오늘도 역시나 반말(ㅜㅜ)로 포스팅을 이어나가도록 하겠습니다.(__) SCSI Address란 무엇인가?정말이지 어렵다. 왜 어렵냐하면, 미들웨어급에서 하이엔드급으로 오게되면 많은 스토리지벤더사의 스토리지를 만지게 되며, 그와 동시에 XB,TB 등과 같은 대용량의 파일시스템을 만지게 되는일이 빈번하게 생기기 떄문이다.이럴때 정확한 개념이 잡혀 있어야 나에게 주어진(?) 볼륨들을 컨트롤 할수 있고 Formatting을 통해 사용자가 사용할수 있게 만들수 있다. 물론 트러블슈팅이 생겼을 경우, 어느 정도의 정보를 통해 디버깅을 할수.. 더보기
What is the difference between 32-bit and 64-bit? 오랜만에 이전에 알고 지내던 엔지니어와 통화하던중 갑작스럽게 32bit와 64bit의 차이점 및 개념을 아냐는 쓰잘기 없는 질문을 했다...개념자체가 없어보였다 하지만 난 단순히 bit개념이 아닌 좀 더 세밀한 답변을 원했던 그 친구에게 별로 대답해준게 없었다... 우리가 흔히 사용하고 있는 CPU(AMD64 or Intel EM64T)는 알고 있을꺼다. 위에서 나열한 거외에 Itanium(64bit) and Power PC(64bit)도 다른 구조를 갖고 있지만 여기서는 AMD64/Intel64 architecture명시하도록 하겠다. 그럼 우리가 쓰고 있는 CPU가 64bit라는건 어떻게 확인할것인가? 그것은 flag내용만 보면 CPU의 지원범위를 알수 있다. [dhkim@linuxdata ~]$ g.. 더보기