3.6. OpenShift 템플릿을 사용하여 APIcast 배포

OpenShift 템플릿을 사용하여 APIcast API 게이트웨이를 배포할 수 있습니다. APIcast API 게이트웨이를 배포하면 API를 보호하는 데 도움이 되며 해당 API에 대한 트래픽을 분석하고 모니터링할 수 있습니다.

사전 요구 사항

절차

  1. 기본적으로 개발자로 로그인하여 다음 단계를 진행할 수 있습니다.

    그렇지 않으면 이전 단계에서 다운로드하여 설치한 OpenShift 클라이언트 툴에서 oc login 명령을 사용하여 OpenShift에 로그인합니다. 기본 로그인 인증 정보는 username = " developer"password = " developer" 입니다.

    oc login https://OPENSHIFT-SERVER-IP:8443

    Login successful. 출력이 표시되어야 합니다.

  2. 프로젝트를 생성합니다. 이 예에서는 표시 이름을 게이트웨이로설정

    oc new-project "3scalegateway" --display-name="gateway" --description="3scale gateway demo"

    응답은 다음과 같아야 합니다.

    Now using project "3scalegateway" on server "https://172.30.0.112:8443"

    명령 프롬프트의 텍스트 출력에서 제안된 다음 단계를 무시하고 아래의 다음 단계로 진행합니다.

  3. <access_token><domain>을 자체 인증 정보로 교체하여 프로젝트를 참조하는 새 시크릿을 생성합니다. <access_token><domain>에 대한 자세한 내용은 아래를 참조하십시오.

    oc create secret generic apicast-configuration-url-secret --from-literal=password=https://<access_token>@<admin_portal_domain>  --type=kubernetes.io/basic-auth

    여기서 <access_token>은 3scale 계정의 액세스 토큰이며 <domain>-admin.3scale.net은 3scale 관리 포털의 URL입니다.

    응답은 다음과 같아야 합니다.

    secret/apicast-configuration-url-secret
  4. 템플릿에서 APIcast 게이트웨이 애플리케이션을 생성하고 배포를 시작합니다.

    oc new-app -f https://raw.githubusercontent.com/3scale/3scale-amp-openshift-templates/3scale-2.10.0-GA/apicast-gateway/apicast.yml

    출력 하단에 다음 메시지가 표시됩니다.

        --> Creating resources with label app=3scale-gateway ...
            deploymentconfig "apicast" created
            service "apicast" created
        --> Success
            Run 'oc status' to view your app.

3.6.1. OpenShift 콘솔을 통해 경로 생성

OpenShift 콘솔을 통해 경로를 생성하려면 다음을 수행합니다.

절차

  1. 브라우저에서 OpenShift 클러스터의 웹 콘솔을 엽니다. https://OPENSHIFT-SERVER-IP:8443/console/

    원격 서버에서 OpenShift 클러스터를 시작한 경우 OPENSHIFT-SERVER-IP 대신 --public-hostname에 지정된 값을 사용합니다.

    OpenShift의 로그인 화면이 표시됩니다.

    참고

    신뢰할 수 없는 웹 사이트에 대한 경고가 표시될 수 있습니다. 이는 유효한 인증서를 구성하지 않고도 보안 프로토콜을 통해 웹 콘솔에 액세스하려고 하기 때문에 이는 예상된 결과입니다. 프로덕션 환경에서 이 문제를 방지해야 하지만 이 테스트 설정에서는 계속 진행하여 이 주소에 대한 예외를 생성할 수 있습니다.

  2. 개발자 자격 증명을 사용하여 로그인합니다.

    위의 명령줄에서 생성한 게이트웨이 프로젝트를 포함하여 프로젝트 목록이 표시됩니다. 게이트웨이 프로젝트가 표시되지 않으면 다른 사용자로 만들었을 수 있으며 이 사용자에게 정책 역할을 할당해야 합니다.

  3. 게이트웨이 링크를 클릭하면 개요 탭이 표시됩니다.

    OpenShift는 APIcast용 코드를 다운로드하고 배포를 시작했습니다. 배포가 진행 중일 때 실행 중인 Deployment #1 메시지가 표시될 수 있습니다.

    빌드가 완료되면 UI(사용자 인터페이스)가 템플릿에 정의된 대로 OpenShift에서 시작하는 APIcast(1 pod) 인스턴스를 새로 고치고 표시합니다.

    각 APIcast 인스턴스는 시작 시 3scale 관리 포털의 통합 페이지에서 제공한 설정을 사용하여 3scale에서 필요한 구성을 다운로드합니다.

    OpenShift는 두 개의 APIcast 인스턴스를 유지 관리하고 두가지 모두의 상태를 모니터링합니다. 비정상 APIcast 인스턴스는 자동으로 새 APIcast 인스턴스로 교체됩니다.

  4. APIcast 인스턴스가 트래픽을 수신하도록 허용하려면 경로를 생성해야 합니다. 경로 생성을 클릭하여 시작합니다.

    위의 3scale에 설정한 동일한 호스트를 Public Base URL ( http:// 제외 및 포트 없이) (예: gateway.openshift.demo )에서 입력합니다. 그런 다음 Create 버튼을 클릭합니다.

    사용자가 정의한 모든 3scale 제품에 대해 새 경로를 생성해야 합니다.