apiVersion: extensions/v1beta1 kind: Deployment metadata: name: prometheus-core namespace: kube-system labels: app: prometheus component: core spec: replicas: 1 template: metadata: name: prometheus-main labels: app: prometheus component: core spec: serviceAccountName: prometheus-k8s containers: - name: prometheus image: prom/prometheus:v2.0.0 args: - '--storage.tsdb.retention=12h' - '--storage.tsdb.path=/prometheus' - '--config.file=/etc/prometheus/prometheus.yaml' ports: - name: webui containerPort: 9090 resources: requests: cpu: 500m memory: 500M limits: cpu: 500m memory: 500M volumeMounts: - name: config-volume mountPath: /etc/prometheus - name: rules-volume mountPath: /etc/prometheus-rules volumes: - name: config-volume configMap: name: prometheus-core - name: rules-volume configMap: name: prometheus-rules --- apiVersion: v1 kind: Service metadata: name: prometheus namespace: kube-system labels: app: prometheus component: core annotations: prometheus.io/scrape: 'true' spec: type: NodePort ports: - port: 9090 protocol: TCP name: webui nodePort: 30369 selector: app: prometheus component: core