Docker 컨테이너 할당 소프트웨어는 ArcGIS Notebook Server에서 사용됩니다.
Docker 소프트웨어
ArcGIS Notebook Server는 Docker 컨테이너 할당 소프트웨어를 사용하여 Notebook 작성자에게 보안을 제공하고 리소스를 분리합니다. 컨테이너는 가상 머신과 달리 가상화된 운영 체제입니다. 머신의 각 컨테이너에는 격리된 환경의 모든 OS 컴포넌트가 포함되어 있습니다. ArcGIS Notebook Server는 사이트의 각 사용자에 대해 별도의 컨테이너를 제공합니다. 각 사용자는 런타임당 하나의 컨테이너를 소유하고 사용자는 자신의 컨테이너에서만 Notebooks를 실행할 수 있습니다.
Docker는 ArcGIS Notebook Server를 사용하기 전에 각 ArcGIS Notebook Server 머신에 설치해야 하는 별도의 서드파티 소프트웨어 컴포넌트입니다.
Docker 컨테이너 이미지
설치 전에 My Esri에서 소프트웨어 다운로드 및 인증 파일을 받으면 ArcGIS Notebooks에 고유한 2개의 Docker 컨테이너 이미지도 받게 됩니다. 해당 컨테이너 이미지는 Notebook 사용자에게 필요한 런타임(특정 Python 모듈 컬렉션)을 제공합니다.
Esri는 2개의 Docker 컨테이너 이미지(Standard, Advanced)를 제공합니다. 두 컨테이너 이미지에는 시스템 도구와 라이브러리뿐 아니라 컨테이너를 적절하게 구성하기 위한 다양한 설정이 포함되어 있습니다. 여기에는 Notebook 런타임도 포함됩니다. Standard 컨테이너 이미지에는 Standard Notebook 런타임이 포함되고 Advanced 컨테이너 이미지에는 Advanced 런타임이 포함됩니다.
ArcGIS Notebooks는 Standard 런타임을 통해 ArcGIS API for Python 및 서드 파티 모듈의 코드를 사용할 수 있습니다. Advanced 런타임에는 Standard 이미지의 모든 모듈이 포함되며 ArcPy 및 관련 라이브러리도 포함됩니다.
Advanced 라이선스가 있는 경우 My Esri에서 두 컨테이너 이미지를 모두 다운로드하여 설치해야 합니다. Standard 및 Advanced 이미지에 포함된 Python 모듈은 사용 가능한 Python 라이브러리 보기에 나열됩니다.
Advanced 런타임을 사용하여 Notebooks를 작성하려면 사용자에게 Advanced Notebooks 권한이 포함된 포털의 역할이 할당되어야 합니다. Notebook을 처음 열면 Advanced 컨테이너 이미지가 적용된 컨테이너가 실행됩니다.
Advanced Notebooks 권한이 있는 Notebook 작성자는 Standard 런타임을 사용할 Notebook을 지정할 수도 있습니다. 이를 통해 생성 한 Notebook을 Standard 런타임에만 접근할 수 있는 사용자와 공유할 수 있습니다. 처음 실행하면 두 번째 컨테이너가 실행되고 Standard 컨테이너 이미지가 로드됩니다.
기본 설정에 따라 컨테이너에는 일정한 용량의 RAM과 일정 개수의 CPU 코어 공유가 할당되어 있습니다. 이러한 기본 리소스 한도는 다음과 같이 컨테이너에서 실행되고 있는 런타임에 의해 지정됩니다.
- 표준 런타임은 컨테이너당 1개의 CPU 코어와 4GB의 RAM을 할당합니다.
- 고급 런타임은 컨테이너당 2개의 CPU 코어와 6GB의 RAM을 할당합니다.
ArcGIS Notebook Server 관리자는 사이트에서 작업 중인 Notebook 작성자 수와 각각의 작성자가 사용 중인 런타임을 모니터링합니다. 이러한 요인에 따라 ArcGIS Notebook Server의 리소스 한도 설정을 변경해야 할 수 있습니다.
Docker 버전
Windows 사용자인 경우 Docker Desktop가 적합한 버전입니다. 이 소프트웨어에서는 ArcGIS Notebook Server를 실행할 수 있습니다.
각 ArcGIS Notebook Server 머신에 필요한 최소 버전의 Docker Desktop을 설치했는지 확인합니다. Docker 설치 및 구성에 대한 자세한 내용은 Docker for ArcGIS Notebook Server 설치를 참고하세요.
비고:
ArcGIS Notebook Server는 머신에 설치된 Docker 버전 중 하나에서만 작동합니다. 다중 머신 사이트에서 버전을 혼합할 수 없습니다.
Notebook 런타임 및 컨테이너 이미지
컨테이너가 처음 실행되는 경우 대부분 비어 있습니다. 작동에 필요한 시스템 라이브러리, 도구, 구성은 컨테이너 이미지 파일를 통해 제공됩니다. 컨테이너 이미지는 실행 프로세스의 일부로 컨테이너에 적용됩니다.
팁:
클라우드 소프트웨어를 배포한 경우라면 작동하는 데 필요한 코드, 도구, 설정이 포함된 비어 있는 가상 머신을 제공하는 머신 이미지에 익숙할 것입니다. 컨테이너 이미지는 컨테이너의 빈 가상 OS에 대해 동일한 방식으로 작동합니다.
Esri는 ArcGIS Notebook Server에 대한 2개의 컨테이너 이미지를 제공합니다. 각 컨테이너 이미지에는 Notebook 런타임이 포함되어 있으며 ArcGIS Notebooks에서 Python 리소스를 사용할 수 있도록 합니다. 각 런타임은 각 Python 라이브러리의 특정 버전을 포함하는 이러한 라이브러리 및 종속성 목록을 패키징합니다.
두 가지 ArcGIS Notebook Server 런타임인 Standard(ArcGIS API for Python 및 기타 Python 모듈 포함) 및 Advanced(ArcPy 포함)는 해당 컨테이너 이미지의 일부로 Notebook에서 사용할 수 있습니다.
라이선스에 따라 Standard 컨테이너 이미지만 받거나 Standard 및 Advanced 컨테이너 이미지를 모두 받게 됩니다.
Windows 머신에서 Linux 컨테이너가 있는 ArcGIS Notebook Server 사이트의 컨테이너는 Hyper-V 환경 내에 포함된 MobyLinuxVM이라고 하는 Linux 에뮬레이터 내에서 관리됩니다. 따라서 Hyper-V 역할이 머신에 설치되어 있어야 합니다. 이 요구 사항은 ArcGIS Notebook Server 시스템 요구 사항에 포함되어 있습니다.
컨테이너가 실행되면 Esri에서 받은 두 컨테이너 이미지 중 하나가 컨테이너에 적용됩니다. 적용되는 런타임 및 이미지는 다음과 같이 포털에서 Notebook 작성자 권한에 따라 결정됩니다.
- Notebook 생성 및 편집 권한만 부여받은 작성자의 컨테이너는 표준 컨테이너 이미지를 통해 불러옵니다. 여는 모든 Notebooks는 Standard 런타임을 사용합니다.
- Advanced Notebooks 권한도 부여받은 작성자의 컨테이너는 Advanced 컨테이너 이미지를 통해 불러옵니다. Notebook의 기본 Notebook 런타임은 Advanced 런타임입니다. 이러한 작성자에게는 개별 Notebook의 런타임을 지정할 수 있는 옵션이 제공되며 Notebook에 Standard 또는 Advanced 런타임을 사용할 수 있습니다.
Windows 시스템의 필수 구성 요소 및 제약 조건
Windows 머신에 ArcGIS Notebook Server를 배포하는 경우 고려해야 할 몇 가지 필수 구성 요소와 제약 조건이 있습니다. Linux 머신에 ArcGIS Notebook Server를 배포하는 경우에는 적용되지 않습니다.
Docker Desktop 필수 구성 요소
Docker Desktop을 사용하려면 다음이 필요합니다.
- ArcGIS Notebook Server의 프로덕션 환경에서는 Windows Server 2019 머신을 사용하는 것을 권장합니다. Windows 10 머신은 개발 환경에서만 지원됩니다.
- Windows Server 2019에서 ArcGIS Notebook Server를 배포하는 경우 Docker Desktop을 사용할 수 있습니다. 필요한 최소 버전은 Docker 버전 섹션을 확인하세요. 현재 버전의 Docker 설명서에는 해당 시스템 요구 사항에 Windows Server 2019가 언급되어 있지 않습니다.
- ArcGIS Notebook Server는 Docker 컴포넌트에서 Linux 컨테이너를 사용합니다. Windows Server 2019 머신에서 ArcGIS Notebook Server 사이트의 컨테이너는 Hyper-V 환경 내에 포함된 MobyLinuxVM이라고 하는 Linux 에뮬레이터 내에서 관리됩니다.
- ArcGIS Notebook Server를 사용하려면 Hyper-V 역할이 Windows Server 및 Windows 10에 이미 설치되어 있어야 합니다.
- 특정 가상화 환경에서는 Hyper-V를 Windows에서 활성화하고 작동할 수 없습니다. 따라서 해당 환경에서는 ArcGIS Notebook Server를 설치 및 작동할 수 없습니다.
- Docker Desktop 서비스는 Docker을(를) 설치한 사용자가 Docker이(가) 설치된 ArcGIS Notebook Server 머신에서 로그아웃하면 실행을 중지합니다. 이 ArcGIS Notebook Server 머신은 잠글 수 있지만 Docker이(가) 성공적으로 실행하려면 사용자가 로그인해야 합니다. 사용자가 로그인하지 않은 경우 Notebook을 불러올 수 없음 오류 메시지와 함께 Notebook을 열지 못합니다.
비고:
사용자가 로그인하도록 하는 대신 ArcGIS Notebook Server 머신을 다시 시작할 때 Docker Desktop이(가) 자동으로 실행되도록 하는 대체 솔루션이 있습니다.
- ArcGIS Notebook Server는 다중 머신 사이트를 지원합니다. Windows 시스템에서 Docker는 컨테이너에서 공유 드라이브 마운트를 지원하지 않으므로 작업 영역 디렉터리는 각 머신에서 로컬로 유지되어야 합니다. 사용자는 다중 머신 사이트의 각 머신에서 컨테이너를 실행하고 Notebook을 열 수 있기 때문에 작업 영역 디렉터리의 콘텐츠를 여러 머신에서 동기화해야 합니다. 복제 방법 중 하나를 구성하는 단계는 ArcGIS Notebook Server에 대한 DFS 복제 구성에 나와 있습니다.