ascend : Kubernetes에서 Python 함수 실행하기
ascend는 Python 함수를 Kubernetes 환경에서 원격으로 실행할 수 있게 해주는 오픈소스 라이브러리입니다.
사용자는 최소한의 코드 변경만으로 GPU 등 클라우드 자원을 활용할 수 있으며, 로컬에 도커나 별도의 CI/CD 파이프라인이 필요하지 않습니다.
함수와 의존성은 cloudpickle로 직렬화되어 오브젝트 스토리지에 저장되고, Kubernetes가 작업을 스케줄링하며, Kaniko를 활용해 클라우드 내에서 컨테이너 이미지를 빌드합니다.
이 과정은 동기적으로 진행되어, 원격 실행 결과가 로컬에 반환되며, Kubernetes의 네임스페이스와 RBAC를 통해 사용자 격리와 보안도 지원합니다.
따라서, ascend는 복잡한 클라우드 인프라 설정 없이도 손쉽게 분산 GPU 자원을 활용하고자 하는 개발자에게 실용적인 솔루션을 제공합니다.