- Redis는 Redis 7.4부터 BSD 3-Clause 배포를 중단하고, 앞으로 Redis를 RSALv2 또는 SSPLv1로 제공해 라이선스 경계를 크게 바꿈
- 소스 코드는 Redis Community Edition으로 계속 무료 제공되지만, 새 라이선스는 OSI 정의의 오픈소스에는 해당하지 않음
- Redis는 Core와 Stack을 통합해 검색, JSON, 벡터, 확률적 데이터 구조, 시계열 데이터 모델을 하나의 무료 패키지로 묶을 계획임
- 내부·개인 사용, 클라이언트 라이브러리, 통합 파트너, 기존 Redis Enterprise 고객은 영향을 받지 않지만, 경쟁적 관리형 서비스는 새 Redis 소스 코드를 무료로 쓸 수 없음
- Redis 8부터 Redis Stack 기능이 Redis 자체에 포함될 예정이며, 이후 별도 Redis Stack 빌드의 수명 종료가 진행됨
Redis 라이선스 변경 범위
- Redis는 앞으로 나오는 모든 Redis 버전을 소스 사용 가능 라이선스로 배포함
- Redis 7.4부터 Redis Core 소프트웨어는 Redis Source Available License v2 또는 Server Side Public License v1 중 하나로 사용할 수 있음
- 더 이상 BSD 3-Clause 라이선스로 배포되지 않음
- Redis 소스 코드는 Redis GitHub 저장소를 통해 Redis Community Edition으로 계속 무료 제공됨
- RSALv2와 SSPLv1은 모두 OSI 승인 라이선스가 아니며, 각각 사용 제한이 있음
Redis Stack 통합과 제품 구성 변화
- 향후 소스 사용 가능 릴리스는 Redis Core와 Redis Stack을 통합함
- 통합 대상은 검색, JSON, 벡터, 확률적 데이터 구조, 시계열 데이터 모델임
- 하나의 무료 다운로드 패키지로 제공되며, Redis는 다음 용도로 사용할 수 있음
- 고성능 키/값 저장소
- 문서 저장소
- 쿼리 엔진
- 생성형 AI 애플리케이션을 위한 저지연 벡터 데이터베이스
- Redis 8부터 기존 Redis Stack에서 RSALv2 또는 SSPLv1로 제공되던 새 데이터 타입과 처리 엔진이 기본 제공 항목에 포함될 계획임
- Redis 8 제공 이후에는 별도 Redis Stack 빌드가 필요 없어져 Redis Stack 수명 종료가 진행됨
변경 배경과 Redis의 입장
- Redis는 Redis Stack 배포판의 고급 Redis 모듈에 이미 이중 라이선스를 적용해 왔고, Redis 6 이후 redis.io 다운로드의 50% 이상이 Redis Stack에서 나왔다고 밝힘
- 여러 배포판을 동시에 유지하는 구조가 Redis의 향후 개발 추진과 충돌한다고 봄
- 오픈소스 배포판
- 소스 사용 가능 배포판
- 온프레미스와 클라우드 플랫폼에 최적화된 상용 소프트웨어
- Redis는 주요 클라우드 서비스 제공자가 Redis의 투자와 오픈소스 커뮤니티를 상품화한다고 봄
- 이번 변경은 기능이 풍부한 무료 소프트웨어와 엔터프라이즈 제품에 계속 투자하기 위해 상용 사용을 관리하려는 조치임
- 이 변경으로 Redis는 더 이상 OSI 정의상 오픈소스가 아님
사용자와 파트너에게 미치는 영향
- Redis의 기존 오픈소스 버전이나 새 이중 라이선스 릴리스를 내부·개인 용도로 쓰는 최종 사용자는 영향을 받지 않음
- Redis와 연동되는 클라이언트 라이브러리나 기타 통합을 만든 파트너에게도 변경이 없음
- Redis가 책임지는 모든 Redis 클라이언트 라이브러리는 오픈소스 라이선스를 유지함
- 기존 Redis Enterprise 고객은 별도로 협상된 라이선스 조건으로 기술을 제공받기 때문에 영향이 없음
- Redis Community Edition이나 Enterprise를 비경쟁적 형태로 활용하는 통합 및 관리형 서비스 파트너는 Redis와의 파트너십을 통해 계속 솔루션을 구축·운영·제공할 수 있음
- Partner Program은 향후 Redis 기술, 기능, 릴리스에 대한 독점 접근을 제공함
클라우드 서비스와 경쟁 제품 제한
- 새 라이선스 아래에서 Redis 호스팅 서비스를 제공하는 클라우드 서비스 제공자는 Redis 소스 코드를 무료로 사용할 수 없음
- 예를 들어 클라우드 서비스 제공자는 Redis 코드 유지관리자인 Redis와 라이선스 조건에 합의한 뒤에만 Redis 7.4를 제공할 수 있음
- Redis의 “경쟁적 제공”은 Redis 코드베이스에서 파생되고 Redis 상용 제품의 기능과 크게 겹치며, 제3자에게 판매되는 제품을 뜻함
- 유료 지원 계약을 통한 판매도 포함됨
- Redis Enterprise Software 또는 Redis Cloud와 경쟁적으로 판매되는 솔루션 안에 Redis를 호스팅하거나 내장하는 경우가 예시임
- Redis를 활용하더라도 Redis 자체와 구체적으로 경쟁하지 않는 솔루션에는 영향이 없음
- 특정 사용 사례 문의는 redis_licensing@redis.com으로 안내됨
RSALv2와 SSPLv1의 조건
- RSALv2는 비카피레프트 성격의 허용적 라이선스로, 소프트웨어 사용, 복사, 배포, 제공, 파생 저작물 준비 권리를 허용함
- RSALv2의 주요 제한은 두 가지임
- 소프트웨어를 상업화하거나 관리형 서비스로 다른 사람에게 제공할 수 없음
- 라이선스, 저작권, 기타 고지를 제거하거나 가릴 수 없음
- SSPLv1은 AGPL을 기반으로 하며, 서비스로 제공하는 경우 서비스 전체의 소스 코드를 SSPL로 공개해야 함
- 관리 소프트웨어, 사용자 인터페이스, API, 자동화 소프트웨어, 모니터링, 백업, 스토리지, 호스팅 소프트웨어가 포함됨
- MongoDB가 이 라이선스의 발행자임
- SSPL로 라이선스된 소프트웨어를 수정한 버전은 다른 라이선스로 재배포할 수 없음
- 이중 라이선스에서 RSALv2를 선택하면, 제3자에게 서비스로 기능을 제공하지 않는 등 RSALv2 제한을 지키는 범위에서 수정과 재배포가 가능함
기존 BSD 버전과 보안 패치
- 라이선스 변경은 소급 적용되지 않음
- 변경 전의 모든 소스 코드와 릴리스는 BSD 3-Clause 라이선스 아래에 남음
- 사용자는 해당 라이선스 조건을 지키는 한 기존 BSD 버전을 무기한 계속 사용할 수 있음
- Redis는 Redis Community Edition이 제공될 때까지 현행 보안 정책에 따라 해당 릴리스의 보안 업데이트와 중요한 결함 수정을 계속 제공할 계획임
- 기존 BSD 3-Clause 버전에 대한 중요 보안 패치 백포트는 Redis Community Edition 9.0 출시 전까지 제공되며, 이후 패치는 새 이중 라이선스로 제공됨
이름, 기여, 코드 혼합 조건
- Redis 7.2 및 이전 릴리스는 계속 Redis OSS로 불림
- Redis 7.4부터 공개적이고 무료로 제공되는 버전은 Redis Community Edition으로 불림
- 제품명에는 더 이상 “Redis” 또는 “for Redis”를 사용할 수 없지만, 제품 설명에서 Redis 호환 또는 legacy-Redis 기반이라고 명시할 수 있음
- 커뮤니티 기여는 계속 받을 수 있으나, 기여 검토를 위해 Contributor License Agreement 동의가 필요함
- RSALv2 또는 SSPLv1 코드와 다른 라이선스의 코드는 각 구성 요소가 자체 라이선스를 유지하고 GPL 같은 강한 카피레프트 코드와 섞지 않는 조건에서 함께 사용할 수 있음
- 조직 내부에서 Redis를 서비스로 호스팅하는 것은 허용되며, 조직에는 계열사와 자회사가 포함됨