아래의 지시사항에 따라 IBM Cloud에서 MobileFirst Application Center 인스턴스를 구성하십시오. 이를 달성하기 위해 다음 단계를 수행합니다.
표준(유료 클러스터)의 Kubernetes Cluster 유형을 작성하십시오.
필수 도구(Docker, Cloud Foundry CLI( cf ), IBM Cloud CLI( bx ), IBM Cloud CLI를 위한 Container Service 플러그인( bx cs ), IBM Cloud CLI를 위한 Container Registry 플러그인( bx cr ), Kubernetes CLI(kubectl))를 사용하여 호스트 컴퓨터를 설정하십시오.
MobileFirst Application Center Docker 이미지를 빌드하여 IBM Cloud 저장소에 푸시하십시오.
마지막으로, Kubernetes Cluster에 Docker 이미지를 실행하십시오.
참고:
Windows OS는 현재 이와 같은 스크립트 실행에 지원되지 않습니다.
IBM Containers에 배치하는 데 MobileFirst Server 구성 도구를 사용할 수 없습니다.
참고: Mobile Foundation을 배치하는 경우 표준(유료 클러스터)의 Kubernetes Cluster 유형이 필요합니다.
ibm-mfpf-container-8.0.0.0 아카이브 다운로드
IBM Cloud Containers를 사용하여 Kubernetes Cluster로 MobileFirst Application Center를 설정하려면 나중에 IBM Cloud에 푸시할 이미지를 먼저 작성해야 합니다. IBM Fix Central에서 IBM Containers의 MobileFirst Server에 대한 임시 수정사항을 얻을 수 있습니다.
Fix Central에서 최신 임시 수정사항을 다운로드하십시오. Kubernetes 지원은 iFix 8.0.0.0-IF201708220656에서 사용할 수 있습니다.
아카이브 파일에는 이미지를 빌드하는 데 필요한 파일(dependencies 및 mfpf-libs)과 Kubernetes에서 MobileFirst Application Center를 빌드하고 배치하는 데 필요한 파일(bmx-kubernetes)이 포함되어 있습니다.
IBM Cloud Container Service를 사용하여 Kubernetes Cluster에 배치하는 데 필요한 사용자 정의 파일 및 스크립트가 들어 있습니다.
Dockerfile-mfp-appcenter
Dockerfile-mfp-appcenter: MobileFirst Application Center 이미지를 빌드하기 위해 필요한 모든 명령이 포함된 텍스트 문서입니다.
scripts 폴더: 이 폴더에는 구성 파일 세트가 포함된 args 폴더가 들어 있습니다. 이 폴더에는 IBM Cloud에 로그인하여 MobileFirst Application Center 이미지를 빌드하고 IBM Cloud에서 이미지를 푸시 및 실행하기 위해 필요한 스크립트도 포함되어 있습니다. 스크립트를 대화식으로 실행하거나 구성 파일을 현상태대로 사전 구성하여 실행할 수 있습니다(나중에 자세히 설명함). 사용자 정의할 수 있는 args/*.properties 파일 외에는 이 폴더의 요소를 수정하지 마십시오. 스크립트 사용법 도움말을 보려면 -h 또는 --help 명령행 인수를 사용하십시오(예: scriptname.sh --help).
usr-mfp-appcenter 폴더:
bin 폴더: 컨테이너가 시작될 때 실행되는 스크립트 파일(mfp-appcenter-init)이 포함되어 있습니다. 사용자 고유의 사용자 정의 코드를 추가하여 실행할 수 있습니다.
config 폴더: MobileFirst Application Center에서 사용되는 서버 구성 단편(키 저장소, 서버 특성, 사용자 레지스트리)이 들어 있습니다.
keystore.xml - SSL 암호화에 사용되는 보안 인증서 저장소의 구성입니다. 나열된 파일을 ./usr/security 폴더에서 참조해야 합니다.
ltpa.xml - LTPA 키와 비밀번호를 정의하는 구성 파일입니다.
appcentersqldb.xml - DB2 또는 dashDB 데이터베이스에 연결할 JDBC 데이터 소스 정의입니다.
registry.xml - 사용자 레지스트리 구성입니다. basicRegistry(기본 XML 기반 사용자 레지스트리) 구성이 기본값으로 제공됩니다. basicRegistry에 사용할 사용자 이름과 비밀번호를 구성하거나 ldapRegistry를 구성할 수 있습니다.
tracespec.xml - 디버깅 및 로깅 레벨을 사용으로 설정하는 추적 스펙입니다.
jre-security 폴더: JRE 보안 관련 파일(신뢰 저장소, 정책 JAR 파일 등)을 이 폴더에 저장하여 해당 파일을 업데이트할 수 있습니다. 이 폴더의 파일은 컨테이너의 JAVA_HOME/jre/lib/security/ 폴더에 복사됩니다.
security 폴더: 키 저장소, 신뢰 저장소, LTPA 키 파일(ltpa.keys)을 저장하는 데 사용됩니다.
env 폴더: 서버 초기화에 사용되는 환경 특성(server.env)과 사용자 정의 JVM 옵션(jvm.options)이 들어 있습니다.
다음 지시사항은 구성 파일을 사용하여 스크립트를 실행하는 방법을 보여줍니다. 대화식 모드에서 선택해야 하는 명령행 인수의 목록도 사용 가능합니다.
initenv.sh – IBM Cloud에 로그인
IBM Containers에서 MobileFirst Application Center을 빌드하고 실행하는 데 필요한 환경을 작성하려면 initenv.sh 스크립트를 실행하십시오.
Interactive Mode
./initenv.sh
Non-interactive Mode
./initenv.sh args/initenv.properties
prepareappcenterdbs.sh - MobileFirst Application Center 데이터베이스 준비 prepareappcenterdbs.sh 스크립트는 DB2 데이터베이스 서비스를 사용하여 MobileFirst Application Center를 구성하는 데 사용됩니다. 1단계에서 로그인한 조직과 영역에서 DB2 서비스의 서비스 인스턴스를 사용할 수 있어야 합니다. 다음을 실행하십시오.
Interactive Mode
initenv.sh(선택사항) – IBM Cloud에 로그인
이 단계는 DB2 서비스 인스턴스를 사용할 수 있는 조직과 영역 이외의 조직과 영역에서 컨테이너를 작성해야 하는 경우에만 필수입니다. 값이 예인 경우에는 컨테이너가 작성되고 시작되어야 하는 새 조직과 영역으로 initenv.properties를 업데이트하고 initenv.sh 스크립트를 다시 실행하십시오.
./initenv.sh args/initenv.properties
prepareappcenter.sh - MobileFirst Application Center 이미지 준비
MobileFirst Application Center 이미지를 빌드하여 IBM Cloud 저장소에 푸시하려면 prepareappcenter.sh 스크립트를 실행하십시오. IBM Cloud 저장소에서 사용할 수 있는 모든 이미지를 보려면 bx cr image-list를 실행하십시오.
목록은 이미지 이름, 작성 날짜, ID를 포함합니다. Interactive Mode
IBM Cloud Container Service를 사용하여 Kubernetes 클러스터의 Docker 컨테이너에 MobileFirst Application Center를 배치하십시오.
터미널 컨텍스트를 클러스터에 설정하십시오. bx cs cluster-config my-cluster
클러스터 이름을 확인하려면 다음 명령을 실행하십시오. bx cs clusters
출력에서 구성 파일에 대한 경로가 환경 변수를 설정하는 명령으로 표시됩니다. 예를 들면, 다음과 같습니다. export KUBECONFIG=/Users/ibm/.bluemix/plugins/container-service/clusters/my-cluster/kube-config-prod-dal12-my-cluster.yml my-cluster를 클러스터 이름으로 대체한 후 위의 명령을 복사하고 붙여넣어 터미널에서 환경 변수를 설정하고 Enter를 누르십시오.
수신 도메인을 가져오려면 다음 명령을 실행하십시오. bx cs cluster-get my-cluster
수신 도메인을 기록해 두십시오. TLS를 구성해야 하는 경우 수신 시크릿을 기록해 두십시오.
Kubernetes 배치를 작성하십시오. yaml 파일 args/mfp-deployment-appcenter.yaml을 편집하고 세부사항을 기입하십시오. kubectl 명령을 실행하기 전에 모든 변수가 해당 값으로 대체되어야 합니다. ./args/mfp-deployment-appcenter.yaml에는 다음 항목에 대한 배치가 포함됩니다.
MobileFirst Application Center의 Kubernetes 배치: 하나의 인스턴스(복제본), 1024MB 메모리 및 1Core CPU로 구성.
MobileFirst Application Center의 Kubernetes 서비스.
MobileFirst Application Center에 대한 모든 REST 엔드포인트를 포함하는 전체 설정에 대한 수신(ingress).
MobileFirst Application Center 인스턴스에서 환경 변수를 사용할 수 있도록 하는 configMap.
YAML 파일에서 다음 값을 편집해야 합니다.
위에 설명된 대로 bx cs cluster-get 명령의 출력과는 다른 my-cluster.us-south.containers.mybluemix.net의 발생(수신 도메인의 출력 사용)
registry.ng.bluemix.net/repository/mfpappcenter:latest - 이미지를 업로드하기 위해 prepareappcenter.sh에서 사용한 동일한 이름을 사용하십시오.
다음 명령을 실행하십시오. kubectl create -f ./args/mfp-deployment-appcenter.yaml
참고: 다음 템플리트 yaml 파일이 제공됩니다.
mfp-deployment-appcenter.yaml: HTTP를 사용하여 MobileFirst Application Center를 배치합니다.
mfp-deployment-appcenter-with-tls.yaml: HTTPS를 사용하여 MobileFirst Application Center를 배치합니다.
작성 후 Kubernetes 대시보드를 사용하려면 다음 명령을 실행하십시오. kubectl proxy 브라우저에서 localhost:8001/ui를 여십시오.
IBM Cloud에서 컨테이너 제거
IBM Cloud에서 컨테이너를 제거하는 경우 레지스트리에서 이미지 이름도 제거해야 합니다.
다음 명령을 실행하여 IBM Cloud에서 컨테이너를 제거하십시오.
cf ic ps(현재 실행 중인 컨테이너 나열)
cf ic stop container_id(컨테이너 중지)
cf ic rm container_id(컨테이너 제거)
IBM Cloud 레지스트리에서 이미지 이름을 제거하려면 다음 cf ic 명령을 실행하십시오.
cf ic images(레지스트리의 이미지 나열)
cf ic rmi image_id(레지스트리에서 이미지 제거)
IBM Cloud에서 Kubernetes 배치 제거
IBM Cloud Kubernetes 클러스터에서 배치된 인스턴스를 제거하려면 다음 명령을 실행하십시오.
kubectl delete -f mfp-deployment-appcenter.yaml(yaml에서 정의된 모든 Kubernetes 유형을 제거함)
IBM Cloud 레지스트리에서 이미지 이름을 제거하려면 다음 명령을 실행하십시오.
bx cr image-list(레지스트리의 이미지 나열)
bx cr image-rm image-name(레지스트리에서 이미지 제거)
IBM Cloud에서 데이터베이스 서비스 구성 제거
MobileFirst Application Center 이미지 구성 중에 prepareappcenterdbs.sh 스크립트를 실행한 경우 MobileFirst Application Center에 필요한 구성 및 데이터베이스 테이블이 작성됩니다. 이 스크립트는 컨테이너의 데이터베이스 스키마도 작성합니다.
IBM Cloud에서 데이터베이스 서비스 구성을 제거하려면 IBM Cloud 대시보드를 사용하여 다음 프로시저를 수행하십시오.
IBM Cloud 대시보드에서 사용한 DB2 on Cloud 서비스를 선택하십시오. prepareappcenterdbs.sh 스크립트를 실행하는 동안 매개변수로 제공한 DB2 서비스 이름을 선택하십시오.
DB2 콘솔을 실행하여 선택한 DB2 서비스 인스턴스의 스키마와 데이터베이스 오브젝트에 대한 작업을 수행하십시오.
IBM MobileFirst Server 구성과 관련된 스키마를 선택하십시오. 스키마 이름은 prepareappcenterdbs.sh 스크립트를 실행하는 동안 매개변수로 제공한 이름입니다.
스키마 이름과 그 아래의 오브젝트를 신중히 검사한 후 각 스키마를 삭제하십시오. IBM Cloud에서 데이터베이스 구성이 제거됩니다.
Inclusive terminology note: The Mobile First Platform team is making changes to support
the IBM® initiative to replace racially biased and other discriminatory language in our code and content
with more inclusive language. While IBM values the use of inclusive language, terms that are outside of
IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other
industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the
documentation to reflect those changes.