Driverless AI AWS Community AMI 설치

Watch the installation video here. 이 비디오의 일부 이미지가 릴리스 사이에 변경될 수도 있지만, 설치 단계는 동일합니다.

환경

제공자

인스턴스 유형

Num GPUs

다음에 적합함

AWS

p2.xlarge

1

실험

p2.8xlarge

8

신중한 사용

p2.16xlarge

16

신중한 사용

p3.2xlarge

1

실험

p3.8xlarge

4

신중한 사용

p3.16xlarge

8

신중한 사용

g3.4xlarge

1

실험

g3.8xlarge

2

실험

g3.16xlarge

4

신중한 사용

EC2 인스턴스 설치

  1. https://aws.amazon.com에서 AWS 계정에 로그인하십시오.

  2. Amazon Web Services 페이지의 우측 상단에서 위치 드롭다운을 설정하십시오( Note: H2O의 리소스가 이곳에 저장되기 때문에 미국 동부 지역을 선택할 것을 권장합니다. 이 지역은 또한 이것은 다른 지역보다 더 많은 인스턴스 유형을 제공합니다.).

../_images/ami_location_dropdown.png
  1. EC2 대시보드를 열려면 컴퓨팅 섹션에서 EC2 옵션을 선택하십시오.

../_images/ami_select_ec2.png
  1. 인스턴스 섹션 생성에서 Launch Instance 버튼을 클릭하십시오.

../_images/ami_launch_instance_button.png
  1. Community AMI에서 h2oai 를 검색한 후, 시작할 버전을 선택하십시오.

../_images/ami_select_h2oai_ami.png
  1. 인스턴스 유형 선택 페이지의 Filter by 드롭다운에서 GPU compute 를 선택하십시오. 이를 통해 Driverless AI 인스턴스가 GPU에서 실행됩니다. 이용 가능한 옵션에서 GPU 컴퓨팅 인스턴스를 선택하십시오(최소 32개의 vCPU 권장). Next: Configure Instance Details 버튼을 클릭하십시오.

../_images/ami_choose_instance_type.png
  1. 구성할 인스턴스 세부 정보를 지정하십시오. VPC의 생성 또는 기존 VPC를 사용하고 《Auto-Assign Public IP》가 활성화되어 있고 서브넷에 연결되어 있는지 확인하십시오. Next: Add Storage 를 클릭하십시오.

../_images/ami_configure_instance_details.png
  1. 저장 장치 설정을 지정하십시오. Driverless AI를 실행하는 데는 10GB가 필요하고 10GB 미만의 경우에는 작동이 중지됩니다. 머신에는 최소한 30GB의 디스크 공간이 필요합니다. Next: Add Tags 를 클릭하십시오.

../_images/ami_add_storage.png
  1. 필요 시, 고유 태그 이름을 추가해서 인스턴스를 확인하십시오. Next: Configure Security Group 을 클릭하십시오.

  2. 다음의 보안 규칙을 추가하여 Driverless AI에 대한 SSH 액세스를 활성화한 후, Review and Launch 를 클릭하십시오.

유형

프로토콜

포트 범위

소스

설명

SSH

TCP

22

Anywhere 0.0.0.0/0

사용자 정의 TCP 규칙

TCP

12345

Anywhere 0.0.0.0/0

DAI 시작

../_images/ami_add_security_rules.png
  1. 구성 검토 후, Launch 를 클릭하십시오.

  2. key pair를 선택하라는 팝업창이 나타납니다. 이것은 인스턴스에 SSH를 확보하기 위해 필요합니다. 원래 key pair를 선택하거나 또는 새롭게 생성할 수 있습니다. 승인을 수락한 후, Launch Instances 를 클릭하여 새로운 인스턴스를 시작하십시오.

../_images/ami_select_key_pair.png
  1. 성공적으로 완료한 후, 인스턴스의 시작을 알리는 메시지가 나타납니다. View Instances 버튼을 클릭하면 IP 주소를 포함한 인스턴스에 관한 정보를 확인할 수 있습니다. 해당 페이지의 Connect 버튼은 SSH를 통해 인스턴스에 연결하는 방법에 관한 정보를 제공합니다.

  2. 터미널 창을 열고 AWS 인스턴스의 IP 주소에 SSH을 사용합니다. 다음의 DNS 이름을 인스턴스 DNS로 변경하십시오.

ssh -i "mykeypair.pem" ubuntu@ec2-34-230-6-230.compute-1.amazonaws.com

Note: 《Permissions 0644 for ‘mykeypair.pem’ are too open》 오류를 접수하면, 다음 명령의 실행을 통해 사용자에게 읽기 권한을 부여하고 기타 권한을 제거합니다.

chmod 400 mykeypair.pem
  1. GPU 컴퓨팅 인스턴스 선택 시, GPU의 퍼시스턴스 및 최적화를 활성화하십시오. 해당 명령은 인스턴스 유형에 따라 달라집니다. 또한 이러한 명령은 재부팅 시마다 1회씩 실행해야 합니다. 자세한 내용은 다음을 참조하십시오.

# g3:
sudo nvidia-persistenced --persistence-mode
sudo nvidia-smi -acp 0
sudo nvidia-smi --auto-boost-permission=0
sudo nvidia-smi --auto-boost-default=0
sudo nvidia-smi -ac "2505,1177"

# p2:
sudo nvidia-persistenced --persistence-mode
sudo nvidia-smi -acp 0
sudo nvidia-smi --auto-boost-permission=0
sudo nvidia-smi --auto-boost-default=0
sudo nvidia-smi -ac "2505,875"

# p3:
sudo nvidia-persistenced --persistence-mode
sudo nvidia-smi -acp 0
sudo nvidia-smi -ac "877,1530"
  1. 이때 scp 를 사용하여 호스트 머신의 데이터 디렉터리에 데이터를 복사할 수 있습니다. 예:

scp -i /path/mykeypair.pem ubuntu@ec2-34-230-6-230.compute-1.amazonaws.com:/path/to/file/to/be/copied/example.csv /path/of/destination/on/local/machine

여기서,

  • I 는 파일 확인 옵션입니다

  • Mykeypair 는 개인 keypair 파일의 이름입니다

  • Ubuntu 는 개인 keypair 파일의 이름입니다

  • Ec2-34-230-6-230.compute-1.amazonaws.com 은 인스턴스의 퍼블릭 DNS 이름입니다

  • Example.csv 는 전송할 파일입니다

  1. 브라우저로 Driverless AI에 연결하십시오. 사용자 이름 h2oai 를 사용해서 Driverless AI에 로그인하고 AWS InstanceID를 암호로 사용하십시오. 최초 로그인 시, Driverless AI 라이센스 키를 입력하라는 메시지가 나타납니다.

http://Your-Driverless-AI-Host-Machine:12345

EC2 인스턴스 중지

EC2 인스턴스는 aws.amazon.com Portal을 닫아도 계속 실행됩니다. 인스턴스를 중지하려면 다음과 같이 합니다.

  1. EC2 대시보드에서 리소스 섹션 밑의 Running Instances 링크를 클릭하십시오.

  2. 중지할 인스턴스를 선택하십시오.

  3. Actions 드롭다운 메뉴에서 Instance State > Stop 을 선택하십시오.

  4. 확인 페이지가 나타납니다. 인스턴스를 중지하려면 Yes, Stop 을 클릭하십시오.

Driverless AI 커뮤니티 이미지 업그레이드

WARNINGS:

  • 이 릴리스에는 1.7.0 이하의 실험 및 MLI 모델이 더 이상 사용되지 않습니다.

  • 실험, MLI 및 MOJO는 Driverless AI tmp 디렉터리에 있고 Driverless AI가 업그레이드될 때는 자동으로 업그레이드되지 않습니다. 업그레이드하기 전에 다음 단계를 따르는 것을 권장합니다.

    • 업그레이드하기 전에 MLI 모델을 빌드하십시오.

    • 업그레이드하기 전에 MOJO 파이프라인을 빌드하십시오.

    • 업그레이드하기 전에 Driverless AI를 중지하고 Driverless AI tmp 디렉터리를 백업하십시오.

Driverless AI의 업그레이드 전에 모델에 MLI를 빌드하지 않은 경우, 업그레이드 후 해당 모델에서 MLI를 확인할 수 없습니다. 업그레이드 전에 향후 릴리스에서 지속적으로 해석하고자 하는 모형에 MLI 작업을 실행하십시오. 해당 MLI 작업이 현재 버전의 해석 모형 목록에 나타나면, 이는 업그레이드 후에도 유지됩니다.

Driverless AI의 업그레이드 전에 모델에 MOJO 파이프라인을 빌드하지 않은 경우, 업그레이드 후에는 해당 모델에 MOJO 파이프라인을 빌드하지 못합니다. 업그레이드 전에 필요한 모든 모델에서 MOJO 파이프라인을 빌드한 후, Driverless AI tmp 디렉터리를 백업하십시오.

업그레이드 프로세스는 /etc/dai/User.conf 및 /etc/dai/Group.conf에서 서비스 사용자 및 그룹을 이어받습니다. 업그레이드 중에는 DAI_USER 또는 DAI_GROUP 환경 변수를 수동으로 지정할 필요가 없습니다.

버전 1.2.2 이하에서 업그레이드

다음 예는 1.2.2 이전 버전에서 현재 버전으로 업그레이드하는 방법을 보여줍니다. 이러한 이전 버전에서 업그레이드하려면 starth2oai 스크립트를 편집해야 합니다.

  1. 이미지 인스턴스의 IP 주소에 SSH를 적용하고 기존 실험을 백업 위치에 복사합니다.

# Set up a directory of the previous version name
mkdir dai_rel_1.2.2

# Copy the data, log, license, and tmp directories as backup
cp -a ./data dai_rel_1.2.2/data
cp -a ./log dai_rel_1.2.2/log
cp -a ./license dai_rel_1.2.2/license
cp -a ./tmp dai_rel_1.2.2/tmp
  1. 최신 이미지를 wget 하십시오. 아래 명령은 버전 1.2.2를 검색합니다.

wget https://s3.amazonaws.com/artifacts.h2o.ai/releases/ai/h2o/dai/rel-1.2.2-6/x86_64-centos7/dai-docker-centos7-x86_64-1.2.2-9.0.tar.gz
  1. /home/ubuntu/scripts/ 폴더에서 start.sh`h2oai.sh 스크립트를 모두 편집하여 최신 이미지를 사용하십시오.

  2. docker load 명령을 사용하여 이미지를 로딩하십시오.

docker load < ami-0c50db5e1999408a7
  1. docker images 를 선택적으로 실행하여 새로운 이미지가 레지스트리에 있는지 확인하십시오.

  2. http://Your-Driverless-AI-Host-Machine:12345에서 브라우저로 Driverless AI에 연결합니다.

버전 1.3.0 이상에서의 업그레이드

다음 예는 버전 1.3.0에서 업그레이드하는 방법을 보여줍니다.

  1. 이미지 인스턴스의 IP 주소에 SSH를 적용하고 기존 실험을 백업 위치에 복사합니다.

# Set up a directory of the previous version name
mkdir dai_rel_1.3.0

# Copy the data, log, license, and tmp directories as backup
cp -a ./data dai_rel_1.3.0/data
cp -a ./log dai_rel_1.3.0/log
cp -a ./license dai_rel_1.3.0/license
cp -a ./tmp dai_rel_1.3.0/tmp
  1. 새 이미지를 wget 합니다. 아래 VERSION 및 BUILD를 Driverless AI 버전으로 교체합니다.

wget https://s3.amazonaws.com/artifacts.h2o.ai/releases/ai/h2o/dai/VERSION-BUILD/x86_64-centos7/dai-docker-centos7-x86_64-VERSION.tar.gz
  1. docker load 명령을 사용하여 이미지를 로딩하십시오.

docker load < dai-docker-centos7-x86_64-VERSION.tar.gz
  1. 새 AMI에서 DAI_RELEASE 파일을 찾아서 새 이미지 태그와 일치하도록 해당 파일을 편집합니다.

  2. Driverless AI를 중지한 다음 시작합니다.

h2oai stop
h2oai start