Despliegue de Mobile Foundation en Red Hat OpenShift Container Platform existente
improve this page | report issueObtenga información sobre cómo instalar la instancia de Mobile Foundation en un clúster de OpenShift utilizando IBM Mobile Foundation Operator.
Hay dos formas de obtener la titularidad para OpenShift Container Platform (OCP).
- Tiene la titularidad para IBM Cloud Pak for Applications, que incluye la titularidad de OpenShift Container Platform.
- Tiene una plataforma OpenShift Container existente (adquirida desde Red Hat).
Los pasos para desplegar Mobile Foundation en OCP son los mismos independientemente de cómo haya obtenido la titularidad de OCP.
Requisitos previos
A continuación se muestran los requisitos previos antes de iniciar el proceso de instalación de la instancia de Mobile Foundation Operator.
- Clúster de OpenShift v3.11 o superior.
- Herramientas del cliente de OpenShift (
oc
). - Instalar y configurar Docker.
- Mobile Foundation requiere una base de datos. Cree una base de datos soportada y conserve los detalles de acceso a la base de datos para utilizarlos más adelante. Consulte aquí.
- Mobile Foundation Analytics requiere que el volumen de almacenamiento esté montado para los datos de Analytics persistentes (se recomienda NFS).
Arquitectura
La imagen siguiente muestra la arquitectura interna de los servicios móviles en Red Hat OpenShift.
Instalación de una instancia de IBM Mobile Foundation
Descargue el paquete de IBM Mobile Foundation
Descargue el paquete de IBM Mobile Foundation para Openshift desde IBM Passport Advantage (PPA). Desempaquete el archivo en un directorio denominado workdir
.
NOTA: Consulte aquí si desea validar el paquete PPA y verificar la firma.
Uso de las imágenes de Mobile Foundation desde el registro autorizado
Además de cargar las imágenes PPA en el registro de imágenes interno de OpenShift o en cualquier otro registro externo, se pueden utilizar las imágenes del registro autorizado (ER).
- Obtenga una clave para el registro autorizado. Después del pedido de IBM Cloud Pak for Applications, su cuenta de MyIBM se asocia a una clave de autorización para el software de Cloud Pak. Obtenga la clave de autorización que se ha asignado a su ID.
- Inicie sesión en MyIBM Container Software Library con su IBMid y contraseña, que están asociados al software autorizado.
- En la sección Claves de autorización, seleccione Copiar clave para copiar la clave de autorización en el portapapeles.
- Extraiga la configuración de la instalación de la imagen del instalador en el registro autorizado.
Utilizando una línea de mandatos, ejecute los mandatos siguientes.- Establezca la información del registro de autorización. Ejecute los mandatos export que establecen lo siguiente:
ENTITLED_REGISTRYen cp.icr.io, ENTITLED_REGISTRY_USER en cp y ENTITLED_REGISTRY_KEY en la clave de autorización obtenida en el paso siguiente.
export ENTITLED_REGISTRY=cp.icr.io export ENTITLED_REGISTRY_USER=cp export ENTITLED_REGISTRY_KEY=<apikey>
- Asegúrese de que puede iniciar sesión en el registro autorizado con el mandato
docker login
siguiente.docker login "$ENTITLED_REGISTRY" -u "$ENTITLED_REGISTRY_USER" -p "$ENTITLED_REGISTRY_KEY"
- Establezca la información del registro de autorización. Ejecute los mandatos export que establecen lo siguiente:
ENTITLED_REGISTRYen cp.icr.io, ENTITLED_REGISTRY_USER en cp y ENTITLED_REGISTRY_KEY en la clave de autorización obtenida en el paso siguiente.
- Genere un secreto de extracción de imagen utilizando los detalles del registro autorizado.
- Utilice el mandato siguiente:
oc create secret docker-registry -n <my_project_name> er-image-pullsecret --docker-server=cp.icr.io --docker-username=<my_username> --docker-password=<my_api_key>
- Añada los secretos de envío para los archivos
deploy/operator.yaml
ydeploy/crds/charts_v1_mfoperator_cr.yaml
.
- Utilice el mandato siguiente:
Configure el proyecto OpenShift para Mobile Foundation
- Inicie sesión en el clúster de OpenShift y cree un nuevo proyecto.
export MFOS_PROJECT=<project-name> oc login -u <username> -p <password> <cluster-url> oc new-project $MFOS_PROJECT
- Desempaquete el paquete de IBM Mobile Foundation para Openshift utilizando el mandato siguiente.
tar xzvf IBM-MobileFoundation-Openshift-Pak-<version>.tar.gz -C <workdir>/
- Cargue y envíe las imágenes al registro de OpenShift desde el sistema local.
docker login -u <username> -p $(oc whoami -t) $(oc registry info) cd <workdir>/images ls * | xargs -I{} docker load --input {} for file in * ; do docker tag ${file/.tar.gz/} $(oc registry info)/$MFOS_PROJECT/${file/.tar.gz/} docker push $(oc registry info)/$MFOS_PROJECT/${file/.tar.gz/} done
-
Cree un secreto con credenciales de base de datos.
cat <<EOF | oc apply -f - apiVersion: v1 data: MFPF_ADMIN_DB_USERNAME: <base64-encoded-string> MFPF_ADMIN_DB_PASSWORD: <base64-encoded-string> MFPF_RUNTIME_DB_USERNAME: <base64-encoded-string> MFPF_RUNTIME_DB_PASSWORD: <base64-encoded-string> MFPF_PUSH_DB_USERNAME: <base64-encoded-string> MFPF_PUSH_DB_PASSWORD: <base64-encoded-string> MFPF_LIVEUPDATE_DB_USERNAME: <base64-encoded-string> MFPF_LIVEUPDATE_DB_PASSWORD: <base64-encoded-string> MFPF_APPCNTR_DB_USERNAME: <base64-encoded-string> MFPF_APPCNTR_DB_PASSWORD: <base64-encoded-string> kind: Secret metadata: name: mobilefoundation-db-secret type: Opaque EOF
NOTA: Se puede obtener una serie codificada utilizando
echo -n <string-to-encode> | base64
. - Para Mobile Foundation Analytics, configure un volumen persistente (PV).
cat <<EOF | kubectl apply -f - apiVersion: v1 kind: PersistentVolume metadata: labels: name: mfanalyticspv name: mfanalyticspv spec: capacity: storage: 20Gi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain nfs: path: <nfs-mount-volume-path> server: <nfs-server-hostname-or-ip> EOF
-
Para Mobile Foundation Analytics, configure una reclamación de volumen persistente (PVC).
cat <<EOF | kubectl apply -f - apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mfanalyticsvolclaim namespace: <projectname-or-namespace> spec: accessModes: - ReadWriteMany resources: requests: storage: 20Gi selector: matchLabels: name: mfanalyticspv volumeName: mfanalyticspv EOF
NOTA: Antes de desplegar Analíticas, compruebe si el estado de PV y PVC es enlazado.
Despliegue IBM Mobile Foundation Operator
-
Asegúrese de que el nombre de la imagen de Operator (mf-operator) etiquetado esté establecido para el operador en
deploy/operator.yaml
(REPO_URL).sed -i 's|REPO_URL|<image-repo-url>:<image-tag>|g' deploy/operator.yaml
-
Asegúrese de que el espacio de nombres esté establecido para la definición de enlace de rol del clúster en
deploy/cluster_role_binding.yaml
(REPLACE_NAMESPACE).sed -i 's|REPLACE_NAMESPACE|$MFOS_PROJECT|g' deploy/cluster_role_binding.yaml
Para el distintivo de imagen del operador 1.0.11 y posterior, utilice el mandato siguiente.
sed -i 's|REPLACE_NAMESPACE|$MFOS_PROJECT|g' deploy/role_binding.yaml
-
Ejecute los mandatos siguientes para desplegar CRD, el operador y para instalar las Restricciones de contexto de seguridad (SCC).
oc create -f deploy/crds/charts_v1_mfoperator_crd.yaml oc create -f deploy/ oc adm policy add-scc-to-group mf-operator system:serviceaccounts:$MFOS_PROJECT
Para el distintivo de imagen del operador 1.0.11 y posterior, utilice los mandatos siguientes.
oc create -f deploy/crds/charts_v1_mfoperator_crd.yaml oc create -f deploy/ oc adm policy add-scc-to-group mf-operator system:serviceaccounts:$MFOS_PROJECT oc adm policy add-cluster-role-to-user cluster-admin system:serviceaccount:$MFOS_PROJECT:mf-operator
Despliegue los componentes de IBM Mobile Foundation
-
Para desplegar cualquiera de los componentes de Mobile Foundation, modifique la configuración de los recursos personalizados
deploy/crds/charts_v1_mfoperator_cr.yaml
, en función de sus requisitos. Puede encontrar referencias completas sobre la configuración personalizada aquí.NOTA IMPORTANTE: Para acceder a las instancias de Mobile Foundation después del despliegue, es necesario configurar el nombre de host de ingress. Asegúrese de que ingress esté configurado en la configuración de recursos personalizados. Consulte este enlace sobre la configuración del mismo..
oc apply -f deploy/crds/charts_v1_mfoperator_cr.yaml
-
Ejecute el mandato siguiente y asegúrese de que los pods se crean y ejecutan correctamente. En un escenario de despliegue donde Mobile Foundation Server y Push están habilitados con 3 réplicas cada uno (valor predeterminado), la salida es similar a la siguiente.
$ oc get pods NAME READY STATUS RESTARTS AGE mf-operator-5db7bb7w5d-b29j7 1/1 Running 0 1m mfpf-server-2327bbewss-3bw31 1/1 Running 0 1m 20s mfpf-server-29kw92mdlw-923ks 1/1 Running 0 1m 21s mfpf-server-5woxq30spw-3bw31 1/1 Running 0 1m 19s mfpf-push-2womwrjzmw-239ks 1/1 Running 0 59s mfpf-push-29kw92mdlw-882pa 1/1 Running 0 52s mfpf-push-1b2w2s973c-983lw 1/1 Running 0 52s
NOTA: Si el estado de ejecución de los pods es (1/1) significa que están disponibles para su acceso.
-
Compruebe si se han creado las rutas para acceder a los puntos finales de Mobile Foundation ejecutando el mandato siguiente.
$ oc get routes NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD ibm-mf-cr-1fdub-mfp-ingress-57khp myhost.mydomain.com /imfpush ibm-mf-cr--mfppush 9080 None ibm-mf-cr-1fdub-mfp-ingress-8skfk myhost.mydomain.com /mfpconsole ibm-mf-cr--mfpserver 9080 None ibm-mf-cr-1fdub-mfp-ingress-dqjr7 myhost.mydomain.com /doc ibm-mf-cr--mfpserver 9080 None ibm-mf-cr-1fdub-mfp-ingress-ncqdg myhost.mydomain.com /mfpadminconfig ibm-mf-cr--mfpserver 9080 None ibm-mf-cr-1fdub-mfp-ingress-x8t2p myhost.mydomain.com /mfpadmin ibm-mf-cr--mfpserver 9080 None ibm-mf-cr-1fdub-mfp-ingress-xt66r myhost.mydomain.com /mfp ibm-mf-cr--mfpserver 9080 None
Acceso a la consola de los componentes de IBM Mobile Foundation
Los siguientes son los puntos finales para acceder a las consolas de los componentes de Mobile Foundation
- Mobile Foundation Server Administration Console -
http://<ingress_hostname>/mfpconsole
- Operational Analytics Console -
http://<ingress_hostname>/analytics/console
- Application Center Console -
http://<ingress_hostname>/appcenterconsole
Desinstalar
Utilice los mandatos siguientes para realizar una limpieza posterior a la instalación.
oc delete -f deploy/crds/charts_v1_mfoperator_cr.yaml
oc delete -f deploy/
oc delete -f deploy/crds/charts_v1_mfoperator_crd.yaml
oc patch crd/ibmmf.charts.helm.k8s.io -p '{"metadata":{"finalizers":[]}}' --type=merge
Referencias adicionales
- Configuración de las bases de datos de Mobile Foundation
- Utilización de Oracle (o) MySQL como base de datos de IBM Mobile Foundation
- Parámetros de configuración de recursos para Mobile Foundation
- Casos de ejemplo para habilitar Ingress
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.