{"id":5336,"date":"2018-06-18T05:59:02","date_gmt":"2018-06-18T12:59:02","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=5336"},"modified":"2018-10-12T04:02:08","modified_gmt":"2018-10-12T11:02:08","slug":"couchbase-on-openshift-in-action","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/couchbase-on-openshift-in-action\/","title":{"rendered":"Couchbase en OpenShift en acci\u00f3n"},"content":{"rendered":"<p><strong>OpenShift<\/strong>\u00a0es una plataforma como servicio (PaaS) de Red Hat basada en contenedores Docker y Kubernetes. Se trata de una plataforma de aplicaciones en contenedores de c\u00f3digo abierto de Red Hat basada en contenedores Docker y el gestor de cl\u00fasteres de contenedores Kubernetes para el desarrollo y la implantaci\u00f3n de aplicaciones empresariales.<\/p>\n<p>Couchbase's Operator tambi\u00e9n es compatible con OpenShift. Ahora, vamos a ver c\u00f3mo se puede escalar r\u00e1pidamente hacia arriba y hacia abajo, recuperarse de fallos, o incluso cambiar la arquitectura de su cl\u00faster con s\u00f3lo unos pocos comandos de l\u00ednea:<\/p>\n<p><iframe loading=\"lazy\" width=\"900\" height=\"506\" src=\"https:\/\/www.youtube.com\/embed\/v55ZQzJrVL0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p>&nbsp;<\/p>\n<h2>Transcripci\u00f3n del v\u00eddeo:<\/h2>\n<h4><strong>C\u00f3digo<\/strong>:<\/h4>\n<pre class=\"lang:default decode:true\">https:\/\/github.com\/couchbaselabs\/kubernetes-starter-kit<\/pre>\n<h4>Requisitos previos<\/h4>\n<ul>\n<li><a href=\"https:\/\/docs.openshift.org\/latest\/minishift\/getting-started\/installing.html\">Minishift<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><strong>Inicio de Minishift<\/strong><\/h3>\n<p>Para iniciar su minishift, s\u00f3lo tiene que escribir el siguiente comando:<\/p>\n<pre class=\"lang:default decode:true\">minishift start<\/pre>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5339\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.16.39-PM-1024x846.png\" alt=\"Starting Minishift\" width=\"596\" height=\"492\" \/><\/p>\n<p>Una vez que se haya iniciado, ejecute el siguiente comando para a\u00f1adir <strong>oc<\/strong> a su Classpath:<\/p>\n<pre class=\"lang:default decode:true\">eval $(minishift oc-env)<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5340\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.17.51-PM-1024x569.png\" alt=\"\" width=\"599\" height=\"333\" \/><\/p>\n<p><strong>\u00a0<\/strong>Adem\u00e1s, tambi\u00e9n puede incluir el siguiente complemento para poder acceder a su cl\u00faster como administrador:<\/p>\n<pre class=\"lang:default decode:true\">minishift addon apply admin-user<\/pre>\n<p>Ahora, para acceder a OpenShift, puede utilizar el siguiente comando:<\/p>\n<pre class=\"lang:default decode:true\">oc login -u admin<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5341\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.22.47-PM-1024x375.png\" alt=\"\" width=\"613\" height=\"221\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3><strong>Configuraci\u00f3n de Minishift<\/strong><\/h3>\n<p><strong>\u00a0<\/strong>Hay algunas cosas que deben ser creadas antes de empezar. Me limitar\u00e9 a enumerar todos los comandos necesarios, pero puedes consultar la documentaci\u00f3n oficial <a href=\"https:\/\/developer.couchbase.com\/documentation\/server\/5.5\/operator\/installOpenShift.html\">aqu\u00ed<\/a>.<\/p>\n<h4><strong>1 - Crear un proyecto Openshift<\/strong><\/h4>\n<pre class=\"lang:default decode:true\">oc login -u developer\r\noc new-project operator-example\r\noc logout<\/pre>\n<h4><strong>2 - Crear una nueva Definici\u00f3n de Recurso Personalizada y Rol de Cluster<\/strong><\/h4>\n<pre class=\"lang:default decode:true\">oc login -u admin\r\noc create -f https:\/\/packages.couchbase.com\/kubernetes\/0.8.1-beta2\/openshift\/crd.yaml\r\noc create -f https:\/\/packages.couchbase.com\/kubernetes\/0.8.1-beta2\/openshift\/cluster-role-sa.yaml\r\noc create -f https:\/\/packages.couchbase.com\/kubernetes\/0.8.1-beta2\/openshift\/cluster-role-user.yaml\r\n<\/pre>\n<h4><strong>3- Configuraci\u00f3n de RBAC para un proyecto OpenShift<\/strong><\/h4>\n<pre class=\"lang:default decode:true\">oc create serviceaccount couchbase-operator --namespace operator-example\r\noc create rolebinding couchbase-operator --clusterrole couchbase-operator --serviceaccount operator-example:couchbase-operator\r\noc adm policy add-scc-to-user anyuid system:serviceaccount:operator-example:couchbase-operator\r\noc create rolebinding couchbasecluster --clusterrole couchbasecluster --user developer --namespace operator-example\r\noc create clusterrolebinding couchbasecluster --clusterrole couchbasecluster --user developer<\/pre>\n<p>&nbsp;<\/p>\n<h3><strong>Despliegue del operador de Couchbase en OpenShift<\/strong><\/h3>\n<p><strong>\u00a0<\/strong><\/p>\n<p>Ahora que hemos configurado todo, vamos a desplegar el Operador de Couchbase. Como he mencionado en un <a href=\"https:\/\/www.couchbase.com\/blog\/es\/kubernetes-operators-game-changer\/\">entrada anterior<\/a>El Operador es responsable de automatizar parte del trabajo del DBA, como unir un nuevo nodo al cluster, reequilibrar datos, consolidar logs, etc.<\/p>\n<p>Puede desplegar el operador ejecutando el siguiente comando:<\/p>\n<pre class=\"lang:default decode:true\">oc create -f https:\/\/packages.couchbase.com\/kubernetes\/0.8.1-beta2\/openshift\/operator.yaml<\/pre>\n<p>Ejecute el siguiente comando para verificar que su despliegue se ha ejecutado correctamente:<\/p>\n<pre class=\"lang:default decode:true\">oc get pods:<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5342\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.32.54-PM-1024x88.png\" alt=\"\" width=\"619\" height=\"53\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.32.54-PM-1024x88.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.32.54-PM-300x26.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.32.54-PM-768x66.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.32.54-PM-20x2.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.32.54-PM-1320x114.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.32.54-PM.png 1372w\" sizes=\"auto, (max-width: 619px) 100vw, 619px\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3><strong>Despliegue de Couchbase en OpenShift<\/strong><\/h3>\n<p>&nbsp;<\/p>\n<p>Desplegar Couchbase en OpenShift es casi lo mismo que <a href=\"https:\/\/www.couchbase.com\/blog\/es\/databases-on-kubernetes\/\">despliegue en Kubernetes<\/a>s\u00f3lo tienes que ejecutar el siguiente comando dentro del directorio \"kubernetes\":<\/p>\n<pre class=\"lang:default decode:true\">oc create -f secret.yaml \/\/ create the user and password we are going to use to log-in to the web console\r\noc create -f couchbase-cluster.yaml<\/pre>\n<p>Nuestro archivo yaml contiene la especificaci\u00f3n del cl\u00faster, como el nombre del bucket, el n\u00famero de servidores, servicios, etc:<\/p>\n<p><strong>secret.yaml<\/strong><\/p>\n<pre class=\"lang:yaml decode:true\">apiVersion: v1\r\nkind: Secret\r\nmetadata:\r\n  name: cb-example-auth\r\ntype: Opaque\r\ndata:\r\n  username: QWRtaW5pc3RyYXRvcg== #base64 for Administrator\r\n  password: cGFzc3dvcmQ= #base64 for password\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>couchbase-cluster.yaml<\/strong><\/p>\n<pre class=\"lang:yaml decode:true\">apiVersion: couchbase.database.couchbase.com\/v1beta1\r\nkind: CouchbaseCluster\r\nmetadata:\r\n  name: cb-example\r\nspec:\r\n  baseImage: couchbase\/server\r\n  version: enterprise-5.0.1\r\n  authSecret: cb-example-auth\r\n  exposeAdminConsole: true\r\n  cluster:\r\n    dataServiceMemoryQuota: 256\r\n    indexServiceMemoryQuota: 256\r\n    searchServiceMemoryQuota: 256\r\n    indexStorageSetting: memory_optimized\r\n    autoFailoverTimeout: 30\r\n  buckets:\r\n    - name: couchbase-sample\r\n      type: couchbase\r\n      memoryQuota: 128\r\n      replicas: 3\r\n      ioPriority: high\r\n      evictionPolicy: fullEviction\r\n      conflictResolution: seqno\r\n      enableFlush: true\r\n      enableIndexReplica: false\r\n  servers:\r\n    - size: 3\r\n      name: all_services\r\n      services:\r\n        - data\r\n        - index\r\n        - query\r\n        - search\r\n      dataPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n      indexPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>Consulte el <a href=\"https:\/\/docs.couchbase.com\/prerelease\/couchbase-operator\/beta\/couchbaseClusterConfig.html\">documentaci\u00f3n oficial<\/a> para comprender la funci\u00f3n de cada propiedad.<\/p>\n<p>En el archivo anterior, hemos especificado que queremos 3 nodos, lo que significa que deber\u00edamos tener 3 nodos ejecutando Couchbase:<\/p>\n<pre class=\"lang:default decode:true\">oc get pods<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5343\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.45.52-PM-1024x178.png\" alt=\"\" width=\"692\" height=\"120\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.45.52-PM-1024x178.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.45.52-PM-300x52.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.45.52-PM-768x134.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.45.52-PM-20x3.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.45.52-PM.png 1320w\" sizes=\"auto, (max-width: 692px) 100vw, 692px\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3><strong>Acceso a su base de datos en OpenShift<\/strong><\/h3>\n<p>&nbsp;<\/p>\n<p>Hay muchas maneras de exponer la consola web al mundo externo. En este art\u00edculo, vamos a simplemente reenviar el puerto a la m\u00e1quina local con el siguiente comando:<\/p>\n<pre class=\"lang:default decode:true\">oc port-forward cb-example-0000 8091:8091<\/pre>\n<p>Ahora, deber\u00eda poder acceder a la consola web de Couchbase en su m\u00e1quina local en\u00a0<a href=\"https:\/\/localhost:8091\/\">https:\/\/localhost:8091<\/a>:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5211\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/05\/Couchbase_Local-1024x444.png\" alt=\"\" width=\"812\" height=\"351\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/05\/Couchbase_Local-1024x444.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/05\/Couchbase_Local-300x130.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/05\/Couchbase_Local-768x333.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/05\/Couchbase_Local-1536x666.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/05\/Couchbase_Local-20x9.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/05\/Couchbase_Local-1320x572.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/05\/Couchbase_Local.png 2048w\" sizes=\"auto, (max-width: 812px) 100vw, 812px\" \/><\/p>\n<p>Observa que todos los nodos creados ya forman parte de un cluster. Todo fue hecho autom\u00e1ticamente por el Operador de Couchbase.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-5344\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM-1024x228.png\" alt=\"\" width=\"900\" height=\"200\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM-1024x228.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM-300x67.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM-768x171.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM-1536x341.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM-20x4.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM-1320x293.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.47.48-PM.png 2048w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3><strong>C\u00f3mo recuperarse de un fallo de nodo de base de datos en OpenShift<\/strong><\/h3>\n<p>&nbsp;<\/p>\n<p>Matemos una de nuestras instancias para ver c\u00f3mo se comporta el cl\u00faster:<\/p>\n<pre class=\"lang:default decode:true\">oc delete pod cb-example-0001<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5345\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.50.24-PM-1024x78.png\" alt=\"\" width=\"717\" height=\"55\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.50.24-PM-1024x78.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.50.24-PM-300x23.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.50.24-PM-768x58.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.50.24-PM-20x2.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.50.24-PM.png 1186w\" sizes=\"auto, (max-width: 717px) 100vw, 717px\" \/><\/p>\n<p>Couchbase se dar\u00e1 cuenta inmediatamente de que un nodo \"<em>desapareci\u00f3<\/em>\" y se iniciar\u00e1 el proceso de recuperaci\u00f3n. Como especificamos en\u00a0<strong>couchbase<\/strong><strong>-cluster.yaml<\/strong>\u00a0que siempre queremos 3 servidores funcionando, Kubernetes iniciar\u00e1 una nueva instancia\u00a0<strong>llamado cb-example-0004<\/strong>:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5346\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM-1024x509.png\" alt=\"\" width=\"721\" height=\"358\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM-1024x509.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM-300x149.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM-768x381.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM-1536x763.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM-20x10.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM-1320x655.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.52.10-PM.png 2048w\" sizes=\"auto, (max-width: 721px) 100vw, 721px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Una vez\u00a0<strong>cb<\/strong><strong>-ejemplo-004<\/strong>\u00a0el operador se encarga de unir el nodo reci\u00e9n creado al cl\u00faster y, a continuaci\u00f3n, activa el reequilibrio de datos.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5347\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM-1024x194.png\" alt=\"\" width=\"553\" height=\"105\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM-1024x194.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM-300x57.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM-768x146.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM-1536x292.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM-20x4.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM-1320x251.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-1.54.41-PM.png 1548w\" sizes=\"auto, (max-width: 553px) 100vw, 553px\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3><strong>Reducci\u00f3n de Couchbase en Open Shift<\/strong><\/h3>\n<p>&nbsp;<\/p>\n<p>Si crees que escalar una base de datos es dif\u00edcil, deber\u00edas intentar escalarla a la baja. Por suerte, es algo realmente sencillo con Couchbase y OpenShift. Todo lo que necesitas es cambiar la configuraci\u00f3n de tu cl\u00faster:<\/p>\n<p><strong>couchbase-cluster.yaml<\/strong><\/p>\n<pre class=\"lang:yaml decode:true\">apiVersion: couchbase.database.couchbase.com\/v1beta1\r\nkind: CouchbaseCluster\r\nmetadata:\r\n  name: cb-example\r\nspec:\r\n  baseImage: couchbase\/server\r\n  version: enterprise-5.0.1\r\n  authSecret: cb-example-auth\r\n  exposeAdminConsole: true\r\n  cluster:\r\n    dataServiceMemoryQuota: 256\r\n    indexServiceMemoryQuota: 256\r\n    searchServiceMemoryQuota: 256\r\n    indexStorageSetting: memory_optimized\r\n    autoFailoverTimeout: 30\r\n  buckets:\r\n    - name: couchbase-sample\r\n      type: couchbase\r\n      memoryQuota: 128\r\n      replicas: 3\r\n      ioPriority: high\r\n      evictionPolicy: fullEviction\r\n      conflictResolution: seqno\r\n      enableFlush: true\r\n      enableIndexReplica: false\r\n  servers:\r\n    - size: 1 \/\/changed\r\n      name: all_services\r\n      services:\r\n        - data\r\n        - index\r\n        - query\r\n        - search\r\n      dataPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n      indexPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n<\/pre>\n<p>Y luego ejecute el siguiente comando para empujar su cambio a OpenShift:<\/p>\n<pre class=\"lang:default decode:true\">oc replace -f couchbase-cluster.yaml<\/pre>\n<p>Sin embargo, aqu\u00ed hay un peque\u00f1o detalle, ya que no podemos matar 2 nodos al mismo tiempo sin correr cierto riesgo de p\u00e9rdida de datos. Para evitar este problema, el operador reduce el cl\u00faster gradualmente, una instancia cada vez, activando el reequilibrio para garantizar que no se pierden datos durante el proceso:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-5348\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM-1024x116.png\" alt=\"\" width=\"900\" height=\"102\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM-1024x116.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM-300x34.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM-768x87.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM-1536x173.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM-20x2.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM-1320x149.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.00.16-PM.png 2048w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3><strong>Ampliaci\u00f3n de Couchbase en OpenShift<\/strong><\/h3>\n<p>&nbsp;<\/p>\n<p>Volvamos a escalarlo a 3 nodos. Como habr\u00e1s adivinado, todo lo que tenemos que hacer es cambiar la directiva\u00a0<strong>talla<\/strong>\u00a0par\u00e1metro en\u00a0<strong>couchbase<\/strong><strong>-cluster.yaml <\/strong>volver a <strong>3<\/strong>:<\/p>\n<pre class=\"lang:yaml decode:true\">apiVersion: couchbase.database.couchbase.com\/v1beta1\r\nkind: CouchbaseCluster\r\nmetadata:\r\n  name: cb-example\r\nspec:\r\n  baseImage: couchbase\/server\r\n  version: enterprise-5.0.1\r\n  authSecret: cb-example-auth\r\n  exposeAdminConsole: true\r\n  cluster:\r\n    dataServiceMemoryQuota: 256\r\n    indexServiceMemoryQuota: 256\r\n    searchServiceMemoryQuota: 256\r\n    indexStorageSetting: memory_optimized\r\n    autoFailoverTimeout: 30\r\n  buckets:\r\n    - name: couchbase-sample\r\n      type: couchbase\r\n      memoryQuota: 128\r\n      replicas: 3\r\n      ioPriority: high\r\n      evictionPolicy: fullEviction\r\n      conflictResolution: seqno\r\n      enableFlush: true\r\n      enableIndexReplica: false\r\n  servers:\r\n    - size: 3 \/\/back to 3 servers\r\n      name: all_services\r\n      services:\r\n        - data\r\n        - index\r\n        - query\r\n        - search\r\n      dataPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n      indexPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n<\/pre>\n<p>A continuaci\u00f3n, actualizamos nuestra configuraci\u00f3n ejecutando<\/p>\n<pre class=\"lang:default decode:true\">oc replace -f Couchbase-cluster.yaml<\/pre>\n<p>Despu\u00e9s de unos minutos, ver\u00e1 que ahora tenemos 3 nodos de nuevo:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5349\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-2.04.57-PM-1024x346.png\" alt=\"\" width=\"826\" height=\"275\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3><strong>Escala multidimensional<\/strong><\/h3>\n<p>Tambi\u00e9n puede aprovechar el escalado multidimensional especificando los servicios que desea ejecutar en cada nodo:<\/p>\n<p><strong>couchbase-cluster.yaml \u00a0<\/strong><\/p>\n<pre class=\"lang:yaml decode:true\">apiVersion: couchbase.database.couchbase.com\/v1beta1\r\nkind: CouchbaseCluster\r\nmetadata:\r\n  name: cb-example\r\nspec:\r\n  baseImage: couchbase\/server\r\n  version: enterprise-5.0.1\r\n  authSecret: cb-example-auth\r\n  exposeAdminConsole: true\r\n  cluster:\r\n    dataServiceMemoryQuota: 256\r\n    indexServiceMemoryQuota: 256\r\n    searchServiceMemoryQuota: 256\r\n    indexStorageSetting: memory_optimized\r\n    autoFailoverTimeout: 30\r\n  buckets:\r\n    - name: couchbase-sample\r\n      type: couchbase\r\n      memoryQuota: 128\r\n      replicas: 3\r\n      ioPriority: high\r\n      evictionPolicy: fullEviction\r\n      conflictResolution: seqno\r\n      enableFlush: true\r\n      enableIndexReplica: false\r\n  servers:\r\n    - size: 2\r\n      name: data_and_index\r\n      services:\r\n        - data\r\n        - index\r\n      dataPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n      indexPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n    - size: 1\r\n      name: query_and_search\r\n      services:\r\n        - query\r\n        - search\r\n      dataPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n      indexPath: \/opt\/couchbase\/var\/lib\/couchbase\/data\r\n<\/pre>\n<p>Una vez m\u00e1s, tenemos que empujar nuestros cambios a OpenShift con el siguiente comando:<\/p>\n<pre class=\"lang:default decode:true\">oc replace -f couchbase-cluster.yaml<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5350\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-2.45.58-PM-1024x172.png\" alt=\"\" width=\"703\" height=\"118\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.45.58-PM-1024x172.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.45.58-PM-300x50.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.45.58-PM-768x129.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.45.58-PM-20x3.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2018\/06\/Screen-Shot-2018-06-18-at-2.45.58-PM.png 1274w\" sizes=\"auto, (max-width: 703px) 100vw, 703px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>En este caso, se crear\u00e1n tres nuevos nodos: dos de datos e \u00edndice y uno de b\u00fasqueda y consulta de texto completo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5351\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2018\/06\/Screen-Shot-2018-06-18-at-2.51.26-PM-1024x194.png\" alt=\"\" width=\"763\" height=\"145\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h3><strong>Conectando su aplicaci\u00f3n a Couchbase en OpenShift<\/strong><\/h3>\n<p>Desplegar una aplicaci\u00f3n en OpenShift es muy similar a desplegarla en Kubernetes. La principal diferencia es que debe utilizar <strong>oc<\/strong> en lugar de utilizar <strong>kubectl<\/strong>. <a href=\"https:\/\/www.couchbase.com\/blog\/es\/elastic-microservices-with-kubernetes-and-spring-boot\/\">Este art\u00edculo<\/a> muestra paso a paso c\u00f3mo hacerlo.<\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p>Si tienes alguna pregunta, env\u00edame un tweet a\u00a0<a href=\"https:\/\/twitter.com\/deniswsrosa\">@deniswsrosa<\/a>\u00a0o deje un comentario a continuaci\u00f3n.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h3>Lea tambi\u00e9n:<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.couchbase.com\/blog\/es\/fuzzy-matching\/\">Emparejamiento difuso<\/a><\/li>\n<li>\n<p class=\"entry-title\"><a href=\"https:\/\/www.couchbase.com\/blog\/es\/elastic-microservices-with-kubernetes-and-spring-boot\/\">Creaci\u00f3n de microservicios el\u00e1sticos con Kubernetes y Spring Boot desde cero<\/a><\/p>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>","protected":false},"excerpt":{"rendered":"<p>OpenShift\u00a0is a platform as a service (PaaS) from Red Hat on top of Docker containers and Kubernetes. It is an open source container application platform by Red Hat based on Docker containers and the Kubernetes container cluster manager for\u00a0enterprise app [&hellip;]<\/p>","protected":false},"author":8754,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816],"tags":[2022],"ppma_author":[9059],"class_list":["post-5336","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server","tag-openshift"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.5 (Yoast SEO v26.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Couchbase on OpenShift in Action - The Couchbase Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/es\/couchbase-on-openshift-in-action\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Couchbase on OpenShift in Action\" \/>\n<meta property=\"og:description\" content=\"OpenShift\u00a0is a platform as a service (PaaS) from Red Hat on top of Docker containers and Kubernetes. It is an open source container application platform by Red Hat based on Docker containers and the Kubernetes container cluster manager for\u00a0enterprise app [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/couchbase-on-openshift-in-action\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-18T12:59:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-10-12T11:02:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2022\/11\/couchbase-nosql-dbaas.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1800\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Denis Rosa, Developer Advocate, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@deniswsrosa\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Denis Rosa, Developer Advocate, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/\"},\"author\":{\"name\":\"Denis Rosa, Developer Advocate, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/fe3c5273e805e72a5294611a48f62257\"},\"headline\":\"Couchbase on OpenShift in Action\",\"datePublished\":\"2018-06-18T12:59:02+00:00\",\"dateModified\":\"2018-10-12T11:02:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/\"},\"wordCount\":841,\"commentCount\":3,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"openshift\"],\"articleSection\":[\"Couchbase Server\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/\",\"name\":\"Couchbase on OpenShift in Action - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2018-06-18T12:59:02+00:00\",\"dateModified\":\"2018-10-12T11:02:08+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Couchbase on OpenShift in Action\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/fe3c5273e805e72a5294611a48f62257\",\"name\":\"Denis Rosa, Developer Advocate, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/be0716f6199cfb09417c92cf7a8fa8d6\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f8d1f5c13115122cab89d0f229b904480bfe20d3dfbb093fe9734cda5235d419?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f8d1f5c13115122cab89d0f229b904480bfe20d3dfbb093fe9734cda5235d419?s=96&d=mm&r=g\",\"caption\":\"Denis Rosa, Developer Advocate, Couchbase\"},\"description\":\"Denis Rosa is a Developer Advocate for Couchbase and lives in Munich - Germany. He has a solid experience as a software engineer and speaks fluently Java, Python, Scala and Javascript. Denis likes to write about search, Big Data, AI, Microservices and everything else that would help developers to make a beautiful, faster, stable and scalable app.\",\"sameAs\":[\"https:\/\/x.com\/deniswsrosa\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/denis-rosa\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Couchbase on OpenShift in Action - The Couchbase Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/es\/couchbase-on-openshift-in-action\/","og_locale":"es_MX","og_type":"article","og_title":"Couchbase on OpenShift in Action","og_description":"OpenShift\u00a0is a platform as a service (PaaS) from Red Hat on top of Docker containers and Kubernetes. It is an open source container application platform by Red Hat based on Docker containers and the Kubernetes container cluster manager for\u00a0enterprise app [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/es\/couchbase-on-openshift-in-action\/","og_site_name":"The Couchbase Blog","article_published_time":"2018-06-18T12:59:02+00:00","article_modified_time":"2018-10-12T11:02:08+00:00","og_image":[{"width":1800,"height":630,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2022\/11\/couchbase-nosql-dbaas.png","type":"image\/png"}],"author":"Denis Rosa, Developer Advocate, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@deniswsrosa","twitter_misc":{"Written by":"Denis Rosa, Developer Advocate, Couchbase","Est. reading time":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/"},"author":{"name":"Denis Rosa, Developer Advocate, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/fe3c5273e805e72a5294611a48f62257"},"headline":"Couchbase on OpenShift in Action","datePublished":"2018-06-18T12:59:02+00:00","dateModified":"2018-10-12T11:02:08+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/"},"wordCount":841,"commentCount":3,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["openshift"],"articleSection":["Couchbase Server"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/","url":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/","name":"Couchbase on OpenShift in Action - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2018-06-18T12:59:02+00:00","dateModified":"2018-10-12T11:02:08+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-on-openshift-in-action\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Couchbase on OpenShift in Action"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"El blog de Couchbase","description":"Couchbase, la base de datos NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"El blog de Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/fe3c5273e805e72a5294611a48f62257","name":"Denis Rosa, Defensor del Desarrollador, Couchbase","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/be0716f6199cfb09417c92cf7a8fa8d6","url":"https:\/\/secure.gravatar.com\/avatar\/f8d1f5c13115122cab89d0f229b904480bfe20d3dfbb093fe9734cda5235d419?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f8d1f5c13115122cab89d0f229b904480bfe20d3dfbb093fe9734cda5235d419?s=96&d=mm&r=g","caption":"Denis Rosa, Developer Advocate, Couchbase"},"description":"Denis Rosa es un Developer Advocate para Couchbase y vive en Munich - Alemania. Tiene una s\u00f3lida experiencia como ingeniero de software y habla con fluidez Java, Python, Scala y Javascript. A Denis le gusta escribir sobre b\u00fasqueda, Big Data, AI, Microservicios y todo lo que pueda ayudar a los desarrolladores a hacer una aplicaci\u00f3n hermosa, m\u00e1s r\u00e1pida, estable y escalable.","sameAs":["https:\/\/x.com\/deniswsrosa"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/denis-rosa\/"}]}},"authors":[{"term_id":9059,"user_id":8754,"is_guest":0,"slug":"denis-rosa","display_name":"Denis Rosa, Developer Advocate, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/f8d1f5c13115122cab89d0f229b904480bfe20d3dfbb093fe9734cda5235d419?s=96&d=mm&r=g","author_category":"","last_name":"Rosa, Developer Advocate, Couchbase","first_name":"Denis","job_title":"","user_url":"","description":"Denis Rosa es un Developer Advocate para Couchbase y vive en Munich - Alemania. Tiene una s\u00f3lida experiencia como ingeniero de software y habla con fluidez Java, Python, Scala y Javascript. A Denis le gusta escribir sobre b\u00fasqueda, Big Data, AI, Microservicios y todo lo que pueda ayudar a los desarrolladores a hacer una aplicaci\u00f3n hermosa, m\u00e1s r\u00e1pida, estable y escalable."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/5336","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/users\/8754"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=5336"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/5336\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=5336"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=5336"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=5336"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=5336"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}