diff --git a/charts/rancher-monitoring-crd/CUSTOM-README.md b/charts/rancher-monitoring-crd/CUSTOM-README.md
new file mode 100644
index 0000000..53024f8
--- /dev/null
+++ b/charts/rancher-monitoring-crd/CUSTOM-README.md
@@ -0,0 +1,22 @@
+
+# Rancher Monitoring CRD 배포
+
+## 1. 배포 방법
+
+``` sh
+$ helm upgrade rancher-monitoring-crd --install \
+ --namespace cattle-monitoring-system --create-namespace \
+ ../rancher-monitoring-crd -f ./custom-values.yaml
+```
+
+
+## 2.custom-values.yaml 설명
+
+- custom-values.yaml에 정의된 값에 대한 설명이다.
+
+### 1) 오프라인 설정
+- private 환경 배포시 사용한다.
+
+| Name | 설명 | 기본값 |
+| ---------------------- | ------------------------------------------------------------ | ------ |
+| `global.cattle.systemDefaultRegistry` | 오프라인 설치 시에 설정.
paasup 설치시에는 "paasup.io"로 설정 | `""` |
\ No newline at end of file
diff --git a/charts/rancher-monitoring-crd/custom-values.yaml b/charts/rancher-monitoring-crd/custom-values.yaml
new file mode 100644
index 0000000..fbe9cb3
--- /dev/null
+++ b/charts/rancher-monitoring-crd/custom-values.yaml
@@ -0,0 +1,4 @@
+# global:
+# cattle:
+# # offline 배포 시 설정
+# systemDefaultRegistry: "paasup.io"
\ No newline at end of file
diff --git a/charts/rancher-monitoring/CUSTOM-README.md b/charts/rancher-monitoring/CUSTOM-README.md
new file mode 100644
index 0000000..b1f59e6
--- /dev/null
+++ b/charts/rancher-monitoring/CUSTOM-README.md
@@ -0,0 +1,114 @@
+
+# Rancher Monitoring 배포
+
+## 1. 배포 방법
+
+``` sh
+$ helm upgrade rancher-monitoring --install \
+ --namespace cattle-monitoring-system --create-namespace \
+ ../rancher-monitoring -f ./custom-values.yaml
+```
+
+
+## 2.custom-values.yaml 설명
+
+- custom-values.yaml에 정의된 값에 대한 설명이다.
+
+### 1) 오프라인 설정
+- private 환경 배포시 사용한다.
+
+| Name | 설명 | 기본값 |
+| ---------------------- | ------------------------------------------------------------ | ------ |
+| `global.cattle.systemDefaultRegistry` | 오프라인 설치 시에 설정.
paasup 설치시에는 "paasup.io"로 설정 | `""` |
+
+### 2) grafana 설정
+
+- grafana의 리소스를 설정한다.
+
+| Name | 설명 | 기본값 |
+| ------------------------ | ---------------------------------- | --------- |
+| `grafana.resources` | grafana pod의 resource 설정. | `custom-values.yaml 참조` |
+
+### 3) prometheus 설정
+
+- prometheus의 리소스를 설정한다.
+- 리소스 설정시 `retensionSize`의 크기를 volume 크기보다 크게 설정하지 않도록 주의한다.
+
+| Name | 설명 | 기본값 |
+| ------------------------ | ---------------------------------- | --------- |
+| `prometheus.prometheusSpec.resources` | prometheus pod의 resource 설정. | `custom-values.yaml 참조` |
+| `prometheus.prometheusSpec.scrapeInterval` | prometheus scrape_interval 설정. 수집 주기 설정 | `1m` |
+| `prometheus.prometheusSpec.evaluationInterval` | prometheus evaluation_interval 설정. alert에 대한 평가 주기. | `1m` |
+| `prometheus.prometheusSpec.retention` | prometheus 메트릭 보관 주기 설정. | `30d` |
+| `prometheus.prometheusSpec.retentionSize` | 메트릭 보관 용량 설정. | `10GB` |
+| `prometheus.prometheusSpec.storageSpec` | Prometheus의 볼륨 설정. | `10GB` |
+
+### 4) alertmanager 설정
+
+| Name | 설명 | 기본값 |
+| ------------------------ | ---------------------------------- | --------- |
+| `alertmanager.alertmanagerSpec.resources` | alert manager의 resource 설정. | `custom-values.yaml 참조` |
+
+### 5) cluster 별 Monitoring 설정
+
+- rke, rke2, kubeadm, k3s 4가지 배포판에 대한 모니터링을 지원한다.
+- 각 배포판 별 value를 `enabled: true`로 설정하여 메트릭을 수집할 수 있다.
+
+#### rke2
+``` yaml
+rke2ControllerManager:
+ enabled: false
+rke2Etcd:
+ enabled: false
+rke2Proxy:
+ enabled: false
+rke2Scheduler:
+ enabled: false
+rke2IngressNginx:
+ enabled: false
+```
+
+#### rke
+``` yaml
+rkeControllerManager:
+ enabled: false
+rkeEtcd:
+ enabled: false
+rkeProxy:
+ enabled: false
+rkeScheduler:
+ enabled: false
+rkeIngressNginx:
+ enabled: false
+```
+
+#### kubeadm
+
+``` yaml
+kubeAdmControllerManager:
+ enabled: false
+kubeAdmScheduler:
+ enabled: false
+kubeAdmProxy:
+ enabled: false
+kubeAdmEtcd:
+ enabled: false
+```
+
+#### k3s
+
+``` yaml
+k3sServer:
+ enabled: false
+```
+
+
+### 6) ingress nginx
+
+- 클러스터에 ingress nginx를 배포했을 때 해당 옵션을 `enabled: true`로 설정하여 메트릭 수집할 수 있다.
+
+``` yaml
+ingressNginx:
+ enabled: false
+ namespace: ingress-nginx
+```
\ No newline at end of file
diff --git a/charts/rancher-monitoring/custom-values.yaml b/charts/rancher-monitoring/custom-values.yaml
new file mode 100644
index 0000000..1ec2d19
--- /dev/null
+++ b/charts/rancher-monitoring/custom-values.yaml
@@ -0,0 +1,62 @@
+# global:
+# cattle:
+# systemDefaultRegistry: "paasup.io"
+
+grafana:
+ resources:
+ requests:
+ cpu: 100m
+ memory: 100Mi
+ limits:
+ cpu: 200m
+ memory: 200Mi
+
+prometheus:
+ prometheusSpec:
+ resources:
+ requests:
+ cpu: 250m
+ memory: 100Mi
+ limits:
+ cpu: 1000m
+ memory: 2000Mi
+ scrapeInterval: 1m
+ evaluationInterval: 1m
+ retention: 30d
+ retentionSize: 10GB ## 해당 설정에 Gi 입력 시 에러 발생
+ storageSpec:
+ volumeClaimTemplate:
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 10Gi
+ storageClassName: longhorn
+ volumeMode: Filesystem
+
+alertmanager:
+ alertmanagerSpec:
+ resources:
+ requests:
+ cpu: 100m
+ memory: 100Mi
+ limits:
+ cpu: 1000m
+ memory: 500Mi
+
+# rke2 클러스터 시 enable 한다.
+# rke2ControllerManager:
+# enabled: true
+# rke2Etcd:
+# enabled: true
+# rke2Proxy:
+# enabled: true
+# rke2Scheduler:
+# enabled: true
+# rke2IngressNginx:
+# enabled: true
+
+# helm 배포한 ingressNginx가 배포되어 있을 때 사용한다.
+# ingressNginx:
+# enabled: true
\ No newline at end of file