Edge 설치 개요

프라이빗 클라우드용 Edge v4.18.05

일반적인 Edge 설치는 여러 노드에 분산된 Edge 구성요소로 구성됩니다. 노드에 Edge를 설치한 후 노드에 하나 이상의 Edge 구성요소를 설치하고 구성합니다.

설치 절차

노드에 Edge를 설치하는 과정은 다음과 같은 여러 단계로 이루어집니다.

  1. 노드에서 SELinux를 사용 중지하거나 허용 모드로 설정합니다. 자세한 내용은 Edge apigee-setup 유틸리티 설치를 참조하세요.
  2. Cassandra 인증을 사용 설정할지 결정합니다.
  3. Postgres에 마스터-대기 복제를 설정할지 결정합니다.
  4. 권장 토폴로지 목록에서 에지 구성을 선택합니다. 예를 들어 테스트를 위해 단일 노드에 Edge를 설치하거나 프로덕션을 위해 13개 노드에 설치할 수 있습니다. 자세한 내용은 설치 토폴로지를 참조하세요.
  5. 선택한 토폴로지의 각 노드에 Edge apigee-setup 유틸리티를 설치합니다.
    • Edge bootstrap_4.18.05.sh 파일을 /tmp/bootstrap_4.18.05.sh에 다운로드합니다.
    • Edge apigee-service 유틸리티 및 종속 항목을 설치합니다.
    • Edge apigee-setup 유틸리티 및 종속 항목을 설치합니다.

      자세한 내용은 Edge apigee-setup 유틸리티 설치를 참조하세요.

  6. apigee-setup 유틸리티를 사용하여 선택한 토폴로지를 기반으로 각 노드에 하나 이상의 Edge 구성요소를 설치합니다.

    노드에 Edge 구성요소 설치를 참조하세요.

  7. 관리 서버 노드에서 apigee-setup 유틸리티를 사용하여 Edge 조직을 만들고 관리하는 데 사용하는 유틸리티인 apigee-provision을 설치합니다.

    자세한 내용은 조직 온보딩을 참고하세요.

  8. 설치가 완료된 후 Edge UI 구성요소를 다시 시작합니다.

설치를 수행할 수 있는 사용자

Apigee Edge 배포 파일은 RPM 및 종속 항목 집합으로 설치됩니다. Edge RPM을 설치, 제거, 업데이트하려면 루트 사용자 또는 전체 sudo 액세스 권한이 있는 사용자가 명령어를 실행해야 합니다. 전체 sudo 액세스의 경우 사용자가 루트와 동일한 작업을 수행할 수 있는 sudo 액세스 권한을 가집니다.

다음 명령어 또는 스크립트를 실행하려는 사용자는 루트이거나 전체 sudo 액세스 권한이 있는 사용자여야 합니다.

  • apigee-service 유틸리티:
    • apigee-service 명령어: install, uninstall, update
    • apigee-all 명령어: install, uninstall, update.
  • setup.sh 스크립트를 사용하여 Edge 구성요소를 설치합니다. 단, 이미 'apigee-service install'를 사용하여 필요한 RPM을 설치한 경우는 예외입니다. 필요하지 않은 경우 루트 또는 전체 sudo 액세스 권한)
  • Edge 구성요소를 업데이트하는 update.sh 스크립트

또한 Edge 설치 프로그램은 시스템에 'apigee'라는 신규 사용자를 만듭니다. 많은 Edge 명령어는 sudo를 호출하여 'apigee' 사용자로 실행합니다.

위에 표시된 명령어 이외의 다른 명령어를 실행하려는 사용자는 'apigee' 사용자에 대한 전체 sudo 액세스 권한이 있는 사용자여야 합니다. 이러한 명령어에는 다음이 포함됩니다.

  • apigee-service 유틸리티 명령어:
    • start, stop, restart, configure와 같은 apigee-service 명령어
    • start, stop, restart, configure와 같은 apigee-all 명령어

'apigee' 사용자에 대한 전체 sudo 액세스 권한이 있는 사용자 만들기

'apigee' 사용자에 대한 전체 sudo 액세스 권한을 갖도록 사용자를 구성하려면 'visudo' 명령어를 사용하여 sudoers 파일을 수정하여 다음을 추가합니다.

installUser        ALL=(apigee)      NOPASSWD: ALL

여기서 installUser은 Edge를 사용하는 사용자의 사용자 이름입니다.

구성 파일에 대한 권한 설정

Edge 명령어에서 사용하는 모든 파일 또는 리소스는 'apigee' 사용자가 액세스할 수 있어야 합니다. 여기에는 Edge 라이선스 파일과 구성 파일이 포함됩니다.

구성 파일을 만들 때 소유자를 'apigee:apigee'로 변경하여 Edge 명령어에 액세스할 수 있도록 할 수 있습니다.

  1. 편집기에서 파일을 사용자로 만듭니다.
  2. 파일 소유자를 'apigee:apigee'로 chown하거나, Edge 서비스를 실행하는 사용자를 'apigee' 사용자에서 변경한 경우 Edge 서비스를 실행하는 사용자로 파일을 chown합니다.

루트 사용자와 루트가 아닌 사용자 간의 Edge 설치 작업 분리

전체 Edge 설치 프로세스를 루트로 또는 전체 sudo 액세스 권한이 있는 사용자가 수행하는 것이 가장 간단하지만 항상 가능한 것은 아닙니다. 대신 프로세스를 루트에서 수행하는 작업과 'apigee' 사용자에 대한 전체 sudo 액세스 권한이 있는 사용자가 수행하는 작업으로 구분할 수 있습니다.

  1. 루트에서 수행하는 작업:
    1. bootstrap_4.18.05.sh 파일을 다운로드하고 실행합니다.
      curl https://software.apigee.com/bootstrap_4.18.05.sh -o /tmp/bootstrap_4.18.05.sh
      sudo bash /tmp/bootstrap_4.18.05.sh apigeeuser=uName apigeepassword=pWord

      이 단계에서는 apigee-service 유틸리티를 설치하고 'apigee' 사용자를 만듭니다.

    2. 'apigee' 사용자에 대한 전체 sudo 액세스 권한이 있는 사용자 만들기에 설명된 대로 'apigee' 사용자에 대한 전체 sudo 액세스 권한을 갖도록 사용자를 구성합니다.
    3. apigee-setup 유틸리티를 설치합니다.
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    4. apigee-setup 유틸리티를 사용하여 노드에 Edge RPM을 설치합니다.
      /opt/apigee/apigee-service/bin/apigee-service compName install

      노드에 설치하는 Edge RPM은 토폴로지에 따라 다릅니다. 사용 가능한 구성요소 목록에는 apigee-provision, apigee-validate, apigee-zookeeper, apigee-cassandra, apigee-openldap, edge-management-server, edge-ui, edge-router, edge-message-processor, apigee-postgresql, apigee-qpidd, edge-postgres-server, edge-qpid-server가 포함됩니다.

  2. 루트 사용자가 노드에 Edge RPM을 설치한 후 'apigee' 사용자에 대한 전체 sudo 액세스 권한이 있는 사용자가 구성 프로세스를 완료합니다.
    1. setup.sh 유틸리티를 사용하여 노드에서 Edge 구성요소 구성을 완료합니다. 명령어 형식은 노드에 설치한 구성요소에 따라 다릅니다. 전체 목록은 노드에 Edge 구성요소 설치를 참조하세요.

      예를 들어 ZooKeeper 및 Cassandra 설치를 완료하려면 다음 명령어를 사용합니다.

      /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile

      여기서 configFile는 Edge 구성 파일입니다.

      또는 올인원 설치를 수행하려면 다음 명령어를 사용합니다.

      /opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile

설치 구성 파일 위치

Edge 설치에 대한 정보가 포함된 apigee-setup 유틸리티에 구성 파일을 전달해야 합니다. 자동 설치의 유일한 요구사항은 'apigee' 사용자가 구성 파일에 액세스하거나 읽을 수 있어야 한다는 것입니다. 예를 들어 파일을 노드의 /usr/local/var 또는 /usr/local/share 디렉터리에 넣고 'apigee:apigee'로 chown합니다.

Edge 시스템 관리자의 비밀번호를 제외한 구성 파일의 모든 정보가 필요합니다. 비밀번호를 생략하면 apigee-setup 유틸리티에서 명령줄에 비밀번호를 입력하라는 메시지를 표시합니다.

자세한 내용은 노드에 Edge 구성요소 설치를 참조하세요.

설치 실패 처리

Edge 구성요소 설치 중에 오류가 발생하면 문제를 해결한 후 설치 프로그램을 다시 실행할 수 있습니다. 설치 프로그램은 오류가 감지되거나 설치 후 나중에 구성요소를 변경하거나 업데이트하려는 경우 반복적으로 실행되도록 설계되었습니다.

설치 또는 업그레이드 후에는 실행 중인 각 노드에서 Edge UI 구성요소를 다시 시작해야 합니다.

인터넷 또는 비인터넷 설치

노드에 Edge를 설치하려면 노드가 Apigee 저장소에 액세스할 수 있어야 합니다.

  • 외부 인터넷 연결이 있는 노드

    외부 인터넷 연결이 있는 노드는 Apigee 저장소에 액세스하여 Edge RPM 및 종속 항목을 설치합니다.

  • 외부 인터넷 연결이 없는 노드

    외부 인터넷 연결이 없는 노드는 내부적으로 설정한 Apigee 저장소의 미러링된 버전에 액세스할 수 있습니다. 이 저장소에는 모든 Edge RPM이 포함되어 있지만 내부 네트워크의 저장소에서 다른 모든 종속 항목을 사용할 수 있는지 확인해야 합니다.

    내부 Apigee 저장소를 만들려면 Edge RPM 및 종속 항목을 다운로드할 수 있는 외부 인터넷 액세스 권한이 있는 노드가 필요합니다. 내부 저장소를 만든 후에는 다른 노드로 이동하거나 설치를 위해 에지 노드에서 해당 노드에 액세스할 수 있도록 할 수 있습니다.

로컬 Edge 저장소를 사용하여 Edge 버전 유지

로컬 또는 미러링된 저장소를 사용하는 이유 중 하나는 이전 섹션에서 설명한 대로 외부 인터넷 연결이 없는 노드에 Edge를 설치하기 위해서입니다.

RPM 설치 종속 항목 해결

Apigee Edge 배포 파일은 RPM 파일 집합으로 설치되며, 각 파일에는 자체 설치 종속 항목 체인이 있을 수 있습니다. 이러한 종속 항목 중 상당수는 Apigee의 제어 범위를 벗어나며 언제든지 변경될 수 있는 서드 파티 구성요소에 의해 정의됩니다. 따라서 문서에는 각 종속 항목의 명시적인 버전 번호가 나열되지 않습니다.

인터넷 액세스가 가능한 머신에서 설치를 수행하는 경우 노드는 필요한 RPM 및 종속 항목을 다운로드할 수 있습니다. 하지만 인터넷 액세스 권한이 없는 노드에서 설치하는 경우 일반적으로 필요한 모든 종속 항목이 포함된 내부 저장소를 설정합니다. 모든 종속 항목이 로컬 저장소에 포함되도록 보장하는 유일한 방법은 설치를 시도하고 누락된 종속 항목을 식별한 후 설치가 성공할 때까지 로컬 저장소에 복사하는 것입니다.

일반 Yum 명령어

Linux용 Edge 설치 도구는 Yum을 사용하여 구성요소를 설치하고 업데이트합니다. 노드에서 설치를 관리하려면 여러 Yum 명령어를 사용해야 할 수 있습니다.

  • 모든 Yum 캐시를 삭제합니다.
    sudo yum clean all
  • Edge 구성요소를 업데이트하려면 다음 안내를 따르세요.
    sudo yum update componentName

    예를 들면 다음과 같습니다.

    sudo yum update apigee-setup
    sudo yum update edge-management-server

파일 시스템 구조

Edge는 /opt/apigee 디렉터리에 모든 파일을 설치합니다.

이 가이드와 Edge 운영 가이드에서 루트 설치 디렉터리는 다음과 같이 표시됩니다.

/opt/apigee

설치 시 다음 파일 시스템 구조를 사용하여 프라이빗 클라우드용 Apigee Edge를 배포합니다.

로그 파일

apigee-setup 및 setup.sh 스크립트의 로그 파일은 /tmp/setup-root.log에 기록됩니다.

각 구성요소의 로그 파일은 /opt/apigee/var/log 디렉터리에 포함되어 있습니다. 각 구성요소에는 자체 하위 디렉터리가 있습니다. 예를 들어 관리 서버의 로그는 다음 디렉터리에 있습니다.

/opt/apigee/var/log/edge-management-server

다음 표에는 로그 파일의 위치가 나와 있습니다.

구성요소 위치

관리 서버

/opt/apigee/var/log/edge-management-server

라우터

/opt/apigee/var/log/edge-router

에지 라우터는 Nginx를 사용하여 구현됩니다. 추가 로그는 다음을 참고하세요.

/opt/apigee/var/log/edge-router/nginx
/opt/nginx/logs

메시지 프로세서

/opt/apigee/var/log/edge-message-processor

Apigee Qpid 서버

/opt/apigee/var/log/edge-qpid-server
Apigee Postgres 서버 /opt/apigee/var/log/edge-postgres-server
Edge UI /opt/apigee/var/log/edge-ui
ZooKeeper /opt/apigee/var/log/apigee-zookeeper
OpenLDAP /opt/apigee/var/log/apigee-openldap
Cassandra /opt/apigee/var/log/apigee-cassandra
Qpidd /opt/apigee/var/log/apigee-qpidd
PostgreSQL 데이터베이스 /opt/apigee/var/log/apigee-postgresql

데이터

구성요소 위치
관리 서버 /opt/apigee/data/edge-management-server
라우터 /opt/apigee/data/edge-router
메시지 프로세서 /opt/apigee/data/edge-message-processor
Apigee Qpid 에이전트 /opt/apigee/data/edge-qpid-server
Apigee Postgres 에이전트 /opt/apigee/data/edge-postgres-server
ZooKeeper /opt/apigee/data/apigee-zookeeper
OpenLDAP /opt/apigee/data/apigee-openldap
Cassandra /opt/apigee/data/apigee-cassandra/data
Qpidd /opt/apigee/data/apigee-qpid/data
PostgreSQL 데이터베이스 /opt/apigee/data/apigee-postgres/pgdata

설치 후 작업

설치가 완료되면 Edge 구성요소에 추가 작업을 수행할 수 있습니다.

Edge UI 구성요소 다시 시작

설치가 완료되면 각 노드에서 Edge UI 구성요소를 다시 시작해야 합니다.

/opt/apigee/apigee-service/bin/apigee-service edge-ui restart

설치 후 Edge 구성요소 구성

설치 후 Edge를 구성하려면 .properties 파일과 Edge 유틸리티를 조합하여 사용합니다. 예를 들어 Edge UI에서 TLS/SSL을 구성하려면 .properties 파일을 수정하여 필요한 속성을 설정합니다. .properties 파일을 변경하려면 영향을 받는 Edge 구성요소를 다시 시작해야 합니다.

.properties 파일은 /opt/apigee/customer/application 디렉터리에 있습니다. 각 구성요소에는 해당 디렉터리에 자체 .properties 파일이 있습니다. 예를 들면 router.properties 및 management-server.properties입니다.

구성요소의 속성을 설정하려면 해당 .properties 파일을 수정한 후 구성요소를 다시 시작합니다.

/opt/apigee/apigee-service/bin/apigee-service component restart

예를 들면 다음과 같습니다.

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

Edge를 업데이트하면 /opt/apigee/customer/application 디렉터리의 .properties 파일을 읽습니다. 즉, 업데이트는 구성요소에 설정한 모든 속성을 유지합니다.

Edge 구성에 대한 자세한 내용은 Edge 구성 방법을 참조하세요.

Edge 구성요소에서 명령어 호출

Edge는 Edge 설치를 관리하는 데 사용할 수 있는 관리 유틸리티를 /opt/apigee/apigee-service/bin 아래에 설치합니다. 예를 들어 apigee-all 유틸리티를 사용하여 노드의 모든 Edge 구성요소를 시작, 중지, 다시 시작하거나 상태를 확인할 수 있습니다.

/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version

apigee-service 유틸리티를 사용하여 개별 구성요소를 제어하고 구성합니다. apigee-service 유틸리티의 형식은 다음과 같습니다.

/opt/apigee/apigee-service/bin/apigee-service component_name action

여기서 component_name는 구성요소를 식별합니다. 구성요소는 apigee-service를 실행하는 노드에 있어야 합니다. 구성에 따라 component_name 값에는 다음이 포함될 수 있습니다.

  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL 데이터베이스)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (관리 서버)
  • edge-management-ui (새 Edge UI)
  • edge-message-processor (메시지 프로세서)
  • edge-postgres-server (Postgres 서버)
  • edge-qpid-server (Qpid 서버)
  • edge-router (에지 라우터)
  • edge-ui (기본 UI)

이러한 구성요소 외에도 구성에 따라 apigee-provision 및 apigee-validate 구성요소에서 apigee-service를 호출할 수 있습니다.

예를 들어 Edge 라우터를 다시 시작하려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

/opt/apigee 디렉터리를 검사하여 노드에 설치된 구성요소 목록을 확인할 수 있습니다. 이 디렉터리에는 노드에 설치된 모든 Edge 구성요소의 하위 디렉터리가 포함되어 있습니다. 각 하위 디렉터리에는 다음 프리픽스가 붙습니다.

  • apigee: Edge에서 사용하는 서드 파티 구성요소입니다. 예를 들면 apigee-cassandra입니다.
  • edge: Apigee의 Edge 구성요소입니다. 예를 들면 edge-management-server입니다.
  • edge-mint: 수익 창출 구성요소입니다. 예를 들면 edge-mint-management-server입니다.

구성요소의 전체 작업 목록은 구성요소 자체에 따라 다르지만 모든 구성요소는 다음 작업을 지원합니다.

  • start, stop, restart
  • status, version
  • backup, restore
  • install, uninstall

설치 시 시스템 검사 사용 설정

Edge 설치 구성 파일은 다음 속성을 지원합니다.

ENABLE_SYSTEM_CHECK=y

이 속성을 'y'로 설정하면 설치 프로그램은 시스템이 설치 중인 구성요소의 CPU 및 메모리 요구사항을 충족하는지 확인합니다. 기본값은 검사를 사용 중지하는 'n'입니다.