{"id":7194,"date":"2019-07-11T10:00:53","date_gmt":"2019-07-11T17:00:53","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=7194"},"modified":"2025-06-13T21:33:42","modified_gmt":"2025-06-14T04:33:42","slug":"monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/","title":{"rendered":"Monitorizaci\u00f3n Prometheus de Couchbase Mobile Kubernetes Cluster"},"content":{"rendered":"<p><em>ACTUALIZACI\u00d3N: A partir de la versi\u00f3n 2.8, Sync Gateway <a href=\"https:\/\/docs.couchbase.com\/sync-gateway\/current\/rest-api-metrics.html?ref=blog#api-explorer\" rel=\"noopener\" target=\"_blank\">incluye soporte integrado para el exportador Prometheus<\/a>. Las estad\u00edsticas se exportan en formato compatible con Prometheus a trav\u00e9s del punto final de m\u00e9tricas. Esto implica que ya no es necesario tener un exportador separado. Lee la documentaci\u00f3n de Couchbase para m\u00e1s detalles sobre <a href=\"https:\/\/www.couchbase.com\/blog\/es\/monitoring-and-visualization-of-couchbase-sync-gateway-with-prometheus-and-grafana\/?ref=blog\" rel=\"noopener\" target=\"_blank\">supervisi\u00f3n de Sync Gateway v2.8+ mediante el nuevo punto final<\/a>.<\/em><\/p>\n<p>En <a href=\"https:\/\/www.couchbase.com\/blog\/es\/couchbase-mobile-2-5-released\/?ref=blog\" rel=\"noopener\" target=\"_blank\">Couchbase M\u00f3vil 2.5<\/a> introdujo una amplia <a href=\"https:\/\/docs.couchbase.com\/sync-gateway\/current\/stats-monitoring.html?ref=blog\" rel=\"noopener\" target=\"_blank\">informes estad\u00edsticos<\/a> capacidades en el <a href=\"https:\/\/docs.couchbase.com\/sync-gateway\/current\/introduction.html?ref=blog\" rel=\"noopener\" target=\"_blank\">Pasarela de sincronizaci\u00f3n<\/a>. Las estad\u00edsticas proporcionan informaci\u00f3n clave sobre la salud de su despliegue Couchbase Mobile y constituye una parte integral de cualquier despliegue.<\/p>\n<p>Esta es una gu\u00eda paso a paso para utilizar <a href=\"https:\/\/prometheus.io\/?ref=hello-from-couchbase\" rel=\"noopener\" target=\"_blank\">Prometeo<\/a> (supervisi\u00f3n y alerta de c\u00f3digo abierto) con cl\u00fasteres Sync Gateway en <a href=\"https:\/\/www.couchbase.com\/blog\/es\/couchbase-sync-gateway-on-kubernetes\/?ref=blog\" rel=\"noopener\" target=\"_blank\">Kubernetes<\/a>. Utilizaremos <a href=\"https:\/\/grafana.com\/?ref=hello-from-couchbase\" rel=\"noopener\" target=\"_blank\">Grafana<\/a> para visualizar las estad\u00edsticas.<\/p>\n<p>A menudo se afirma que Prometheus y Kubernetes comparten un \"<em>ascendencia espiritual<\/em>\". Ambos proyectos est\u00e1n alojados en la <a href=\"https:\/\/www.cncf.io\/?ref=hello-from-couchbase\" rel=\"noopener\" target=\"_blank\">Fundaci\u00f3n para la Computaci\u00f3n Nativa en la Nube<\/a>. Se rigen por objetivos de dise\u00f1o comunes, lo que hace que Prometheus sea muy adecuado para supervisar las implementaciones de Kubernetes.<\/p>\n<p>En <a href=\"https:\/\/www.couchbase.com\/blog\/es\/monitoring-sync-gateway-prometheus-grafana\/?ref=blog\" rel=\"noopener\" target=\"_blank\">un post relacionado<\/a>En el art\u00edculo anterior, hablamos de la configuraci\u00f3n de la monitorizaci\u00f3n con Prometheus en un cl\u00faster de Couchbase Mobile en un entorno sin Kubernetes. Si hab\u00edas seguido ese post, puedes saltarte las secciones iniciales y pasar directamente a la secci\u00f3n <em>Arquitectura de implantaci\u00f3n<\/em> secci\u00f3n.<\/p>\n<h2 id=\"background\">Fondo<\/h2>\n<h3 id=\"syncgatewaystatsreporting\">Informes estad\u00edsticos de Sync Gateway<\/h3>\n<p>Las estad\u00edsticas de Sync Gateway se presentan en formato JSON y est\u00e1n disponibles a trav\u00e9s de la funci\u00f3n <a href=\"https:\/\/docs.couchbase.com\/sync-gateway\/current\/rest_api_admin_static.html#get__expvar\" rel=\"noopener\" target=\"_blank\">_expvar<\/a> a trav\u00e9s de Sync Gateway <a href=\"https:\/\/docs.couchbase.com\/sync-gateway\/current\/rest_api_admin_static.html\" rel=\"noopener\" target=\"_blank\">Admin REST<\/a> interfaz.<br \/>\nEstas son las categor\u00edas de estad\u00edsticas de las que se informa.<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2019\/06\/stats_2.5_category-1.png\" alt=\"\" \/><\/p>\n<h3 id=\"prometheus\">Prometeo<\/h3>\n<p><a href=\"https:\/\/prometheus.io\">Prometeo<\/a> es una plataforma de alerta y monitorizaci\u00f3n de sistemas de c\u00f3digo abierto. En su n\u00facleo, <strong>Servidor Prometheus<\/strong> es responsable de sondear los \"objetivos de Prometheus\" para obtener estad\u00edsticas y almacenarlas como datos de series temporales. Los objetivos Prometheus se configuran est\u00e1ticamente o pueden ser descubiertos por Prometheus.<\/p>\n<h3 id=\"grafana\">Grafana<\/h3>\n<p><a href=\"https:\/\/grafana.com\/grafana\">Grafana<\/a> es una plataforma de alerta y visualizaci\u00f3n de datos de c\u00f3digo abierto. Admite Prometheus como fuente de datos y puede utilizarse para crear cuadros de mando completos.<\/p>\n<h2 id=\"introducingtheprometheussyncgatewayexporter\">Presentaci\u00f3n del exportador de Prometheus Sync Gateway<\/h2>\n<p>Para que Prometheus pueda supervisar el Sync Gateway, necesitamos un \"objetivo Prometheus\" correspondiente al Sync Gateway. Este objetivo es el <strong>Exportador de Sync Gateway<\/strong>en lo sucesivo denominado \"el Exportador\". En pocas palabras, el <a href=\"https:\/\/prometheus.io\/docs\/instrumenting\/exporters\/\">Exportador<\/a> se encarga de exportar las estad\u00edsticas de Sync Gateway a las m\u00e9tricas de Prometheus.<\/p>\n<figure><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2019\/06\/exporter.png\" alt=\"\" \/><\/figure>\n<h2 id=\"deploymentarchitecture\">Arquitectura de implantaci\u00f3n<\/h2>\n<p>Si unimos todo esto, un despliegue t\u00edpico tiene el siguiente aspecto:<\/p>\n<figure><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2019\/07\/kubernetes_prometheus_sgw.png\" alt=\"\" \/><\/figure>\n<p>Vale... parece mucho m\u00e1s complejo de lo que es en realidad. De hecho, es bastante sencillo:<\/p>\n<p><strong>Contenedor exportador de Sync Gateway<\/strong><\/p>\n<p>Los contenedores Exporter y Sync Gateway deben estar ubicados en el mismo pod utilizando <a href=\"https:\/\/kubernetes.io\/blog\/2015\/06\/the-distributed-system-toolkit-patterns\/?ref=hello-from-couchbase\" rel=\"noopener\" target=\"_blank\">el patr\u00f3n sidecar<\/a>. La API REST de Sync Gateway Admin es, por defecto, s\u00f3lo <a href=\"https:\/\/docs.couchbase.com\/sync-gateway\/current\/config-properties.html?ref=blog#adminInterface\" rel=\"noopener\" target=\"_blank\">expuesto<\/a> en localhost. Esta configuraci\u00f3n tambi\u00e9n se recomienda encarecidamente en entornos de producci\u00f3n. Dado que el exportador consulta la API de administraci\u00f3n de Sync Gateway para obtener estad\u00edsticas, debe estar en el mismo host\/nodo que Sync Gateway.<\/p>\n<p>Adem\u00e1s, las estad\u00edsticas de Sync Gateway se notifican por nodo. Por lo tanto, en un cl\u00faster de dos o m\u00e1s nodos de Sync Gateway, cada nodo de Sync Gateway debe tener su propio exportador.<\/p>\n<p><strong>Servicio Exportador de Sync Gateway<\/strong><\/p>\n<p>Los pods de Sync Gateway que contienen el exportador deben estar expuestos a otros servicios del cl\u00faster. En Kubernetes, esto se hace a trav\u00e9s de un comando <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/services-networking\/service\/\" rel=\"noopener\" target=\"_blank\">Servicio de red Kubernetes<\/a>. El servicio exportador de Sync Gateway expone los pods de Sync Gateway y los hace accesibles al servicio Prometheus.<\/p>\n<p><strong>Operador de Prometheus<\/strong><\/p>\n<p>Sondea continuamente el exportador en busca de estad\u00edsticas, que a su vez sondea el punto final REST de Sync Gateway. El servidor utiliza las reglas definidas en el <em>rules.yaml<\/em> para enviar alertas al <strong>Gestor de alertas<\/strong>. La forma m\u00e1s sencilla de desplegar Prometheus en el cl\u00faster de Kubernetes es utilizando el comando <a href=\"https:\/\/kubernetes.io\/blog\/2015\/06\/the-distributed-system-toolkit-patterns\/\" rel=\"noopener\" target=\"_blank\">Operador de Prometheus<\/a>. El Operador de Prometheus se encarga de desplegar la pila de Prometheus incluyendo el Gestor de Alertas y Grafana.<br \/>\nEl operador act\u00faa sobre una serie de definiciones de recursos personalizadas (CRD). La m\u00e1s interesante es la <strong>Monitor de servicio<\/strong>. El monitor de servicios se encarga de definir c\u00f3mo se van a supervisar los servicios. En este caso, se supervisan los pods de Sync Gateway que se exponen a trav\u00e9s del servicio Sync Gateway Exporter.<\/p>\n<p><strong>Grafana<\/strong><\/p>\n<p>El servicio sondea el servidor Prometheus en busca de estad\u00edsticas y las representa gr\u00e1ficamente en un panel basado en web al que se puede acceder a trav\u00e9s del navegador web. Para acceder al panel de Grafana desde fuera del cl\u00faster, tendr\u00e1 que utilizar el reenv\u00edo de puertos. Tambi\u00e9n podr\u00eda exponerlo utilizando NodePort o el equivalente en Kubernetes. De nuevo, Prometheus Operator deber\u00eda encargarse de desplegarlo.<\/p>\n<h2 id=\"exportersourcecode\">C\u00f3digo fuente del exportador<\/h2>\n<p>Sync Gateway Exporter es de c\u00f3digo abierto <a href=\"https:\/\/github.com\/couchbaselabs\" rel=\"noopener\" target=\"_blank\"><em>couchbaselabs<\/em><\/a> y disponible en GitHub. Es compatible con Couchbase Sync Gateway 2.5+. Por ello, aunque nos esforzaremos por mantenerlo actualizado con la \u00faltima versi\u00f3n de Sync Gateway, no podemos garantizarlo. La buena noticia es que es de c\u00f3digo abierto e incluye detallada <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\/blob\/master\/docs\/develop\/adding-new-metrics.md\" rel=\"noopener\" target=\"_blank\">instrucciones sobre c\u00f3mo ampliarlo para que admita estad\u00edsticas adicionales<\/a>.<\/p>\n<p>Clona el c\u00f3digo fuente de Exporter de Github y actualiza los subm\u00f3dulos relevantes. El repositorio incluye todos los <em>yaml<\/em> que se utilizar\u00e1n para la implantaci\u00f3n.<\/p>\n<pre><code class=\"bash\">git clone https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\r\n\r\ngit submodule update --init --rebase --remote --recursive<\/code><\/pre>\n<p>En <em>yaml<\/em> Los archivos de configuraci\u00f3n a los que se hace referencia en este post est\u00e1n disponibles en la carpeta \"kubernetes\".<\/p>\n<pre><code class=\"bash\">cd \/path\/to\/cloned\/exporter\/source\/kubernetes<\/code><\/pre>\n<h2 id=\"installation\">Instalaci\u00f3n<\/h2>\n<p>En el resto del post, vamos a caminar a trav\u00e9s de los pasos para configurar el monitoreo en un cl\u00faster Couchbase Mobile en el cl\u00faster Kubernetes. Las instrucciones aqu\u00ed descritas deber\u00edan aplicarse a cualquier despliegue gestionado de Kubernetes.<\/p>\n<h3 id=\"deployingcouchbaseservercluster\">Despliegue del cl\u00faster de servidores Couchbase<\/h3>\n<p>Siga las instrucciones <a href=\"https:\/\/docs.couchbase.com\/operator\/current\/prerequisite-and-setup.html?ref=blog\" rel=\"noopener\" target=\"_blank\">aqu\u00ed<\/a> para desplegar la \u00faltima versi\u00f3n del cluster de Couchbase Server usando Couchbase Autonomous Operator.<\/p>\n<h3 id=\"deployingsyncgatewaycluster\">Despliegue del cl\u00faster de Sync Gateway<\/h3>\n<p>Siga las instrucciones <a href=\"https:\/\/docs.couchbase.com\/operator\/current\/tutorial-sync-gateway.html\" rel=\"noopener\" target=\"_blank\">aqu\u00ed<\/a> para desplegar un cl\u00faster de Sync Gateway en Kubernetes<\/p>\n<h3 id=\"deployingprometheusandgrafana\">Despliegue de Prometheus y Grafana<\/h3>\n<p>Existen varios <a href=\"https:\/\/prometheus.io\/docs\/prometheus\/latest\/installation\/\" rel=\"noopener\" target=\"_blank\">opciones<\/a> para desplegar Prometheus. De hecho, la mayor\u00eda de los servicios gestionados de Kubernetes pueden tener opciones<br \/>\nUna de las opciones m\u00e1s sencillas es desplegar utilizando la funci\u00f3n <a href=\"https:\/\/github.com\/coreos\/prometheus-operator\" rel=\"noopener\" target=\"_blank\">Operador de Prometheus<\/a> utilizando <a href=\"https:\/\/github.com\/helm\/charts\/tree\/master\/stable\/prometheus-operator\" rel=\"noopener\" target=\"_blank\">Tim\u00f3n<\/a>.<\/p>\n<p>El gr\u00e1fico de Prometheus desplegar\u00e1 toda la pila de monitorizaci\u00f3n, incluido el servidor de Prometheus, Grafana, Alert Manager, etc.<\/p>\n<h4 id=\"installinghelm\">Instalaci\u00f3n de Helm<\/h4>\n<p>Si ya tiene Helm funcionando en su cluster, omita este paso<\/p>\n<pre><code class=\"bash\">kubectl create serviceaccount --namespace kube-system tiller\r\n\r\nkubectl create clusterrolebinding tiller-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube-system:tiller\r\nhelm init --service-account tiller --upgrade<\/code><\/pre>\n<h4 id=\"installingprometheus\">Instalaci\u00f3n de Prometheus<\/h4>\n<p>Instale el Operador Prometheus ejecutando este comando desde la ra\u00edz del repositorio clonado.<\/p>\n<ul>\n<li>Cree un nuevo archivo de configuraci\u00f3n llamado <em>valores.yaml<\/em> utilizando un editor de texto. La clave es la contrase\u00f1a de administrador por defecto que se utiliza para iniciar sesi\u00f3n en el panel de control de Grafana. Puedes cambiarla despu\u00e9s del inicio de sesi\u00f3n inicial.<\/li>\n<li>En <em>valores.yaml<\/em> tambi\u00e9n est\u00e1 disponible en <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\/blob\/master\/kubernetes\/prometheus\/values.yaml\" rel=\"noopener\" target=\"_blank\">repositorio de fuentes<\/a>.<\/li>\n<\/ul>\n<pre><code class=\"yaml\">prometheus:\r\n  prometheusSpec:\r\n    replicas: 1\r\n    image:\r\n      tag: v2.10.0\r\n    serviceMonitorSelectorNilUsesHelmValues: false\r\n    serviceMonitorNamespaceSelector: {}\r\n    serviceMonitorSelector: {}\r\n    ruleSelectorNilUsesHelmValues: false\r\n    ruleNamespaceSelector: {}\r\n    ruleSelector: {}\r\n\r\nprometheusOperator:\r\n  image:\r\n    tag: v0.30.0\r\n\r\ngrafana:\r\n  adminPassword: admin<\/code><\/pre>\n<ul>\n<li>Despliegue del Cuadro de Mando<br \/>\nEl gr\u00e1fico Prometheus se despliega en el <em>prometheus<\/em> espacio de nombres<\/li>\n<\/ul>\n<pre class=\"\"><code class=\"bash\">helm install --namespace prometheus --name prom stable\/prometheus-operator -f values.yaml --version 5.10.4<\/code><\/pre>\n<ul>\n<li>Verificar la instalaci\u00f3n<br \/>\nLa salida deber\u00eda mostrar los Pods correspondientes a la pila Prometheus<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl -n prometheus get pods\r\n\r\nNAME                                                   READY     STATUS    RESTARTS   AGE\r\nalertmanager-prom-prometheus-operator-alertmanager-0   2\/2       Running   0          27d\r\nprom-grafana-6459ffb669-6qzht                          2\/2       Running   9          27d\r\nprom-kube-state-metrics-55bc76f8c4-dppcz               1\/1       Running   0          27d\r\nprom-prometheus-node-exporter-6j9lz                    1\/1       Running   0          27d\r\nprom-prometheus-node-exporter-7wd68                    1\/1       Running   0          27d\r\nprom-prometheus-node-exporter-7wqgz                    1\/1       Running   0          27d\r\nprom-prometheus-operator-operator-6b48475c74-srwwl     1\/1       Running   0          27d\r\nprometheus-prom-prometheus-operator-prometheus-0       3\/3       Running   0          27d<\/code><\/pre>\n<h3 id=\"deployingsyncgatewayexporter\">Implantaci\u00f3n de Sync Gateway Exporter<\/h3>\n<p>Con la pila de monitorizaci\u00f3n de Prometheus configurada, es hora de instalar el Exportador para la monitorizaci\u00f3n.<\/p>\n<p>El contenedor Exporter se desplegar\u00e1 en el mismo pod que el Sync Gateway utilizando el patr\u00f3n de contenedor sidecar. Para ello, actualizaremos el cl\u00faster Sync Gateway <a href=\"https:\/\/docs.couchbase.com\/operator\/current\/tutorial-sync-gateway.html\" rel=\"noopener\" target=\"_blank\">Despliegue <\/a> para incluir el despliegue del contenedor Exportador con <code>couchbasesamples\/sync-gateway-prometheus-exporter:latest<\/code> disponible en Docker Hub.<\/p>\n<ul>\n<li>Abra el <a href=\"https:\/\/docs.couchbase.com\/operator\/current\/tutorial-sync-gateway.html\" rel=\"noopener\" target=\"_blank\">sgw-despliegue.yaml<\/a> en un editor de texto y actual\u00edcelo para incluir el contenedor Exportador como se muestra a continuaci\u00f3n.<\/li>\n<\/ul>\n<pre><code class=\"yaml\">apiVersion: extensions\/v1beta1\r\nkind: Deployment\r\nmetadata:\r\n  name: sync-gateway\r\nspec:\r\n  replicas: 1\r\n  template:\r\n    metadata:\r\n      labels:\r\n        app: sync-gateway\r\n    spec:\r\n     affinity:\r\n        podAntiAffinity:\r\n          requiredDuringSchedulingIgnoredDuringExecution:\r\n          - labelSelector:\r\n              matchExpressions:\r\n              - key: app\r\n                operator: In\r\n                values:\r\n                - sync-gateway\r\n             topologyKey: \"kubernetes.io\/hostname\"\r\n      containers:\r\n        - name: sync-gateway\r\n          image: couchbase\/sync-gateway:2.6.0-enterprise\r\n          args: [\"\/sync-gateway-config\/sgw-config.json\"]\r\n          volumeMounts:\r\n            - name: sgw-config-volume\r\n              mountPath: \/sync-gateway-config\r\n              readOnly: true\r\n          env:\r\n            - name: GOMAXPROCS\r\n              value: \"1\"\r\n          resources:\r\n            requests:\r\n              cpu: 250m\r\n            limits:\r\n              cpu: 250m\r\n        - name: exporter\r\n          image: couchbasesamples\/sync-gateway-prometheus-exporter:latest\r\n          args: [\"--log.level=info\"]\r\n          env:\r\n            - name: GOMAXPROCS\r\n              value: \"1\"\r\n          ports:\r\n          - name: http\r\n            containerPort: 9421\r\n          resources:\r\n            requests:\r\n              cpu: 100m\r\n            limits:\r\n              cpu: 100m\r\n      volumes:\r\n        - name: sgw-config-volume\r\n          secret:\r\n            secretName: sgw-config<\/code><\/pre>\n<p>Si tiene un nodo de importaci\u00f3n Sync Gateway, tendr\u00e1 que actualizar <a href=\"https:\/\/docs.couchbase.com\/sync-gateway\/current\/_attachments\/kubernetes\/sgw-deployment-import.yaml?ref=blog\" rel=\"noopener\" target=\"_blank\">sgw-deployment-import.yaml<\/a> tambi\u00e9n.<\/p>\n<ul>\n<li>Una vez actualizado el archivo yaml, apl\u00edquelo a su cl\u00faster<\/li>\n<\/ul>\n<pre><code class=\"bash\">   kubectl apply -f sgw-deployment.yaml<\/code><\/pre>\n<ul>\n<li>Compruebe el estado de la implantaci\u00f3n. Este cl\u00faster de muestra incluye dos nodos Sync Gateway.<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl get pods\r\n\r\nNAME                                           READY     STATUS    RESTARTS   AGE\r\ncb-example-0000                                1\/1       Running   0          35d\r\ncb-example-0001                                1\/1       Running   0          35d\r\ncb-example-0002                                1\/1       Running   0          35d\r\ncouchbase-operator-84cd9f6598-6mm8r            1\/1       Running   4          56d\r\ncouchbase-operator-admission-6c974bf6f-77qmk   1\/1       Running   0          56d\r\nsync-gateway-54b46fdbc6-2c56l                  2\/2       Running   0          29d\r\nsync-gateway-import-b448f69dd-wjd8g            2\/2       Running   0          29d<\/code><\/pre>\n<ul>\n<li>Puede ver los detalles del pod Sync Gateway y comprobar que contiene el contenedor exportador<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl top pod  sync-gateway-54b46fdbc6-2c56l --containers\r\n\r\nPOD                             NAME           CPU(cores)   MEMORY(bytes)   \r\nsync-gateway-54b46fdbc6-2c56l   sync-gateway   140m         20Mi            \r\nsync-gateway-54b46fdbc6-2c56l   exporter       0m           3Mi   \r\n<\/code><\/pre>\n<h3 id=\"deployingsyncgatewayexporterservice\">Implantaci\u00f3n del servicio exportador de Sync Gateway<\/h3>\n<p>A continuaci\u00f3n, desplegamos un servicio Kubernetes que expone los nodos Sync Gateway y los pone a disposici\u00f3n de otros nodos del cl\u00faster.<\/p>\n<ul>\n<li>Cree un nuevo archivo de configuraci\u00f3n llamado <em>svc.yaml<\/em> utilizando un editor de texto. El sitio <em>svc.yaml<\/em> tambi\u00e9n est\u00e1 disponible en <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\/blob\/master\/kubernetes\/sgw\/svc.yaml\" rel=\"noopener\" target=\"_blank\">repositorio de fuentes<\/a>.<\/li>\n<\/ul>\n<pre><code class=\"yaml\">apiVersion: v1\r\nkind: Service\r\nmetadata:\r\n  name: sync-gateway-exporter\r\n  namespace: couchbase\r\n  labels:\r\n    app: sync-gateway\r\nspec:\r\n  ports:\r\n    - port: 9421\r\n      protocol: TCP\r\n      targetPort: http\r\n      name: http\r\n  selector:\r\n    app: sync-gateway\r\n  type: ClusterIP<\/code><\/pre>\n<ul>\n<li>Despliegue del servicio<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl apply -f svc.yaml<\/code><\/pre>\n<ul>\n<li>Verifique la instalaci\u00f3n. El punto clave a tener en cuenta en la salida es que el servicio apunta a los dos puntos finales de Sync Gateway.<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl describe service sync-gateway-exporter\r\n\r\n\r\nName:              sync-gateway-exporter\r\nNamespace:         default\r\nLabels:            app=sync-gateway\r\nAnnotations:       kubectl.kubernetes.io\/last-applied-configuration={\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app\":\"sync-gateway\"},\"name\":\"sync-gateway-exporter\",\"namespace\":\"default\"},...\r\nSelector:          app=sync-gateway\r\nType:              ClusterIP\r\nIP:                10.15.254.14\r\nPort:              http  9421\/TCP\r\nTargetPort:        http\/TCP\r\nEndpoints:         10.12.0.41:9421,10.12.2.42:9421\r\nSession Affinity:  None\r\nEvents:            &lt;none&gt;\r\n<\/code><\/pre>\n<h3 id=\"settingupprometheusservicemonitor\">Configuraci\u00f3n de Prometheus Service Monitor<\/h3>\n<p>Para que Prometheus descubra el servicio Sync Gateway Exporter, tendremos que definir una directiva <em>ServiceMonitor<\/em>. Como ya se ha dicho, el Prometheus <a href=\"https:\/\/github.com\/coreos\/prometheus-operator#customresourcedefinitions\" rel=\"noopener\" target=\"_blank\"><em>ServiceMonitor<\/em><\/a> especifica c\u00f3mo deben supervisarse los servicios. Prometheus Operator genera la configuraci\u00f3n de raspado de Prometheus bas\u00e1ndose en la definici\u00f3n.<\/p>\n<ul>\n<li>Cree un nuevo archivo de configuraci\u00f3n llamado <em>servicemonitor.yaml<\/em> utilizando un editor de texto. El sitio <em>servicemonitor.yaml<\/em> tambi\u00e9n est\u00e1 disponible en <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\/blob\/master\/kubernetes\/sgw\/servicemonitor.yaml\" rel=\"noopener\" target=\"_blank\">repositorio de fuentes<\/a>.<\/li>\n<\/ul>\n<pre><code class=\"yaml\">apiVersion: monitoring.coreos.com\/v1\r\nkind: ServiceMonitor\r\nmetadata:\r\n  name: sync-gateway\r\n  namespace: default\r\n  labels:\r\n    app: sync-gateway\r\nspec:\r\n  jobLabel: sync-gateway\r\n  selector:\r\n    matchLabels:\r\n      app: sync-gateway\r\n  namespaceSelector:\r\n    matchNames:\r\n      - default\r\n  endpoints:\r\n  - port: http\r\n    # comment following lines to use the pod IP instead of its name as instance:\r\n    relabelings:\r\n    - sourceLabels: [__meta_kubernetes_pod_name]\r\n      separator: ;\r\n      regex: (.*)\r\n      targetLabel: instance\r\n      replacement: $1\r\n      action: replace<\/code><\/pre>\n<ul>\n<li>Despliegue del servicio<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl apply -f servicemonitor.yaml<\/code><\/pre>\n<h3 id=\"configuringprometheusalerts\">Configuraci\u00f3n de las alertas de Prometheus<\/h3>\n<p>Este paso es opcional y s\u00f3lo es necesario si desea que Prometheus Alerting Manager env\u00ede alertas. Las alertas se basan en un conjunto de reglas de alerta configuradas:<\/p>\n<ul>\n<li>Una muestra <em>rules.yaml<\/em> est\u00e1 disponible en <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\/blob\/master\/kubernetes\/sgw\/rules.yaml\" rel=\"noopener\" target=\"_blank\">repositorio de fuentes<\/a>. Incluye algunas reglas de ejemplo definidas por este <a href=\"https:\/\/prometheus.io\/docs\/prometheus\/latest\/configuration\/alerting_rules\/\" rel=\"noopener\" target=\"_blank\">especificaci\u00f3n<\/a>. Puedes editarlo para adaptarlo a tu entorno.<\/li>\n<li>Aplicar las normas<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl apply -f rules.yaml<\/code><\/pre>\n<h3 id=\"tyingitalltogether\">Unirlo todo<\/h3>\n<h4 id=\"verifyingprometheusmonitoring\">Verificaci\u00f3n de la supervisi\u00f3n de Prometheus<\/h4>\n<p>Ahora verificaremos que el Prometheus ServiceMonitor es capaz de acceder y monitorizar el servicio Sync Gateway.<\/p>\n<ul>\n<li>Habilite el reenv\u00edo de puertos desde su m\u00e1quina local al servidor Prometheus remoto en el puerto 9090. Esto s\u00f3lo es necesario para realizar pruebas. No es necesario habilitar el reenv\u00edo de puertos para las operaciones normales.<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl -n prometheus port-forward svc\/prom-prometheus-operator-prometheus 9090:9090<\/code><\/pre>\n<p>Acceda a la webUI de Prometheus en su navegador local<\/p>\n<pre><code class=\"bash\">open https:\/\/localhost:9090<\/code><\/pre>\n<p>Si todo va bien, deber\u00eda ver los nodos de Sync Gateway Exporter listados en el <em>Objetivos<\/em> men\u00fa<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2019\/07\/kubernetes_prometheus.gif\" alt=\"\" \/><\/p>\n<h4 id=\"verifyinggrafana\">Verificaci\u00f3n de Grafana<\/h4>\n<ul>\n<li>Habilite el reenv\u00edo de puertos desde su m\u00e1quina local al servidor remoto de Grafana.<\/li>\n<\/ul>\n<pre><code class=\"bash\">kubectl -n prometheus port-forward svc\/prom-grafana 3000:80<\/code><\/pre>\n<ul>\n<li>Acceda a la webUI del panel de control de Grafana en su navegador local.<\/li>\n<\/ul>\n<pre><code class=\"bash\">open https:\/\/localhost:3000<\/code><\/pre>\n<ul>\n<li>Inicie sesi\u00f3n con las credenciales predeterminadas de \"admin\" y la contrase\u00f1a de \"admin\". Puede cambiarla despu\u00e9s del inicio de sesi\u00f3n inicial. El siguiente paso es configurarlo con el panel de Sync Gateway<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2019\/06\/granafa_login-1.png\" alt=\"\" \/><\/li>\n<li>Un cuadro de mandos por defecto \"Couchbase Sync Gateway\" llamado <code>salpicadero.jsonnet<\/code> est\u00e1 disponible en <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\/blob\/master\/grafana\/dashboard.jsonnet\" rel=\"noopener\" target=\"_blank\">repositorio de fuentes<\/a> como <a href=\"https:\/\/jsonnet.org\" rel=\"noopener\" target=\"_blank\">jsonnet<\/a> archivo.<\/li>\n<li>El siguiente paso ser\u00eda a\u00f1adir \"Prometheus\" como \"Fuente de datos\" e importar el archivo JSON \"Sync Gateway dashboard\" que se gener\u00f3 anteriormente. Puede hacer lo siguiente <a href=\"https:\/\/grafana.com\/docs\/reference\/export_import\/\" rel=\"noopener\" target=\"_blank\">manualmente<\/a> siguiendo las opciones del men\u00fa. Hemos simplificado este proceso y hemos proporcionado un <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-sync-gateway-exporter\/blob\/master\/scripts\/setup-grafana\" rel=\"noopener\" target=\"_blank\">script<\/a> \u00a1que har\u00e1 todo eso por ti!<br \/>\nEn primer lugar, aseg\u00farese de que el servicio Grafana se est\u00e1 ejecutando en el puerto 3000. Ejecute el script desde la ra\u00edz de su repositorio clonado utilizando el siguiente comando ejecutando <code>escriba a<\/code> en el <code>grafana-dev<\/code> objetivo. Esto hace lo siguiente:<\/p>\n<ul>\n<li>Regenera el <code>dashboard.json<\/code> salpicadero del <code>salpicadero.jsonnet<\/code> archivo<\/li>\n<li>Utiliza la API de Grafana para a\u00f1adir Prometheus como fuente de datos<\/li>\n<li>Utiliza la API de Grafana para cargar el <code>dashboard.json<\/code> generado en el paso anterior<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<pre><code class=\"bash\">make grafana-dev<\/code><\/pre>\n<h4>Estad\u00edsticas de Grafana<\/h4>\n<ul>\n<li>Una vez que el script se ejecute correctamente, debes actualizar la interfaz de usuario web de Grafana en tu navegador web. Ver\u00e1s el \"Couchbase Sync Gateway Dashboard\" en la lista de dashboards disponibles. El panel muestra todas las estad\u00edsticas reportadas por Sync Gateway. Puedes personalizar el panel.<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2019\/07\/kubernetes_grafana_dashboard-1-e1562797643593.png\" alt=\"\" \/><\/li>\n<li>Haz clic en \"Couchbase Sync Gateway Dashboard\" para ver las estad\u00edsticas. Puedes filtrarlas por Sync Gateway (si tienes m\u00e1s de una) o base de datos<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2019\/07\/kubernetes_grafana_stats-1-e1562797619887.png\" alt=\"\" \/><\/li>\n<\/ul>\n<p>Ya est\u00e1. Has configurado correctamente la monitorizaci\u00f3n de Couchbase Sync Gateway Kubernetes con Prometheus. Ahora puedes controlar las r\u00e9plicas con clientes Couchbase Lite y monitorizarlas.<\/p>\n<p>El panel por defecto de Sync Gateway es un punto de partida. Puede personalizar el panel editando el archivo <code>salpicadero.jsonnet<\/code> o directamente a trav\u00e9s de la interfaz de usuario de Grafana.<\/p>\n<h2 id=\"whatsnext\">El futuro<\/h2>\n<p>Prometheus es muy adecuado para supervisar las implantaciones de Kubernetes. Con Sync Gateway Exporter, puede exportar estad\u00edsticas de Sync Gateway a Prometheus y visualizarlas con herramientas de visualizaci\u00f3n como Grafana. Esto simplifica enormemente la supervisi\u00f3n de tus cl\u00fasteres de Couchbase Mobile.<\/p>\n<p>Adem\u00e1s del Exportador, hemos proporcionado un panel de control Grafana predeterminado que puedes personalizar. Adem\u00e1s de personalizar el panel en s\u00ed, tambi\u00e9n puedes personalizar las reglas para las alertas.<\/p>\n<p>Si tiene preguntas o comentarios, d\u00e9jelos a continuaci\u00f3n. O no dude en ponerse en contacto conmigo en Twitter <a href=\"https:\/\/twitter.com\/rajagp\" rel=\"noopener\" target=\"_blank\">@rajagp<\/a> o por correo electr\u00f3nico <a href=\"mailto:priya.rajagopal@couchbase.com\" rel=\"noopener\" target=\"_blank\">priya.rajagopal@couchbase.com<\/a>.  En\u00a0<a href=\"https:\/\/www.couchbase.com\/blog\/es\/forums\/?ref=blog\" rel=\"noopener\" target=\"_blank\">Foros de Couchbase<\/a> son otro buen lugar para plantear preguntas.<\/p>\n<h2 id=\"acknowledgements\">Agradecimientos<\/h2>\n<p>Me gustar\u00eda dar las gracias a <a href=\"https:\/\/github.com\/caarlos0\/\" rel=\"noopener\" target=\"_blank\">Carlos Becker<\/a> por su trabajo en la creaci\u00f3n de la primera versi\u00f3n de Sync Gateway Exporter.<\/p>\n<p>&nbsp;<\/p>","protected":false},"excerpt":{"rendered":"<p>UPDATE: Starting in v2.8, Sync Gateway includes built-in Prometheus exporter support. Stats are exported in Prometheus-compatible format through the metrics endpoint. This implies that there is no longer the need to have a separate exporter. Read the Couchbase Documentation for [&hellip;]<\/p>","protected":false},"author":1423,"featured_media":7208,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1815,9284,1810,2322,2334,2366],"tags":[1245,1413,2384,1261,1545,2383],"ppma_author":[8948],"class_list":["post-7194","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices-and-tutorials","category-couchbase-autonomous-operator","category-couchbase-mobile","category-kubernetes","category-monitoring","category-sync-gateway","tag-cloud","tag-github","tag-grafana","tag-json","tag-kubernetes","tag-prometheus"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.2 (Yoast SEO v26.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster<\/title>\n<meta name=\"description\" content=\"Follow this step-by-step guide to set up Prometheus for monitoring your Couchbase Sync Gateway \/ Mobile clusters when deployed on Kubernetes containers.\" \/>\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\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster\" \/>\n<meta property=\"og:description\" content=\"Follow this step-by-step guide to set up Prometheus for monitoring your Couchbase Sync Gateway \/ Mobile clusters when deployed on Kubernetes containers.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2019-07-11T17:00:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T04:33:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2048\" \/>\n\t<meta property=\"og:image:height\" content=\"1041\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Priya Rajagopal, Senior Director, Product Management\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@rajagp\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Priya Rajagopal, Senior Director, Product Management\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/\"},\"author\":{\"name\":\"Priya Rajagopal, Senior Director, Product Management\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c2da90e57717ee4970c48a87a131ac2c\"},\"headline\":\"Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster\",\"datePublished\":\"2019-07-11T17:00:53+00:00\",\"dateModified\":\"2025-06-14T04:33:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/\"},\"wordCount\":1922,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png\",\"keywords\":[\"cloud\",\"GitHub\",\"Grafana\",\"JSON\",\"kubernetes\",\"Prometheus\"],\"articleSection\":[\"Best Practices and Tutorials\",\"Couchbase Autonomous Operator\",\"Couchbase Mobile\",\"Kubernetes\",\"Monitoring\",\"Sync Gateway\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/\",\"name\":\"Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png\",\"datePublished\":\"2019-07-11T17:00:53+00:00\",\"dateModified\":\"2025-06-14T04:33:42+00:00\",\"description\":\"Follow this step-by-step guide to set up Prometheus for monitoring your Couchbase Sync Gateway \/ Mobile clusters when deployed on Kubernetes containers.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png\",\"width\":2048,\"height\":1041,\"caption\":\"couchbase sync gateway grafana stats\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster\"}]},{\"@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\/c2da90e57717ee4970c48a87a131ac2c\",\"name\":\"Priya Rajagopal, Senior Director, Product Management\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/4b50a54778b979d8c345b036ab138734\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/acfb2349788955262cd069497a9e7bdb0e97c26326f2e55811e7c1174e9ef1be?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/acfb2349788955262cd069497a9e7bdb0e97c26326f2e55811e7c1174e9ef1be?s=96&d=mm&r=g\",\"caption\":\"Priya Rajagopal, Senior Director, Product Management\"},\"description\":\"Priya Rajagopal is a Senior Director of Product Management at Couchbase responsible for developer platforms for the cloud and the edge. She has been professionally developing software for over 20 years in several technical and product leadership positions, with 10+ years focused on mobile technologies. As a TISPAN IPTV standards delegate, she was a key contributor to the IPTV standards specifications. She has 22 patents in the areas of networking and platform security.\",\"sameAs\":[\"https:\/\/x.com\/rajagp\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/priya-rajagopalcouchbase-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Monitorizaci\u00f3n Prometheus de Couchbase Mobile Kubernetes Cluster","description":"Sigue esta gu\u00eda paso a paso para configurar Prometheus para monitorizar tus cl\u00fasteres de Couchbase Sync Gateway \/ Mobile cuando se despliegan en contenedores Kubernetes.","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\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/","og_locale":"es_MX","og_type":"article","og_title":"Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster","og_description":"Follow this step-by-step guide to set up Prometheus for monitoring your Couchbase Sync Gateway \/ Mobile clusters when deployed on Kubernetes containers.","og_url":"https:\/\/www.couchbase.com\/blog\/es\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/","og_site_name":"The Couchbase Blog","article_published_time":"2019-07-11T17:00:53+00:00","article_modified_time":"2025-06-14T04:33:42+00:00","og_image":[{"width":2048,"height":1041,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png","type":"image\/png"}],"author":"Priya Rajagopal, Senior Director, Product Management","twitter_card":"summary_large_image","twitter_creator":"@rajagp","twitter_misc":{"Written by":"Priya Rajagopal, Senior Director, Product Management","Est. reading time":"10 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/"},"author":{"name":"Priya Rajagopal, Senior Director, Product Management","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c2da90e57717ee4970c48a87a131ac2c"},"headline":"Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster","datePublished":"2019-07-11T17:00:53+00:00","dateModified":"2025-06-14T04:33:42+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/"},"wordCount":1922,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png","keywords":["cloud","GitHub","Grafana","JSON","kubernetes","Prometheus"],"articleSection":["Best Practices and Tutorials","Couchbase Autonomous Operator","Couchbase Mobile","Kubernetes","Monitoring","Sync Gateway"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/","url":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/","name":"Monitorizaci\u00f3n Prometheus de Couchbase Mobile Kubernetes Cluster","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png","datePublished":"2019-07-11T17:00:53+00:00","dateModified":"2025-06-14T04:33:42+00:00","description":"Sigue esta gu\u00eda paso a paso para configurar Prometheus para monitorizar tus cl\u00fasteres de Couchbase Sync Gateway \/ Mobile cuando se despliegan en contenedores Kubernetes.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2019\/07\/grafana_stats.png","width":2048,"height":1041,"caption":"couchbase sync gateway grafana stats"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-sync-gateway-kubernetes-cluster-prometheus\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Prometheus Monitoring of Couchbase Mobile Kubernetes Cluster"}]},{"@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\/c2da90e57717ee4970c48a87a131ac2c","name":"Priya Rajagopal, Directora de Gesti\u00f3n de Productos","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/4b50a54778b979d8c345b036ab138734","url":"https:\/\/secure.gravatar.com\/avatar\/acfb2349788955262cd069497a9e7bdb0e97c26326f2e55811e7c1174e9ef1be?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/acfb2349788955262cd069497a9e7bdb0e97c26326f2e55811e7c1174e9ef1be?s=96&d=mm&r=g","caption":"Priya Rajagopal, Senior Director, Product Management"},"description":"Priya Rajagopal es directora s\u00e9nior de gesti\u00f3n de productos en Couchbase y responsable de las plataformas de desarrollo para la nube y el per\u00edmetro. Lleva m\u00e1s de 20 a\u00f1os dedic\u00e1ndose profesionalmente al desarrollo de software en varios puestos de liderazgo t\u00e9cnico y de producto, con m\u00e1s de 10 a\u00f1os centrados en tecnolog\u00edas m\u00f3viles. Como delegada de est\u00e1ndares IPTV de TISPAN, fue una colaboradora clave en las especificaciones de est\u00e1ndares IPTV. Tiene 22 patentes en las \u00e1reas de redes y seguridad de plataformas.","sameAs":["https:\/\/x.com\/rajagp"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/priya-rajagopalcouchbase-com\/"}]}},"authors":[{"term_id":8948,"user_id":1423,"is_guest":0,"slug":"priya-rajagopalcouchbase-com","display_name":"Priya Rajagopal, Senior Director, Product Management","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/acfb2349788955262cd069497a9e7bdb0e97c26326f2e55811e7c1174e9ef1be?s=96&d=mm&r=g","author_category":"","last_name":"Rajagopal, Senior Director, Product Management","first_name":"Priya","job_title":"","user_url":"","description":"Priya Rajagopal es directora s\u00e9nior de gesti\u00f3n de productos en Couchbase y responsable de las plataformas de desarrollo para la nube y el per\u00edmetro. Lleva m\u00e1s de 20 a\u00f1os dedic\u00e1ndose profesionalmente al desarrollo de software en varios puestos de liderazgo t\u00e9cnico y de producto, con m\u00e1s de 10 a\u00f1os centrados en tecnolog\u00edas m\u00f3viles. Como delegada de est\u00e1ndares IPTV de TISPAN, fue una colaboradora clave en las especificaciones de est\u00e1ndares IPTV. Tiene 22 patentes en las \u00e1reas de redes y seguridad de plataformas."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/7194","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\/1423"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=7194"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/7194\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/7208"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=7194"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=7194"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=7194"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=7194"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}