diff --git a/manifests/prometheus/prometheus-k8s-cm.yaml b/manifests/prometheus/prometheus-k8s-cm.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b7616cfe6061d29d52791daff12f27455c000939
--- /dev/null
+++ b/manifests/prometheus/prometheus-k8s-cm.yaml
@@ -0,0 +1,55 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: prometheus-k8s
+data:
+  prometheus.yaml: |
+    global:
+      evaluation_interval: 30s
+
+    # Add your etcd scrape config here. We cannot default here as etcd is a
+    # prerequisite for Kubernetes.
+    # TODO(fabxc): potentially make this configurable via KPM in the future.
+
+    scrape_configs:
+    - job_name: kubelets
+      scrape_interval: 20s
+      tls_config:
+        ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
+      bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
+
+      kubernetes_sd_configs:
+      - role: node
+
+      relabel_configs:
+      - source_labels: [__address__]
+        regex: (.*):10250
+        replacement: ${1}:10255
+        target_label: __address__
+    
+    # Scrapes the endpoint lists for the Kubernetes API server, kube-state-metrics,
+    # and node-exporter, which we all consider part of a default setup.
+    - job_name: standard-endpoints
+      scrape_interval: 20s
+      tls_config:
+        ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
+      bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
+
+      kubernetes_sd_configs:
+      - role: endpoints
+
+      relabel_configs:
+      - action: keep
+        source_labels: [__meta_kubernetes_service_name]
+        regex: kubernetes|node-exporter|kube-state-metrics
+      - action: replace
+        source_labels: [__meta_kubernetes_namespace]
+        target_label: namespace
+      - action: replace
+        source_labels: [__meta_kubernetes_service_name]
+        target_label: job
+      - action: replace
+        source_labels: [__meta_kubernetes_service_name]
+        regex: kubernetes
+        target_label: __scheme__
+        replacement: https
diff --git a/manifests/prometheus/prometheus-k8s-svc.yaml b/manifests/prometheus/prometheus-k8s-svc.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..c5d79d02f0787f55f3603eb9527a36a92414d59f
--- /dev/null
+++ b/manifests/prometheus/prometheus-k8s-svc.yaml
@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: prometheus-k8s
+spec:
+  type: NodePort
+  ports:
+  - name: web
+    nodePort: 30900
+    port: 9090
+    protocol: TCP
+    targetPort: web
+  selector:
+    prometheus.coreos.com: prometheus-k8s
diff --git a/manifests/prometheus/prometheus-k8s.yaml b/manifests/prometheus/prometheus-k8s.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..68a5395c9e67a942053152179b81196b5c3a5e4c
--- /dev/null
+++ b/manifests/prometheus/prometheus-k8s.yaml
@@ -0,0 +1,7 @@
+apiVersion: prometheus.coreos.com/v1alpha1
+kind: Prometheus
+metadata:
+  name: prometheus-k8s
+  labels:
+    prometheus: k8s
+spec: {}