3개 Compte 인스턴스 생성

  • 문서 생성일: 2020-03-19 01:14:00 +0900 KST
  • 이 문서에서는 위 이미지와 같이 이름이 demo_vcn인 VCN(Virtual Cloud Netwrok)의 private subnet에 아파치 웹서버가 설치된 Compute 인스턴스를 3개 프로비저닝하는 절차를 소개할 것입니다. 이번 문서에서는 OCI 콘솔을 이용하여 OCI Linux VM 인스턴스를 생성할 것입니다 .OCI Linux VM 인스턴스 생성 과정은 다음과 같은 절차로 진행됩니다.


    VM 프로비저닝

    SSH Key Pair 파일 준비

    OCI Linux VM 인스턴스을 생성할 때 등록할 SSH Key Pair 파일을 생성합니다. 이 파일은 SSH 접속에 사용됩니다. SSH Key Pair 파일은 다음 문서를 참조하여 만듭니다.

    작업 유형 작업 참조 문서
    Key Paring RSA 파일 생성 운영체제별 SSH Key Pair 준비

    SSH Key Pair 파일의 공개키는 다음과 같은 형식을 갖습니다.

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDN40LZmMb7uiZNTG1bBHE+pJZhjrg7an
    +plbU1r9Dc3rXFjUuJMepwABAsFIKuZF6VrFFkoJ7xvD6zjB12b5xFHgZ5Z9VkmAXQtd2ec
    zXL/BLWb2j7prt4Bdq+e6+LCTn0BVbmUwhf5dt/LCD4Wr/ITpG0ST/p+vy8VufQNdC+TQ4p
    MV0kJabcdcnqQ3zS2Rz2nfxez2iNukrgl6TeNU52SwtEgPKWn4Kl1THjn/ujPea9d2qLElI
    pLZ496AIHugEMaShX8cr4QtoQmzCdxSoqtJvRe+byf/W3Z2pNwr0ENOX0ZkHyjk3t2YZxvD
    bK9NxlqhTy9kmyJLYZgWldHj3 taewan@taewanui-MBP
    

    생성한 SSH Key Pair 파일의 위치와 파일명은 다음과 같다고 가정하고 진행하겠습니다.

    파일 유형 파일 위치 파일명
    RSA 공개키 /temp id_rsa.pub
    RSA 비밀키 /temp id_rsa

    사용 가능한 자원 확인

    현재 Tenancy에 할당된 사용 가능한 자원을 확인 합니다. Tenancy에 할당된 자원량을 확인하는 Limits, Quotas and Uasge(제한, 할당량 및 사용량) 페이지는 다음과 같은 메뉴 패스로 이동할 수 있습니다.

    (OCI 콘솔 왼쪽 위 햄버그 버튼) Governance Limits, Quotas and Uasge(제한, 할당량 및 사용량)

    Limits, Quotas and Uasge(제한, 할당량 및 사용량) 페이지에서 리전의 AD(Available Domain)에서 서비스 별로 Tenancy에 할당된 자원 크기와 현재 사용중인 자원 크기 및 사용 가능한 자원 크기를 확인할 수 있습니다. 또한 Request a services limit increase에서 자원 할당 증설을 요청할 수 있습니다.

    위 페이지에서 사용 가능한 Shape인 VM.Standard2.1으로 리눅스 VM 인스턴스를 생성할 것입니다.

    Oralce Linxu 7.7 이미지로 VM 생성

    이제 부터 Oracle Linux 7.7 이미지를 Shape VM.Standard2.1로 3개 인스턴스를 프로비저닝하겠습니다. 다음 메뉴 패스로 OCI Compute의 Instance관리 페이지로 이동합니다.

    (OCI 콘솔 왼쪽 위 햄버그 버튼) Compute Instances

    OCI Compute의 Instance관리 페이지에서 앞으로 생성할 VM을 할당할 Compartment인 sandbox를 선택합니다. “create instance” 버튼을 클릭하여 “Create Compute Instance” 페이지로 이동합니다.

    Create Compute Instance” 페이지에서 입력 폼 각 항목에 다음과 같이 입력합니다.

    설정 항목 vm_web01 vm_web02 vm_web03
    Name your instance vm_web01 vm_web02 vm_web03
    Operating System or Image Source Oracle Linux 7.7 Oracle Linux 7.7 Oracle Linux 7.7
    Availability Domain AD 1 AD 2 AD 3
    Instance Type Virtual Machine Virtual Machine Virtual Machine
    Instance Shape VM.Stanndard2.1 VM.Stanndard2.1 VM.Stanndard2.1
    Virtaul cloud network compartment sandbox sandbox sandbox
    Virtaul cloud network demo_vcn demo_vcn demo_vcn
    Subnet Compartment sandbox sandbox sandbox
    Subnet Private Subnet-demo_vcn Private Subnet-demo_vcn Private Subnet-demo_vcn
    Public IP DO NOT ASSIGN A PUBLIC IP ADDRESS DO NOT ASSIGN A PUBLIC IP ADDRESS DO NOT ASSIGN A PUBLIC IP ADDRESS
    Choose SSH Key file 체크 체크 체크
    public key id_rsa.pub id_rsa.pub id_rsa.pub

    마지막으로 3개 VM을 생성할 때, Advanced OptionManagement_ 텝에 PASTE CLOUD-INIT SCRIPT를 선택하고 다음 스크립트를 등록합니다.

    #!/bin/sh
    sudo yum install httpd -y
    sudo bash -c 'echo $HOSTNAME running on OCI >> /var/www/html/index.html'
    sudo apachectl start
    sudo systemctl enable httpd
    sudo firewall-cmd --permanent --zone=public --add-service=http 
    sudo firewall-cmd --reload
    

    CLOUD-INIT SCRIPT는 VM을 프로비저닝하고 시작할 때, 실행되는 스크립트입니다. 이 스크립트는 다음과 같은 기능을 제공합니다.

    1. 아파치 웹서버 설치
    2. 아파치 웹서버 시작
    3. 아파치 웹서버 서비스 등록
    4. 방화벽 오픈

    다음 이미지는 vm_web01을 입력한 예제입니다. 위 설정 값을 입력한 후 “Create” 버튼을 클릭하여 인스턴스 생성을 시작합니다. 이 생성 작업은 vm_web02와 vm_web03까지 3번 반복합니다.

     vm_web01, vm_web02 및 vm_web03 3개 Compute 인스턴스가 생성되면 다음과 같은 형태가 됩니다.

    주의 사항: Single AD Resion & 3 AD Resion

    위에서 다른 예제는 3개 AD(Availability Domain) 리전인 Phoenix에서 진행했습니다. 3 AD 리전에서는 고가용성 구성을 위하여 Subnet을 Regional Subnet으로 구성하고 각 VM을 AD에 분산하여 프로비저닝 합니다. 각 Compute 인스턴스를 AD 별로 분산하여 장애 및 다양한 이슈에 시스템 안정성을 향상 시킬 수 있습니다.

    3 AD 리전이 아닌 싱글 AD 리전에서 HA 구성을 할 경우에는 Compute Instance는 AD로 분산하지 않고 Fault Domain으로 분산하여 시스템 안정성을 확보합니다. Fault Domain 설정은 Advanced OptionManagement_ 텝에서 설정됩니다. 싱글 AD 리전에서 이 문서를 실습실 경우에는 Fault Domain을 다음과 같이 설정합니다.

    Compute Instance 이름 Fault Doamin 설정
    vm_web01 FAULT-DOMAIN-1
    vm_web02 FAULT-DOMAIN-2
    vm_web03 FAULT-DOMAIN-3

    위 설정은 다음 이미지와 같이 적용됩니다.

    참고 문서

    김태완 avatar
  • 작성자: 김태완
  • 사랑하는 민수와 데이터 관리, 데이터 분석 & 클라우드에 집중하고 있습니다.
  • E-mail: taewanme@gmail.com
  • Disclaimer
    이 저작물은 Oracle과 관계없이 개인으로서 개인의 시간을 할애하여 작성된 글 입니다. 본 글의 내용, 입장, 예측은 Oracle을 공식적으로 절대 대변하지 않습니다.