Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

OpenStack 환경에서 Cloud-Init을 사용하여 vSRX 가상 방화벽 인스턴스의 초기화 자동화

Junos OS 릴리스 15.1X49-D100 및 Junos OS 릴리스 17.4R1부터 cloud-init 패키지(버전 0.7x)가 vSRX 가상 방화벽 이미지에 미리 설치되어 지정된 사용자 데이터 파일에 따라 OpenStack 환경에서 작동하는 새로운 vSRX 가상 방화벽 인스턴스를 간소화할 수 있도록 지원합니다. Cloud-init은 vSRX 가상 방화벽 인스턴스의 첫 부팅 중에 수행됩니다.

Cloud-init은 부팅 시 클라우드 인스턴스의 초기화를 자동화하기 위한 OpenStack 소프트웨어 패키지입니다. Ubuntu 및 대부분의 주요 Linux 및 FreeBSD 운영 체제에서 사용할 수 있습니다. Cloud-init은 여러 클라우드 프로바이더를 지원하도록 설계되어 동일한 가상 머신(VM) 이미지를 수정 없이 여러 하이퍼바이저 및 클라우드 인스턴스에서 직접 사용할 수 있습니다. VM 인스턴스의 Cloud-init 지원은 부팅 시간(최초 부팅)에 실행되며 지정된 사용자 데이터 파일에 따라 VM 인스턴스를 초기화합니다.

사용자 데이터 파일은 메타데이터 서비스의 특별한 키입니다. 이 파일은 VM 인스턴스의 클라우드 인식 애플리케이션이 처음 부팅 시 액세스할 수 있는 파일을 포함합니다. 이 경우, 활성 구성으로 vSRX 가상 방화벽 인스턴스에 업로드하려는 검증된 Junos OS 구성 파일입니다. 이 파일은 표준 Junos OS 명령 구문을 사용하여 루트 암호, 관리 IP 주소, 기본 게이트웨이 및 기타 구성 문과 같은 구성 세부 사항을 정의합니다.

vSRX 가상 방화벽 인스턴스를 생성할 때 검증된 Junos OS 구성 파일(juniper.conf)과 cloud-init을 사용하여 새로운 vSRX 가상 방화벽 인스턴스의 초기화를 자동화할 수 있습니다. 사용자 데이터 파일은 표준 Junos OS 구문을 사용하여 vSRX 가상 방화벽 인스턴스에 대한 모든 구성 세부 정보를 정의합니다. 기본 Junos OS 구성은 vSRX 가상 방화벽 인스턴스 실행 중에 사용자 데이터 파일 형식으로 제공하는 검증된 Junos OS 구성으로 대체됩니다.

참고:

릴리스 15.1X49-D130 및 Junos OS Junos OS 릴리스 18.4R1보다 일찍 릴리스를 사용하는 경우 사용자 데이터 구성 파일은 16KB를 초과할 수 없습니다. 사용자 데이터 파일이 이 제한을 초과하면 gzip을 사용하여 파일을 압축하고 압축된 파일을 사용해야 합니다. 예를 들어, gzip junos.conf 명령어에 junos.conf.gz 파일이 발생합니다.

릴리스 15.1X49-D130 및 Junos OS 릴리스 18.4R1 Junos OS OpenStack 환경에서 구성 드라이브 데이터 소스를 사용하는 경우 사용자 데이터 구성 파일 크기는 최대 64MB입니다.

구성을 검증해야 하며 fxp0 인터페이스, 로그인 및 인증에 대한 세부 정보를 포함해야 합니다. fxp0의 트래픽에 대한 기본 경로도 있어야 합니다. 이 정보가 누락되거나 올바르지 않은 경우 인스턴스에 액세스할 수 없으며 새 정보를 실행해야 합니다.

경고:

vSRX 가상 방화벽 IP 주소를 할당하기 위해 DHCP(Dynamic Host Configuration Protocol)를 사용하여 인터페이스에 자동 설치를 수행하도록 사용자 데이터 구성 파일이 구성되지 않았는지 확인합니다. DHCP를 사용하여 자동 설치하면 사용자 데이터 구성 파일에 "커밋 실패"가 발생합니다.

Junos OS 릴리스 15.1X49-D130 및 Junos OS 릴리스 18.4R1부터는 openStack 환경에서 구성 드라이브 데이터 소스 사용을 지원하도록 vSRX 가상 방화벽 cloud-init 기능이 확장되었습니다. 구성 드라이브는 사용자 데이터 속성을 사용하여 검증된 Junos OS 구성 파일을 vSRX 가상 방화벽 인스턴스로 전달합니다. 사용자 데이터는 일반 텍스트이거나 MIME 파일 유형 텍스트/일반일 수 있습니다. 구성 드라이브는 일반적으로 Compute 서비스와 함께 사용되며 레이블이 지정된 디스크 파티션으로 인스턴스에 존재합니다 config-2. 구성 드라이브의 최대 크기는 64MB이며 vfat 또는 ISO 9660 파일 시스템과 형식이 지정되어야 합니다.

또한 구성 드라이브 데이터 소스는 구성에 사용할 수 있는 파일을 두 개 이상 추가할 수 있는 유연성을 제공합니다. 일반적인 사용 사례는 Day0 구성 파일과 라이선스 파일을 추가하는 것입니다. 이 경우, vSRX 가상 방화벽 인스턴스와 함께 구성 드라이브 데이터 소스를 사용하기 위해 사용할 수 있는 두 가지 방법이 있습니다.

  • 사용자 데이터(Junos OS 구성 파일)만으로도 이 접근 방식은 사용자 데이터 속성을 사용하여 Junos OS 구성 파일을 각 vSRX 가상 방화벽 인스턴스에 전달합니다. 사용자 데이터는 일반 텍스트이거나 MIME 파일 유형 텍스트/일반일 수 있습니다.

  • Junos OS 구성 파일 및 라이선스 파일 - 이 접근 방식은 구성 드라이브 데이터 소스를 사용하여 Junos OS 구성 및 라이선스 파일을 각 vSRX 가상 방화벽 인스턴스로 보냅니다.

    참고:

    라이선스 파일을 vSRX 가상 방화벽 구성하려면 옵션보다는 user-data 옵션을 사용하여 –file 사용자 데이터의 16KB 제한 범위보다 큰 파일을 구성할 수 있는 유연성을 제공하는 것이 좋습니다.

구성 드라이브 데이터 소스를 사용하여 Junos OS 구성 및 라이선스 파일을 vSRX 가상 방화벽 인스턴스로 보내려면 파일이 특정 폴더 구조로 전송되어야 합니다. 이 애플리케이션에서 vSRX 가상 방화벽 구성 드라이브 데이터 소스의 폴더 구조는 다음과 같습니다.

//OpenStack//latest/junos-config/configuration.txt

//OpenStack//latest/junos-license/license.lic

시작하기 전에 다음을 수행합니다.

  • Junos OS 명령 구문으로 구성 파일을 생성하고 저장합니다. 구성 파일은 일반 텍스트 또는 MIME 파일 유형 텍스트/일반일 수 있습니다. 문자열 #junos-config 은 Junos OS 구성 전에 사용자 데이터 구성 파일의 첫 번째 줄이어야 합니다.

    참고:

    문자열은 #junos-config 사용자 데이터 구성 파일에서 필수입니다. 문자열이 포함되지 않은 경우 활성 구성으로 vSRX 가상 방화벽 인스턴스에 적용되지 않습니다.

  • 검증된 Junos OS 구성 파일로 초기화할 vSRX 가상 방화벽 인스턴스의 이름을 결정합니다.

  • vSRX 가상 방화벽 인스턴스의 컴퓨팅, 메모리 및 스토리지 용량을 정의하는 vSRX 가상 방화벽 인스턴스의 맛을 결정합니다.

  • 릴리스 15.1X49-D130 및 Junos OS 릴리스 18.4R1 Junos OS 구성 드라이브를 사용하는 경우 다음 기준을 충족하여 OpenStack의 구성 드라이브에 대한 cloud-init 지원을 활성화합니다.

    • 구성 드라이브의 형식은 또는 iso9660 파일 시스템과 함께 vfat 포맷되어야 합니다.

      참고:

      구성 드라이브의 기본 형식은 ISO 9660 파일 시스템입니다. ISO 9660/vfat 형식을 명시적으로 지정하려면 파일에 줄을 추가 config_drive_format=iso9660/vfat 합니다 nova.conf .

    • 구성 드라이브에는 의 파일 시스템 레이블 config-2이 있어야 합니다.

    • 폴더 크기는 64MB 이상이어야 합니다.

OpenStack 환경에 따라 OpenStack 명령줄 인터페이스(예: nova boot 또는 openstack server create) 또는 OpenStack 대시보드("Horizon")를 사용하여 vSRX 가상 방화벽 인스턴스를 시작하고 초기화할 수 있습니다.

OpenStack 명령줄 인터페이스를 사용하여 vSRX 가상 방화벽 인스턴스의 자동 설정 수행

또는 명령을 사용하여 nova boot openstack server create vSRX 가상 방화벽 인스턴스를 시작하고 관리할 수 있습니다. 여기에는 로컬 디렉터리에서 검증된 Junos OS 구성 사용자 데이터 파일을 사용하여 대상 vSRX 가상 방화벽 인스턴스의 활성 구성을 초기화하는 것이 포함됩니다.

OpenStack 명령줄 클라이언트에서 vSRX 가상 방화벽 인스턴스의 자동 설정을 시작하려면,

  1. 아직 수행하지 않은 경우, Junos OS 명령 구문이 있는 구성 파일을 생성하고 파일을 저장합니다. 구성 파일은 일반 텍스트 또는 MIME 파일 유형 텍스트/일반일 수 있습니다.

    사용자 데이터 구성 파일에는 각 vSRX 가상 방화벽 인스턴스에서 활성 구성으로 사용할 전체 vSRX 가상 방화벽 구성이 포함되어야 하며, 문자열 #junos-config 은 Junos OS 구성 전에 사용자 데이터 구성 파일의 첫 줄이어야 합니다.

    참고:

    문자열은 #junos-config 사용자 데이터 구성 파일에서 필수입니다. 문자열이 포함되지 않은 경우, 활성 구성으로 vSRX 가상 방화벽 인스턴스에 적용되지 않습니다.

  2. Junos OS 구성 파일을 검색하여 vSRX 가상 방화벽 인스턴스를 시작할 수 있는 액세스 가능한 위치로 복사합니다.
  3. OpenStack 환경에 따라 또는 openstack server create 명령을 사용하여 nova boot 검증된 Junos OS 구성 파일을 지정된 사용자 데이터로 vSRX 가상 방화벽 인스턴스를 시작합니다.
    참고:

    HEAT와 같은 오케스트레이션 서비스에서도 이와 동일한 기능을 사용할 nova boot 수 있습니다.

    예를 들어:

    • nova boot -user-data </path/to/vsrx_configuration.txt> --image vSRX_image --flavor vSRX_flavor_instance

    • openstack server create -user-data </path/to/vsrx_configuration.txt> --image vSRX_image --flavor vSRX_flavor_instance

      어디:

      -user-data </path/to/vsrx_configuration.txt> 은(는) Junos OS 구성 파일의 위치를 지정합니다. 사용자 데이터 구성 파일 크기는 약 16,384바이트로 제한됩니다.

      --image vSRX_image 은(는) 고유한 vSRX 가상 방화벽 이미지의 이름을 식별합니다.

      --flavor vSRX_flavor_instance 은(는) vSRX 가상 방화벽 맛(ID 또는 이름)을 식별합니다.

    Junos OS 릴리스 15.1X49-D130 및 Junos OS 릴리스 18.4R1부터 OpenStack 컴퓨팅 환경의 특정 요청에 대한 구성 드라이브를 사용할 수 있도록 하려면 또는 openstack server create 명령에 매개 변수 nova boot 를 포함합니다-config-drive true.

    참고:

    OpenStack Compute 서비스를 구성하여 항상 구성 드라이브를 생성하도록 구성함으로써 모든 인스턴스에서 구성 드라이브를 자동으로 활성화할 수 있습니다. 이렇게 하려면 파일에서 force_config_drive=True 옵션을 지정합니다 nova.conf .

    예를 들어, 사용자 데이터 속성을 사용하여 Junos OS 구성을 각 vSRX 가상 방화벽 인스턴스로 전달합니다.

    nova boot -config-drive true -flavor vSRX_flavor_instance -image vSRX_image -user-data </path/to/vsrx_configuration.txt>

    어디:

    -user-data </path/to/vsrx_configuration.txt> 은(는) Junos OS 구성 파일의 위치를 지정합니다. 사용자 데이터 구성 파일 크기는 약 64MB로 제한됩니다.

    -image vSRX_image 은(는) 고유한 vSRX 가상 방화벽 이미지의 이름을 식별합니다.

    -flavor vSRX_flavor_instance 은(는) vSRX 가상 방화벽 맛(ID 또는 이름)을 식별합니다.

    예를 들어, 여러 파일(Junos OS 구성 파일 및 라이선스 파일)으로 구성 드라이브를 지정하려면 다음과 같이 하십시오.

    nova boot -config-drive true -flavor vSRX_flavor_instance -image vSRX_image [-file /config/junos-config/configuration.txt=/path/to/file] [-file /junos-license/license.lic=path/to/license]

    어디:

    [-file /config/junos-config/configuration.txt=/path/to/file] 은(는) Junos OS 구성 파일의 위치를 지정합니다.

    [-file /config/junos-license/license.lic=path/to/license] 은(는) Junos OS 구성 파일의 위치를 지정합니다.

    -image vSRX_image 은(는) 고유한 vSRX 가상 방화벽 이미지의 이름을 식별합니다.

    -flavor vSRX_flavor_instance 은(는) vSRX 가상 방화벽 맛(ID 또는 이름)을 식별합니다.

  4. vSRX 가상 방화벽 인스턴스를 부팅하거나 재부팅합니다. 초기 부팅 시퀀스 동안 vSRX 가상 방화벽 인스턴스는 cloud-init 요청을 처리합니다.
    참고:

    cloud-init 패키지를 사용하면 vSRX 가상 방화벽 인스턴스의 부팅 시간이 증가할 수 있습니다. 초기 부팅 시퀀스의 이 추가 시간은 cloud-init 패키지가 수행하는 작업 때문입니다. 이 작업 중에 cloud-init 패키지는 부팅 시퀀스를 중단하고 cloud.cfg에서 식별된 각 데이터 소스에서 구성 데이터를 조회합니다. 클라우드 데이터를 조회하고 채우는 데 필요한 시간은 정의된 데이터 소스 수에 비례합니다. 데이터 소스가 없는 경우 조회 프로세스는 각 데이터 소스에 대해 30초의 사전 정의된 시간 초과에 도달할 때까지 계속됩니다.

  5. 초기 부팅 시퀀스가 재개되면 사용자 데이터 파일은 vSRX 가상 방화벽 인스턴스에 로드된 원래 공장 기본 Junos OS 구성을 대체합니다. 커밋이 성공하면 공장 기본 구성이 영구적으로 대체됩니다. 구성이 지원되지 않거나 vSRX 가상 방화벽 인스턴스에 적용될 수 없는 경우, vSRX 가상 방화벽 기본 Junos OS 구성을 사용하여 부팅됩니다.

OpenStack 대시보드(Horizon)에서 vSRX 가상 방화벽 인스턴스 자동 설정 수행

Horizon은 OpenStack 대시보드의 정경적 구현입니다. Nova, Swift, Keystone 등을 포함한 OpenStack 서비스에 웹 기반 사용자 인터페이스를 제공합니다. OpenStack 대시보드에서 vSRX 가상 방화벽 인스턴스를 시작하고 관리할 수 있습니다. 여기에는 로컬 디렉터리에서 검증된 Junos OS 구성 사용자 데이터 파일을 사용하여 대상 vSRX 가상 방화벽 인스턴스의 활성 구성을 초기화하는 것이 포함됩니다.

OpenStack 대시보드에서 vSRX 가상 방화벽 인스턴스의 자동 설정을 시작하려면,

  1. 아직 수행하지 않은 경우, Junos OS 명령 구문이 있는 구성 파일을 생성하고 파일을 저장합니다. 구성 파일은 일반 텍스트 또는 MIME 파일 유형 텍스트/일반일 수 있습니다.

    사용자 데이터 구성 파일에는 각 vSRX 가상 방화벽 인스턴스에서 활성 구성으로 사용할 전체 vSRX 가상 방화벽 구성이 포함되어야 하며, 문자열 #junos-config 은 Junos OS 구성 전에 사용자 데이터 구성 파일의 첫 줄이어야 합니다.

    참고:

    문자열은 #junos-config 사용자 데이터 구성 파일에서 필수입니다. 문자열이 포함되지 않은 경우, 활성 구성으로 vSRX 가상 방화벽 인스턴스에 적용되지 않습니다.

  2. Junos OS 구성 파일을 검색하여 vSRX 가상 방화벽 인스턴스를 시작할 수 있는 액세스 가능한 위치로 복사합니다.
  3. 로그인 자격 증명을 사용하여 OpenStack 대시보드에 로그인한 다음 왼쪽 상단의 드롭다운 메뉴에서 적절한 프로젝트를 선택합니다.
  4. 프로젝트 탭에서 계산 탭을 클릭하고 인스턴스를 선택합니다. 대시보드에는 이미지 이름, 프라이빗 및 플로팅 IP 주소, 크기, 상태, 가용성 영역, 작업, 전력 상태 등이 포함된 다양한 인스턴스가 표시됩니다.
  5. 시작 인스턴스를 클릭합니다. [인스턴스 실행] 대화 상자가 표시됩니다.
  6. 세부 정보 탭( 그림 1 참조)에서 관련 가용성 영역(예: Nova)과 함께 vSRX 가상 방화벽 VM의 인스턴스 이름을 입력한 다음 다음을 클릭합니다. 이 이름은 vSRX 가상 방화벽 VM에 할당된 호스트 이름과 동일하게 유지하는 것이 좋습니다.
    그림 1: 인스턴스 세부 정보 시작 탭 Launch Instance Details Tab
  7. 소스 탭( 그림 2 참조)에서 사용 가능한 목록에서 vSRX 가상 방화벽 VM 이미지 소스 파일을 선택한 다음 +(Plus)를 클릭합니다. 선택한 vSRX 가상 방화벽 이미지가 할당(Allocated) 아래에 표시됩니다. 다음을 클릭합니다.
    그림 2: 인스턴스 소스 탭 Launch Instance Source Tab 실행
  8. Flavor 탭( 그림 3 참조)에서 사용 가능한 목록에서 특정 컴퓨팅, 메모리 및 스토리지 용량이 있는 vSRX 가상 방화벽 인스턴스를 선택한 다음 +(추가 기호)를 클릭합니다. 선택한 vSRX 가상 방화벽 맛은 할당(Allocated) 아래에 표시됩니다. 다음을 클릭합니다.
    그림 3: 인스턴스 맛 탭 Launch Instance Flavor Tab 실행
  9. 네트워크 탭( 그림 4 참조)에서 사용 가능한 목록에서 vSRX 가상 방화벽 인스턴스의 특정 네트워크를 선택한 다음 +(추가 기호)를 클릭합니다. 선택한 네트워크가 할당(Allocated) 아래에 표시됩니다. 다음을 클릭합니다.
    참고:

    실행 인스턴스 대화 상자에서 네트워크 포트, 보안 그룹 또는 키 쌍 탭의 매개 변수를 업데이트하지 마십시오.

    그림 4: 인스턴스 네트워크 시작 탭 Launch Instance Networks Tab
  10. 구성 탭( 그림 5 참조)에서 찾아보 기를 클릭하고 사용자 데이터 파일로 사용할 로컬 디렉터리에서 검증된 Junos OS 구성 파일의 위치로 이동합니다. 다음을 클릭합니다.
    그림 5: 인스턴스 구성 탭 Launch Instance Configuration Tab 실행
  11. 로드된 Junos OS 구성에 사용자 데이터 구성 파일 첫 줄에 문자열이 포함되어 #junos-config 있는지 확인합니다(그림 6 참조). 다음을 클릭합니다.
    참고:

    실행 인스턴스(Launch Instance) 대화 상자의 메타데이터 탭에서 매개 변수를 업데이트하지 마십시오.

    그림 6: 로드된 Junos OS 구성의 인스턴스 구성 Launch Instance Configuration Tab with Loaded Junos OS Configuration 시작 탭
  12. 시작 인스턴스를 클릭합니다. 초기 부팅 시퀀스 동안 vSRX 가상 방화벽 인스턴스는 cloud-init 요청을 처리합니다.
    참고:

    cloud-init 패키지를 사용하면 vSRX 가상 방화벽 인스턴스의 부팅 시간이 증가할 수 있습니다. 초기 부팅 시퀀스의 이 추가 시간은 cloud-init 패키지가 수행하는 작업 때문입니다. 이 작업 중에 cloud-init 패키지는 부팅 시퀀스를 중단하고 cloud.cfg에서 식별된 각 데이터 소스에서 구성 데이터를 조회합니다. 클라우드 데이터를 조회하고 채우는 데 필요한 시간은 정의된 데이터 소스 수에 비례합니다. 데이터 소스가 없는 경우 조회 프로세스는 각 데이터 소스에 대해 30초의 사전 정의된 시간 초과에 도달할 때까지 계속됩니다.

  13. 초기 부팅 시퀀스가 재개되면 사용자 데이터 파일은 vSRX 가상 방화벽 인스턴스에 로드된 원래 공장 기본 Junos OS 구성을 대체합니다. 커밋이 성공하면 공장 기본 구성이 영구적으로 대체됩니다. 구성이 지원되지 않거나 vSRX 가상 방화벽 인스턴스에 적용될 수 없는 경우, vSRX 가상 방화벽 기본 Junos OS 구성을 사용하여 부팅됩니다.
릴리스 기록 테이블
릴리스
설명
15.1X49-D130
Junos OS 릴리스 15.1X49-D130 및 Junos OS 릴리스 18.4R1부터는 openStack 환경에서 구성 드라이브 데이터 소스 사용을 지원하도록 vSRX 가상 방화벽 cloud-init 기능이 확장되었습니다. 구성 드라이브는 사용자 데이터 속성을 사용하여 검증된 Junos OS 구성 파일을 vSRX 가상 방화벽 인스턴스로 전달합니다.
15.1X49-D100
Junos OS 릴리스 15.1X49-D100 및 Junos OS 릴리스 17.4R1부터 cloud-init 패키지(버전 0.7x)가 vSRX 가상 방화벽 이미지에 미리 설치되어 지정된 사용자 데이터 파일에 따라 OpenStack 환경에서 작동하는 새로운 vSRX 가상 방화벽 인스턴스를 간소화할 수 있도록 지원합니다. Cloud-init은 vSRX 가상 방화벽 인스턴스의 첫 부팅 중에 수행됩니다.