회사내 운영시스템과 리눅스벤더의 선택

RisaPapa의 이미지

이번에 20대정도의 운영시스템을 새롭게 선택을 하면서 많은 고민을 했는데
한국에서의 대규모 네트웍 시스템의 경우에는 어떤 정책을 기본으로 해서
회사의 운영시스템을 선택하는지 궁굼하군요.

일단 저의 결정 내용과 기준은 아래와 같습니다.

레드햇9의 서비스 중단으로 인해서 회사의 세큐리티등에 문제가 발생을
했고 시스템을 일일이 소스로 해서 업그레드하기가 점점 어려워지고 인건비를
계산하면 새로운 운영시스템을 구입하는 것이 저렴하게 먹히고 안전하다는
생각에서 운영시스템 교체를 결정한 계기가 되었습니다.

윈도우나 리눅스나 종류는 가리지 않습니다. 이미 제가 가진 솔류션으로는
리눅수와 똑같은 일을 윈도우에서 할 수가 있고 그 이상의 개발을 할 수가
있는 배경이 있기 때문입니다.

사회와 기업의 인식 그리고 개발자가 일반적으로 원하는 운영시스템이
무엇인가를 고려했을 경우 국가 정책등을 비추어 보면 리눅스가 현명한
선택이라는 점도 감안을 했습니다.

윈도우와 리눅스에서 업그레이드와 안전을 유지하기 위한 비용은 어느정도이고
어느 쪽이 유리한가도 산출을 했는데 윈도우가 훨씬 싸게 먹힌다는 내용도 이미
확인인 되었습니다.

각 리눅스벤더에서 배포되는 팩키지를 모두 인스톨해서 사용하기에 편하고
앞으로 내가 살아 있는한 망하지 않을 회사는 어느 곳인가라는 것도 고려를
했고 계속해서 업데이트와 유지가 가능한가도 고려를 했습니다. 이것은
벤더 회사의 재무와 자본관계자료를 기본으로 했습니다.

그리고 디바이스에서는 레이드5를 기본으로 제공을 해야되고 백업과 시스템을
안전하게 운영하기 위한 기본 요소들이 포함이 되었는지도 중요한 안건이
되었습니다.

앞으로 64비트로 시프트하기 위한 회사로서의 정확한 정책과 어느 정도 현재
안정성이 있는 시스템을 가지고 있는가도 검토하였고 커넬 2.6으로 시스템을
시프트하기 위한 몇가지도 점검을 했습니다. 아직 2.6계열은 엔터프라이즈로
사용하기에 디바이스가 많이 부족하다는 결과와 내년 상반기 이후에 재검토
하자는 결론도 내렸습니다.

이외에 리눅스벤더가 어느 나라의 회사인가와 그 나라의 IT정책에 대해서
정부로부터 정책적으로 환경적인 지원이 있는가등도 조사를 했습니다.

일단 이런 방법으로 운영시스템을 결정하게 되었는데 80%이상을 리눅스로
20%를 윈도우 서버 시스템으로 하고 차후 제가 리눅스64비트 팩키지를
개발하고 있는데 현재의 윈도우 클라이언트는 2,3년 뒤에 모두 리눅스64비트
시스템으로 변경해 간다는 정책을 내리게 되었습니다. 그후 서버 시스템도
레이드등의 디바이스등이 정비되면 리눅스64비트 시스템 전환하려고 합니다.
다시 말해서 회사내 운영시스템의 원가 제로를 목표로 하고 있고 기존 구식
하드시스템의 경우에는 리눅스 벤더의 상품으로 유지를 하려고 합니다.

아마 현재의 계속적인 개발때문에 2,3대 정도는 윈도우2000과 2003, 앞으로
출시될 롱혼등은 계속해서 회사 한 구석을 차지하고 있으리라고 생각합니다.

여러가지를 종합해서 결정을 내린 리눅스 벤더는 SUSE 이고 윈도우2000을
사용하기로 결정을 내렸습니다. 윈도우2000을 사용하기로한 이유는 서버로
사용하기 위해서 서비스로 작동하는 것이 기본인데 윈도우2003과 작동 방식이
조금 다르다는 것과 기존 개발해온 것들이 기본적으로 윈도우2003에서도
작동하는데 2003에서 작업을 하다보면 윈도우2000에서는 작동이 안하는
경우가 가끔 발생하기 때문입니다.

이러한 결정을 하기위해서 6개월 정도의 기간이 필요했습니다.

성의 없이 생각나는 대로 대충 글을 써서 뒤죽박죽입니다만 관련된 일을
하시고 계시는 분들의 의견을 듣고 싶습니다.

권순선의 이미지

상용 리눅스 벤더의 경우는 대체로 RedHat과 Suse 둘을 놓고 고민하는 경우를 많이 보아 왔는데 RisaPapa님의 경우 Redhat이 아닌 Suse를 선택하신 특별한 요인이 있나요?

RisaPapa의 이미지

권순선 wrote:
상용 리눅스 벤더의 경우는 대체로 RedHat과 Suse 둘을 놓고 고민하는 경우를 많이 보아 왔는데 RisaPapa님의 경우 Redhat이 아닌 Suse를 선택하신 특별한 요인이 있나요?

일반적으로 위의 두개를 두고 고민을 하는 경우가 많지만 저는 데비안과 FreeBSD도 고려를 많이 했습니다. 그러나 저희 회사에서 기본적으로 쓰고 있는 서버가 델과 HP이고 기본적으로 레이드5와 스토리지를 지원을 해야하는데 데비안과 FreeBSD는 디바이스 때문에 인스톨하는데 많은 어려움이 있어서 제외를 했습니다.

RedHat은 7.2와 RedHat계열의 많은 벤더 제품을 써왔는데 저의 마음이 이 제품에서 멀어져간것은 8.0과 9.0에서 입니다. 특히 GCC를 2.6버전을 상품에 포함했던 부분은 상품의 이미지를 많이 떨어트린 부분이 아닌가 생각됩니다.

그 후에 많은 벤더들이 RedHat계열의 상품을 내어 놓았는데 기본적인 빌드 정책인 .spec이 제가 생각하는 정책과 너무나 거리가 있었고 제가 받아 들일 수가 없었던 것들이 많았습니다. 특히 언어계통에서 펄은 제가 가장 좋아하는 언어인데 파이선을 우선하는 정책이 느껴진 점도 있었고 많은 시스템 툴이 아직도 펄에 의해서 작동하고 있는데도 불구하고 펄에서 제가 원하는 결과를 얻을 수가 없었던 점도 RedHat계열의 상품에서 마음을 멀리하기 시작한 원인이 되었습니다. 제가 생각하고 있는 상품으로서의 품질을 만족시켜주지 못한 점도 있었습니다.

아직 SuSe를 사용해서 많은 개발을 해보진 않았지만 라이브러리 정책에 있어서 아주 보수적인 성향이 느껴지고 새로운 버전이 나온다고 해서 안정적인 버전이 아니면 팩키지에 넣지 않고 상품으로서의 품질을 느낄수가 있었던 점이 많은 매력을 느꼈습니다. 그러면서 더 많은 안정적인 바이너리 팩키지들을 제공하고 선진적인 기능을 과감히 커넬에 포함시키면서 성능개선에 노력하는 모습이 느껴진 점도 호감을 갖게 했습니다. SuSe에서 느껴지는 점은 RedHat의 안정 버전만이 출시되고 있다는 느낌이 들었습니다.

사용하면서 새롭게 다른 문제점들을 발견을 하겠지만 현재까지 테스트를 하면서 가장 후한 점수를 주고 싶은 것은 리눅스에서는 SuSe이고 그 외는 FreeBSD입니다. 제가 개발을 하고자 하는 것은 펄을 사용한 빌드시스템과 Perl/TK를 사용한 인스톨러까지를 개발을 해보려고 합니다. 이렇게 함으로 FreeBSD와 리눅스의 차이를 별로 느낄 수가 없을 정도의 빌드 시스템을 한번 만들어 보는 것이 꿈입니다.

그외 SuSe의 자본 관계에 IBM이 많이 관여하고 있다는 점도 있습니다. 노벨이 SuSe에 자본참여를 하는데에 그 뒷 배경에는 IBM이 배후에서 주선하고 모종의 계약이 있었다는 점입니다. 다시 발해서 차후 2,3년 후에는 RedHat이 지키고 있는 현재의 자리를 SuSe에 넘겨주는 현상이 발생하리라고 생각됩니다. 그외 노벨이 가지고 있는 네트웍기술은 아주 중요한 기술중의 하나라고 생각됩니다. 이러한 것들이 SuSe리눅스에 접목이 된다면 아주 강력한 리눅스벤더로 나서게 될것이라고 생각됩니다.

저는 윈도우에서 리눅스에서 사용하는 왠만한 라이브러리는 대부분 포팅을 하여 사용하고 있는데 기본적으로 빌드하는 스펙과 메이크파일을 기본으로 포팅을 합니다. 윈도우에서 없는 함수는 추가하거나 삭제를 하고 하는 작업을 많이 해오다 보니 빌드 스크립을 조금만 읽어 보면 빌드정책이나 스크립에서 느껴지는 정열이라든가 얼마나 고심하면서 만들었는가가 느껴지곤 합니다.

특히 라이브러리는 시스템에 많은 영향을 주고 개발자에게는 아주 중요한 부분입니다. 아직도 제가 생각하는 리눅스에서의 문제점은 라이브러리의 일괄적인 정책이라고 생각을 하고 있습니다. 그많은 라이브러리를 일괄적으로 관리하기란 어려움이 있겠지만 이 부분에서 다른 리눅스 벤더보다 SuSe에 후한 점수를 준 것이 선택을 하는데 가장 영향을 준것이 아닌가 생각됩니다.

sangu의 이미지

RisaPapa wrote:

RedHat은 7.2와 RedHat계열의 많은 벤더 제품을 써왔는데 저의 마음이 이 제품에서 멀어져간것은 8.0과 9.0에서 입니다. 특히 GCC를 2.6버전을 상품에 포함했던 부분은 상품의 이미지를 많이 떨어트린 부분이 아닌가 생각됩니다.


gcc 2.96을 말씀하시는 건가요? 그렇다면 그건 RedHat 7.x 때 이구요. 그리고 RedHat 계열의 벤더 제품이라는 것은 무슨 의미인지 알고 싶네요. 8.0하고 9에서는 GCC 3.x이 기본 설치입니다.

나머지 부분은 개인적인 느낌이신것 같아서 ... :)

pyrasis의 이미지

RisaPapa wrote:
제가 개발을 하고자 하는 것은 펄을 사용한 빌드시스템과 Perl/TK를 사용한 인스톨러까지를 개발을 해보려고 합니다. 이렇게 함으로 FreeBSD와 리눅스의 차이를 별로 느낄 수가 없을 정도의 빌드 시스템을 한번 만들어 보는 것이 꿈입니다.

펄 하고는 약간 거리가 있지만 FreeBSD, 리눅스에서 동시에 사용가능한 pkgsrc는 어떤가요?

RisaPapa의 이미지

sangu wrote:

gcc 2.96을 말씀하시는 건가요? 그렇다면 그건 RedHat 7.x 때 이구요. 그리고 RedHat 계열의 벤더 제품이라는 것은 무슨 의미인지 알고 싶네요. 8.0하고 9에서는 GCC 3.x이 기본 설치입니다.

나머지 부분은 개인적인 느낌이신것 같아서 ... :)

제가 실수를 했군요. gcc 2.96입니다. 9에서는 GCC3 버전입니다만, 이 버전으로 올라가면서 많은 문제점이 있었습니다. 소스로 빌드를 해보시고 업그레이드를 해보신분은 아시겠지만 컴파일러가 업그레이드되면서 컴파일해서 제가 원하는 바이너리를 쉽게 얻어 낼 수가 없었던 기억이 있습니다. 일반적으로 펄을 빌드하시는 분은 별로 없을 것입니다만 펄 커뮤니티에서는 라이브러리와 스펙에 버그가 있어서 한참 떠들썩한 적이 있기도 합니다. 이 때에 저희 회사에서 서버를 래드햇9를 많이 사용했는데 라이브러리와 GCC는 제가 새롭게 팩키지한 것으로 모두 갈아넣어서 사용해 왔는데 제가 바쁘다 보니 더 이상 이것에 매달릴 수가 없어서 이번에 리눅스를 새로 선택해서 조금 편해 보고자 하는 것 뿐입니다.

RedHat 계열이라함은 미라클 리눅스나 아지안넉스, 터보리눅스등이고 그외 한국에서 배포되는 리눅스는 대부분 RedHat 계열이라고 생각됩니다. 같은 RedHat 계열의 소스 RPM은 대부분 별 문제가 없이 빌드가 됩니다. 그러다 보니 같은 계열의 것들은 공통적인 문제점을 가지고 있다는 생각이 듭니다. 한동안 회사에서 오라클을 많이 사용해 미라클 리눅스도 많이 사용했는데 조금 다른 부분도 있어서 서버를 구축할 때마다 고생을 했던 기억이 있습니다. 미라클 리눅스의 핵심 개발자인 요시오카라는 사람은 개인적으로 알고 있고 리눅스 컨퍼런스에서 만나 술자리도 하곤 했습니다만 이야기하는 것을 보면 오라클 데이터베이스 서버에 최적화된 리눅스를 제공하는 데에 그 목적이 있다는 생각이 들었습니다.

사실 SuSe도 RedHat 계열이라고 말을 할 수가 있는데 세심한 부분에 많은 배려를 하였다는 생각과 이전 제가 경험했던 트러블은 거의 없었기 때문에 제가 아닌 다른 시스템 관리자나 경험이 부족한 관리자라 하더라도 별 어려움이 없을 것이라고 판단이 되었습니다. 어쩌면 경비절감이란 측면에서도 득이 될 것이란 생각도 듭니다.

이런 생각을 하는 것은 일본은 시스템에 문제가 있으면 시스템 관리자가 자기가 스스로 해결하려고 노력하는 사람이 별로 없다는 생각이 듭니다. 그리고 조금 문제가 있으면 아예 포기해 버리고 다른 팩키지나 다른 방법으로 구현하려고 합니다. 가끔 어처구니 없을 경우도 있는데 모두 디폴트로 해서 서비스란 서비스는 모두 다 올려놓고 운영을 하려고 하는 사람도 있고 시스템을 적절하게 튜닝하고 하는 노력이 아주 부족하다는 생각이 듭니다.

그래서 일단 시스템은 안정된 리눅스 팩키지를 선택하고 폴리시를 정해 시스템을 운영하는데에 있어서 별 신경을 쓰지 않도록 하기 위해서 이번 기회에 삭 갈아 버리려고 하려는 것입니다. 조금 문제만 발생이 되면 여기 저기 불려 다니는 것도 이제는 귀찮아진 점도 있고 시스템 관리자에게 서버 하나 셋업 해달라고 부탁하면 세월아 네월아 하는 꼴을 제가 보고 싶지도 않기 때문입니다. 지금까지 답답해서 제가 쓸 것은 제가 셋업해서 사용해 왔는데 다음 부터는 시스템 관리자에게 부탁해서 철저하게 분업이 이루어져 불필요한 시간을 낭비하고 싶지 않기 때문이기도 합니다. 제가 지금 제일 싫어 하는 일 중의 하나는 운영시스템을 인스톨하고 설정하는 것이기도 합니다. 그리고 이것은 시간낭비라고 생각을 합니다.

maddie의 이미지

네..수세..참 독일스러운 배포판이라고 생각합니다.
별 잔 버그없고..
세심하게 하나하나 배려해 놓았지요.

전엔 레댓이나 젠투 슬랙웨어 쪽을 좋아했는데..나이먹어 귀찮아지니깐 그냥 수세를 쓰게 되더군요.

우리나라에서 많이 안알려져서 그렇지, 한 패키지로서의 가치는 상당히 높은 배포판이 아닐까 생각합니다.

힘없는자의 슬픔

fibonacci의 이미지

수세에 대한 칭찬이 은근히 있네요. 한번 써봐야 겠습니다. 카멜레온인가요? 수세로고가 귀엽네요.

No Pain, No Gain.

RisaPapa의 이미지

fibonacci wrote:
수세에 대한 칭찬이 은근히 있네요. 한번 써봐야 겠습니다. 카멜레온인가요? 수세로고가 귀엽네요.

그럴 마음은 없지만 제가 보아온 것들 중에는 제일 점수를 주고 싶다는
의견일 뿐입니다. 저는 수세(주제[zuze], or 수제[suze])의 로고는 별로라고
생각 합니다만...,

한국의 리눅스도 테스트를 해보지만 타겟을 한국이 아닌 다른 나라에
두고 개발을 하면 어떨까하는 마음이 굴뚝같습니다.

운영시스템에서 사용하는 언어는 리눅스에서는 대부분 해결이
되는 것이니까요.....,

kilhan의 이미지

Suse linux를 써본적은 없고
Redhat linux를 주로 사용하곤 하는데
7.2와 Redhat Enterprise linux (RHEL)를 주로 사용합니다.

제 생각으로 여전히 9.0을 사용하시면서
버그나 문제가 있다고 말씀하시는것은
RHEL에서의 정책에서 웬만큼 해결이 되었을거라고 합니다.

또한 RHEL에서의 업그레이드 정책에 의하면
각종 라이브러리들의 버전체킹이 좀더 쉬워질것으로 생각하는데

자신이 관리하는 서버를 사용한다면
유지관리 비용이 줄지 않을까 생각합니다.

(이러니 제가 한국 Redhat 직원같군요)

보통 RHEL을 사용하시지 않는 이유가 유료이기 때문인데
저는 비용을 지불할만한 서버라면 그 만한 가치가 있고
이것은 다른(ex Suse)배포판에서 제공하는것이상은 될것이라 생각합니다.

그버전으로 테스트를 하신것인지 궁금해서 묻는것입니다. -)
앞으로도 꼭 한번 테스트 해보시면 좋겠구요
어느정도 본인의 생각만큼 따라와 주는지도요,
몇개월간의 벤치마크를 한정도로 성실히 테스트 해준다면
다른 분들도 많은 도움을 얻지 않을까 합니다.

codebank의 이미지

RisaPapa wrote:
이런 생각을 하는 것은 일본은 시스템에 문제가 있으면 시스템 관리자가 자기가 스스로 해결하려고 노력하는 사람이 별로 없다는 생각이 듭니다. 그리고 조금 문제가 있으면 아예 포기해 버리고 다른 팩키지나 다른 방법으로 구현하려고 합니다. 가끔 어처구니 없을 경우도 있는데 모두 디폴트로 해서 서비스란 서비스는 모두 다 올려놓고 운영을 하려고 하는 사람도 있고 시스템을 적절하게 튜닝하고 하는 노력이 아주 부족하다는 생각이 듭니다.

이부분은 일본만의 문제는 아니라고 생각합니다.
사실 시스템 튜닝하고 시스템에 맞추려고 노력하는 사람들은 소수이고 그런 사람들이
오히려 더 부각되어서 그렇게 보일 뿐이라고 생각합니다.
우리나라에서도 대부분의 회사에서 서버를 여러대 놓고 운영을하게되면 튜닝보다는
그냥 돌아가는게 목적이 될때가 많죠.
만일 아주 중대한 버그가 발견된다면 다른 팩키지나 다른 방법을 찾으려고 하는것도
비슷하다고 생각됩니다.

위 사항들은 사실 자금이 충분히 있을때 고려되는 사항들이고 그렇지 않고 자금이
부족하다면 보통은 버그를 그대로 안고 가는경우도있죠. :evil:
이것은 무감각해서이기 보다는 몰라서 그런경우가 허다하겠지만 말입니다. :)

------------------------------
좋은 하루 되세요.

atie의 이미지

----
I paint objects as I think them, not as I see them.
atie's minipage