가상화와 컨테이너화가 네트워크 서비스 공간에 침투함에 따라 맞춤형 오버레이 템플릿을 적용하여 이러한 시스템을 구성하고 조정하기 위한 다양한 도구와 시스템이 등장했습니다.
그러나 대부분의 POSIX 기반 시스템은 단순히 표준 Linux 기반 운영 체제를 새로운 환경에 적응시킵니다.
대조적으로,닉 OS그리고GUIX 시스템기본 아키텍처를 사용하면 읽기 전용 파일 라이브러리를 중심으로 선언적 언어를 통해 오버레이를 관리하는 애플리케이션에 매우 적합한 것 같습니다. 이 디자인은 Puppet, Chef 및 Ansible과 같은 프로젝트에 의해 표준 운영 체제에 직접 운영 체제에 주입되도록 의도된 많은 기능을 전달하는 것으로 보입니다.
현재 NixOS 또는 Guix 시스템을 사용하는 대규모 서비스가 있습니까?
답변1
Guix의 Linux-libre 사용은 하드웨어 옵션과 성능을 제한하므로 일반 상용 플랫폼에는 적합하지 않습니다. 엄격하게 통제되는 환경에서는 제대로 작동할 수 있습니다.
NixOS는 멋져 보입니다. Puppet처럼 선언적입니다(예: 링크에서).
{
boot.loader.grub.device = "/dev/sda";
fileSystems."/".device = "/dev/sda1";
services.sshd.enable = true;
}
이는 단일 시스템에서 유용합니다. Puppet 배포의 장점 중 하나는 선언의 정확성입니다. 그림의 또 다른 부분은 이제 NixOS를 실행하는 수백 대의 컴퓨터가 있고 이를 조정된 방식으로 구성해야 한다는 것입니다. Puppet과 같은 것을 사용하여 이러한 구성 파일을 생성하고 NixOS가 올바른 운영 체제를 부팅할 수 있다고 가정하는 것이 합리적입니다.
이러한 방식으로 NixOS는 Puppet 에이전트가 수행한 작업 중 일부를 수행했지만 여전히 추가 DevOps 요구 사항이 있습니다. 이들 네임스페이스는 내 일부 꼭두각시 구성 파일과 유사합니다. 자연스러운 것 같습니다.