Changwoo Hacks

Hack n. : A non-obvious solution to an interesting problem

2020/12/09

해설: CentOS 종료

by 류창우

2020년 12월 9일 CentOS 발표, “CentOS Project shifts focus to CentOS Stream

요약하면 이제까지 우리가 알던 CentOS는 이제 끝이다. CentOS를 사용하던 사용자, 사용 회사, 사용 제품은 대안을 알아봐야 한다.

CentOS의 탄생

레드햇(회사)의 리눅스 배포판은 최초에 레드햇 리눅스(RedHat Linux)라는 이름으로 출발했다. 회사로서 레드햇은 인터넷 서비스의 폭발적인 성장 시대에 리눅스 서버의 성공을 이끈 장본인이었고, 1999년 닷컴 버블 때 나스닥에 상장하는 행운까지 겹쳤다.

레드햇은 2003년 리눅스 배포판을 커뮤니티 배포판과 기업용 제품으로 배포판 둘로 나누었다. 데비안과 같이 커뮤니티의 노력이 레드햇 리눅스에도 필요하다는 생각을 한 레드햇은, 제품으로의 기업용 유료 배포판인 RHEL(Red Hat Enterprise Linux) 배포판을 만들고 그 기반이 되는 커뮤니티 배포판으로 페도라(Fedora) 배포판을 만들었다. Fedora는 레드햇에서 후원은 하지만 커뮤니티가 독립적으로 운영하고 있어서 몇 가지 주요한 부분이 다르다. 2020년 현재까지도 이렇게 페도라와 RHEL로 운영되고 있다.

제품으로서의 RHEL은 흔히 소프트웨어를 구입한다고 할 때 사람들이 생각하는 소프트웨어 라이선스를 유료로 판매하는 배포판이 아니라 서비스 구독에 대한 비용을 (subscription fee) 받는 유료 배포판이다. 레드햇 회사에서 배포판의 업데이트, 고객 지원, 기타 부가 서비스를 제공할 뿐이지 리눅스 배포판이라는 사실은 변하지 않는다. RHEL을 구성하는 소프트웨어도 당연하게 배포하는 소프트웨어의 상당 부분이 GNU GPL이나 MPL과 같이 소스 코드의 공개가 불가피한 소프트웨어이고 레드햇은 이들 소프트웨어를 비롯해 모든 소프트웨어의 소스 코드를 공개하고 있다. (다른 몇몇 유료 정책을 가진 배포판은 상업/독점 소프트웨어를 포함하는 경우도 있었으나, 레드햇은 가능한 모두 오픈소스로 릴리스하는 정책을 취하고 있다.)

그러면 공개된 소스 코드를 빌드해서 RHEL과 똑같은 배포판을 합법적으로 만들 수 있지 않을까라는 생각을 자연스럽게 할 수 있다. (정확히 말하면 공개된 소스를 그대로 빌드해서 배포할 수는 없다. 소프트웨어의 라이선스가 GPL이기는 하지만 RHEL의 상표는 레드햇 소유라서 사용할 수 없고 레드햇이 운영하는 미러 사이트와 같은 서비스도 이용할 수 없기 때문에 몇 가지를 변경해야 한다.) 이런 생각에서 탄생한 배포판이 여럿이 있었고 그 중에서 남아서 아직까지 지속된 배포판 프로젝트가 CentOS(Community ENTerprise OS)이다.

즉 CentOS는 RHEL의 패키지를 다시 빌드하는 프로젝트로 만들어졌다.

레드햇의 CentOS의 “인수”

RHEL의 가장 큰 장점은 안정된 버전의 배포판을 오랫동안 지원한다는 점이었다. 예를 들어 2010년 11월에 처음 릴리스된 RHEL 버전 6이 지난달 2020년 11월에야 종료되었는데, 다른 어떤 리눅스 배포판에서도 10년이나 업데이트를 지원하는 경우를 거의 볼 수 없었던 것을 보면 안정된 버전을 추구하는 사용자들에게는 가장 이상적인 선택이었다.

RHEL을 다시 빌드한 CentOS는 그러한 RHEL의 장점을 무료로 누릴 수 있다는 점에서 큰 인기를 누렸다. RHEL처럼 레드햇의 고객 지원은 받을 수는 없지만, 보안 업데이트는 그대로 이용할 수 있었다. CentOS에 대한 고객 지원 서비스를 레드햇보다 저렴하게 제공하는 회사도 등장하기도 했다.

그러던 레드햇은 2014년에 CentOS 프로젝트를 “인수”했다. 비영리 프로젝트를 영리 회사가 인수한다는 표현이 적합하지 않을 수도 있지만, CentOS의 프로젝트 방향을 레드햇이 원하는 방향으로 결정할 수 있는 구조가 되었기 때문에 사실상 인수라고 말할 수 있다. 페도라와 마찬가지로 커뮤니티가 프로젝트의 결정권을 가지지만, 레드햇이 CentOS 상표의 소유권을 갖고, 미러 사이트와 빌드 서버와 같은 인프라를 제공하고, CentOS 프로젝트 주요 멤버 대부분을 레드햇이 직원으로 고용했다.

롤링 릴리스와 CentOS stream

한편 리눅스 배포판 중에서는 정기적인 특정 버전의 소프트웨어 릴리스를 하지 않고 자동 업데이트를 통해 배포판을 최신으로 유지하는 쪽을 선호하는 경우도 있다. 이를 포인트 릴리스(point release)에 대응하는 롤링 릴리스(rolling release)라고 하는데 Arch Linux나 Gentoo Linux가 대표적인 예이다. 개발 버전의 배포판을 사용하는 것과 비슷하지만 안정 버전을 따로 릴리스하지 않는다는 점이 차이점으로 개발과 안정의 중간의 적절한 지점을 찾는 게 중요하다.

CentOS Stream은 Fedora와 RHEL 사이의 그런 지점에 해당하는 롤링 릴리스 배포판으로 올해 초 CentOS 8 기반으로 새로 만들어졌다. 물론 사용자에 따라서는 이런 롤링 릴리스 포지션의 배포판을 선호하기도 하지만, 기존의 CentOS나 RHEL 사용자가 원하는 형태라고 보기는 어렵다.

이번 발표

이번 레드햇 발표에서 나온 사항은

CentOS의 대안이 CentOS stream이라는 건 말이 되지 않는다. CentOS 개발자는 롤링 릴리스를 써도 상관없다고 할지 모르겠으나, 롤링 릴리스를 쓰려는 사용자의 대부분은 지금의 CentOS 사용자가 아니다. CentOS를 쓰는 이유는 보통 안정 버전의 오랜 지원이기 때문이다. 계속 업데이트하는 롤링 릴리스를 원했다면 Fedora 개발 버전을 쓰거나 Arch Linux나 Gentoo Linux를 쓰고 있었을 것이다.

이번 발표의 가장 큰 문제는 애초에 2029년까지 보안 업데이트가 예정되어 있던 CentOS 8 버전을 당장 2021년까지 중지하겠다고 EOL 약속을 뒤집었다는 부분이다. 이 일정을 신뢰하고 지난 1년간 CentOS 8을 선택했던 사용자들은 순식간에 10년의 배포판 수명이 2년으로 줄어들어 버린 셈이 되었다.

흔히 기업의 제1목표가 수익이라고 말하지만, 이런 변화 때문에 RHEL 구독이 크게 늘어날 것이라고 연결하기는 어렵다. CentOS를 사용하는 사용자나 회사는 애초에 RHEL 구독 비용을 낼 의사가 없거나 내지 않는다는 가정 하에 비지니스를 운영하고 있는 곳이고, RHEL에서 제공하는 고객 지원도 필요가 없는 사용자일 것이기 때문이다. RHEL 수익을 기대한다기 보다는 발표한 것처럼 개발 인력과 자원의 투입을 중지하는 결정이라고 볼 수 있다.

이번 결정은 이와 같이 CentOS 사용자의 대부분은 원하지 않을 방향이고 CentOS 개발 메일링 리스트에서 어떤 사전 토의가 있었던 것도 아니었다. 레드햇 CTO의 글과 메일링 리스트의 메일을 보면 결국 레드햇의 결정에 의해 CentOS 이사회가 따른 것임을 알 수 있다.

대안은?

내 생각에는 CentOS가 처음 만들어졌을 때처럼 RHEL 8.x를 다시 패키징하는 또 다른 오픈소스 프로젝트가 생겨날 것이다. 레드햇 역시 예상이라도 한 듯이 이 발표에 대한 FAQ에 추가해 놓았고, 답변으로 오픈소스라서 할 수는 있지만 여기에 대해 레드햇의 어떤 자원도 사용하지 않을 것이고 CentOS 브랜드 사용도 허용하지 않을 것이라고 명시했다.

그래서 아마도 CentOS 사용자의 대안은 십중팔구 이렇게 만들어질 또 다른 CentOS와 같은 RHEL fork가 되겠지만, 만의 하나 분명한 대안이 나오지 않는다면 다른 배포판 대안을 찾게 될 것이다. 비슷하게 RPM을 사용하고 10년 지원이 되는 Oracle Linux가 있지만 오라클은 다른 의미에서 신뢰가 낮기도 해서, 개발자들 선호가 높은 데비안 계열 배포판으로 이동할 수도 있다.

커뮤니티 거버넌스

이번 변화는 리눅스 배포판의 커뮤니티에 의한 거버넌스가 얼마나 중요한지를 보여주는 사례라고 생각한다. 커뮤니티 배포판의 형식을 유지했지만 사실상 회사의 결정을 따를 수밖에 없는 레드햇 인수 이후 CentOS는 언제든 이런 일이 일어날 수 있었다. 커뮤니티라고 해서 언제나 모두를 만족시키는 결정을 할 수는 없겠지만, 만약 데비안에서 이런 결정을 내렸다면 지지부진하다고 느낄 정도의 토론이 미리 있었을 것이고 민주적인 결정과정이 있었을 것이다. 회사처럼 풍부한 인력과 자원을 보장할 수는 없어도 커뮤니티 배포판이 어쩌면 프로젝트의 지속성에서는 더 나을 수도 있다.

데비안 개발자/사용자로서 강 건너 불구경이지만, 한편 이런 커뮤니티 배포판의 중요성을 느끼는 사용자가 늘어난다면 Debian LTS가 CentOS와 같은 수요를 흡수하기를 기대해 본다.

tags: linux - distribution - centos - redhat - ibm


COMMENTS