اگر یکی از اعضای etcd منابع بیشتری که از مقدار quota تعریف شده مصرف کند، یک هشدار (alarm) ایجاد میشود که etcd را در حالت تعمیر و نگهداری با عملیات محدود قرار میدهد. برای جلوگیری از پر شدن فضا، تاریخچه فضای کلید etcd به صورت خودکار توسط خود etcd فشرده (compact) میشود.\u003C/p>","adcb76a4-38f4-4f8c-a7de-09098fd4090a",{"type":1100,"value":1110,"id":1113},{"heading_text":1111,"size":1103,"link_id":1112},"راهاندازی مانیتورینگ برای etcd","setup-etcd-monitoring","88ec581e-1e1d-4ffd-a5dd-d4799bb67cca",{"type":1090,"value":1115,"id":1116},"\u003Cp data-block-key=\"z4w3d\">مانیتورینگ etcd برای اطمینان از سلامت و عملکرد کلاستر بسیار مهم است. این راهنما دستورالعملهای گامبهگام برای تنظیم مانیتورینگ etcd و بررسی روشهای مختلف برای انجام این کار را ارائه میدهد.\u003C/p>","4a833191-9409-47bd-93fa-bc0016e9eb27",{"type":1100,"value":1118,"id":1122},{"heading_text":1119,"size":1120,"link_id":1121},"گام ۱: دسترسی به سرتیفیکیتهای etcd","h3","step1","8310301d-95ce-43d8-b348-e372376daf72",{"type":1100,"value":1124,"id":1128},{"heading_text":1125,"size":1126,"link_id":1127},"۱- یافتن پاد etcd","h4","find-etcdpod","4d79ac86-91e7-4424-b9d1-02c28051959e",{"type":1090,"value":1130,"id":1131},"\u003Cp data-block-key=\"88z5c\">ابتدا پاد etcd را در کنترل پلین شناسایی کنید.\u003C/p>","c823fc6e-7bec-48c1-a085-1d5723a85dfa",{"type":1133,"value":1134,"id":1137},"code_block",{"language":1135,"code":1136},"bash","kubectl get pods -n kube-system","1b0a3dac-6a6b-4ba0-ade3-b904110f5781",{"type":1094,"value":1139,"id":1142},{"box_type":1140,"content":1141},"info","\u003Cp data-block-key=\"o04c3\">به دنبال پادی با نام مشابه <etcd-node-name> بگردید.\u003C/p>","47914ae9-0a8d-4871-a6df-83edbef5f030",{"type":1100,"value":1144,"id":1147},{"heading_text":1145,"size":1126,"link_id":1146},"۲- استخراج سرتیفیکیتها","export-certificate","575a4c8a-e0f9-4955-bd87-36515ff68366",{"type":1090,"value":1149,"id":1150},"\u003Cp data-block-key=\"qmhfu\">سرتیفیکیتها را از پاد etcd کپی کنید.\u003C/p>","54a2e76c-fa07-4fb1-b4da-15293a0ee7b3",{"type":1133,"value":1152,"id":1154},{"language":1135,"code":1153},"kubectl cp kube-system/\u003Cetcd-pod-name>:/etc/kubernetes/pki/etcd/ca.crt ./ca.crt\r\nkubectl cp kube-system/\u003Cetcd-pod-name>:/etc/kubernetes/pki/etcd/healthcheck-client.crt ./client.crt\r\nkubectl cp kube-system/\u003Cetcd-pod-name>:/etc/kubernetes/pki/etcd/healthcheck-client.key ./client.key","35b8bf01-849a-4d97-abc5-5f5d85baca70",{"type":1100,"value":1156,"id":1159},{"heading_text":1157,"size":1126,"link_id":1158},"۳- ساخت یک Secret برای سرتیفیکیتها","create-secret","c8e7998c-8e3f-4e45-9c7d-6e8c25c5d8a8",{"type":1090,"value":1161,"id":1162},"\u003Cp data-block-key=\"r5efi\">سرتیفیکیتهای etcd را در یک secret ذخیره کنید.\u003C/p>","3eefe4cf-6321-4e45-a446-1ad32837cc66",{"type":1133,"value":1164,"id":1166},{"language":1135,"code":1165},"kubectl create secret generic etcd-certs \\\r\n --from-file=ca.crt=./ca.crt \\\r\n --from-file=client.crt=./client.crt \\\r\n --from-file=client.key=./client.key -n monitoring","ccf56867-09e1-429e-913b-23fefe0cee70",{"type":1100,"value":1168,"id":1171},{"heading_text":1169,"size":1120,"link_id":1170},"گام ۲: راهاندازی Prometheus","setup-prometheus","530074ba-b383-42d8-bc02-ddce78598e1a",{"type":1090,"value":1173,"id":1174},"\u003Cp data-block-key=\"ca20c\">اگر Prometheus را در کلاستر خود نصب نکردهاید، مراحل زیر را برای دیپلوی آن دنبال کنید. در غیر این صورت این گام را رد کنید:\u003C/p>","a96da7a7-db00-43d9-b1f2-4a75eadc01ef",{"type":1100,"value":1176,"id":1179},{"heading_text":1177,"size":1126,"link_id":1178},"۱- نصب kube-prometheus-stack","kube-prometheus-stack","b843588f-c3d8-4528-a0d6-181cc7965407",{"type":1133,"value":1181,"id":1183},{"language":1135,"code":1182},"helm repo add prometheus-community https://prometheus-community.github.io/helm-charts\r\nhelm repo update","68128e83-943d-46dd-bc99-6a03d53c6889",{"type":1090,"value":1185,"id":1186},"\u003Cp data-block-key=\"o3ucs\">Prometheus و Grafana را با استفاده از چارت Helm دیپلوی کنید.\u003C/p>","390327b6-8742-436a-b779-7d465f5c55a3",{"type":1133,"value":1188,"id":1190},{"language":1135,"code":1189},"helm install prometheus-stack prometheus-community/kube-prometheus-stack -n monitoring --create-namespace","e4a0de8a-a2f5-43db-b487-7dbdd924fdb1",{"type":1100,"value":1192,"id":1195},{"heading_text":1193,"size":1126,"link_id":1194},"۲- دسترسی به Prometheus و Grafana:","access-prometheus-grafana","edbd5c69-317f-415c-b329-d3a171bec632",{"type":1090,"value":1197,"id":1198},"\u003Cp data-block-key=\"o3ucs\">پس از دیپلوی میتوانید از طریق port-forward و یا expose کردن سرویسها به رابطهای Prometheus و Grafana دسترسی پیدا کنید.\u003C/p>","01b54d45-49f7-43ee-a91c-0c10afaea29b",{"type":1133,"value":1200,"id":1202},{"language":1135,"code":1201},"kubectl port-forward -n monitoring svc/prometheus-stack-prometheus 9090:9090\r\nkubectl port-forward -n monitoring svc/prometheus-stack-grafana 3000:80","744f2395-a97b-4227-9e09-293bc670bcc2",{"type":1094,"value":1204,"id":1206},{"box_type":1140,"content":1205},"\u003Cp data-block-key=\"o04c3\">اطلاعات پیشفرض Grafana:\u003C/p>\u003Cul>\u003Cli data-block-key=\"3k4d9\">نام کاربری: admin\u003C/li>\u003C/ul>\u003Cp data-block-key=\"12sbd\">رمز عبور: با دستور زیر بازیابی کنید:\u003C/p>","2960993b-5c0d-40a2-b477-5b0b568286b5",{"type":1133,"value":1208,"id":1210},{"language":1135,"code":1209},"kubectl get secret -n monitoring prometheus-stack-grafana -o jsonpath=\"{.data.admin-password}\" | base64 --decode","2a2edb51-490c-4c1f-aafa-5d60c30ecf9a",{"type":1100,"value":1212,"id":1215},{"heading_text":1213,"size":1120,"link_id":1214},"گام ۳: تنظیم Prometheus برای جمعآوری متریکهای etcd","collection-metrics","6853eb0a-494c-4409-97ef-7ea147c245a4",{"type":1100,"value":1217,"id":1220},{"heading_text":1218,"size":1126,"link_id":1219},"۱- ساخت سرویس برای etcd","create-service","5b957496-bc6f-4938-a45f-254727e6f8cb",{"type":1133,"value":1222,"id":1224},{"language":20,"code":1223},"apiVersion: v1\r\nkind: Service\r\nmetadata:\r\n name: etcd-metrics\r\n namespace: kube-system\r\n labels:\r\n k8s-app: etcd\r\nspec:\r\n ports:\r\n - name: https-metrics\r\n port: 2379\r\n protocol: TCP\r\n targetPort: 2379\r\n selector:\r\n component: etcd","8b5c1d46-2dd4-424a-9335-5bdd0db0bc9b",{"type":1090,"value":1226,"id":1227},"\u003Cp data-block-key=\"ypjqf\">سپس آن را اعمال کنید.\u003C/p>","41da9853-cec9-4872-ae7b-f174f08ae96b",{"type":1133,"value":1229,"id":1231},{"language":1135,"code":1230},"kubectl apply -f etcd-service.yaml","d44da23d-9cf4-4d3e-8a12-13e06fa64317",{"type":1100,"value":1233,"id":1236},{"heading_text":1234,"size":1126,"link_id":1235},"۲- ساخت Service Monitor برای etcd","create-servicemonitor","e7ab4859-79db-4ee0-9e19-520c2beb9217",{"type":1133,"value":1238,"id":1240},{"language":20,"code":1239},"apiVersion: monitoring.coreos.com/v1\r\nkind: ServiceMonitor\r\nmetadata:\r\n name: etcd\r\n namespace: monitoring\r\n labels:\r\n release: prometheus-stack\r\nspec:\r\n selector:\r\n matchLabels:\r\n k8s-app: etcd\r\n endpoints:\r\n - port: https-metrics\r\n scheme: https\r\n tlsConfig:\r\n caFile: /etc/prometheus/secrets/etcd-certs/ca.crt\r\n certFile: /etc/prometheus/secrets/etcd-certs/client.crt\r\n keyFile: /etc/prometheus/secrets/etcd-certs/client.key\r\n interval: 30s\r\n namespaceSelector:\r\n matchNames:\r\n - kube-system","e967cb30-3cd5-4e72-bfef-0ebfa78725f4",{"type":1090,"value":1226,"id":1242},"ae6acc6a-57ea-41ab-bdde-9d363bac995d",{"type":1133,"value":1244,"id":1246},{"language":1135,"code":1245},"kubectl apply -f etcd-servicemonitor.yaml","b23ce7b1-29fe-4786-a769-7043f14bb39e",{"type":1100,"value":1248,"id":1251},{"heading_text":1249,"size":1126,"link_id":1250},"۳- بررسی راهاندازی","launch","8255a3b2-f5dd-45e1-8b78-2c21f7e6710e",{"type":1090,"value":1253,"id":1254},"\u003Cp data-block-key=\"ypjqf\">تارگت های Prometheus را بررسی کنید تا اطمینان حاصل کنید متریکهای etcd جمعآوری میشوند.\u003C/p>","ed12aeef-1844-4fc4-9c43-f2a9743a5f20",{"type":1133,"value":1256,"id":1258},{"language":1135,"code":1257},"kubectl port-forward -n monitoring svc/prometheus-stack-prometheus 9090:9090","473ec740-8148-40a8-b859-dbab027cee2a",{"type":1094,"value":1260,"id":1262},{"box_type":1096,"content":1261},"\u003Cp data-block-key=\"o04c3\">به http://localhost:9090/targets بروید و اطمینان حاصل کنید که تارگت های etcd بهصورت UP ظاهر میشود.\u003C/p>","936e403b-9dac-46d4-bdd8-4770fe60a42b",{"type":1100,"value":1264,"id":1267},{"heading_text":1265,"size":1120,"link_id":1266},"گام ۴: استفاده از Grafana","use-grafana","0a861799-f792-4942-b5e2-c5ed745f3aa2",{"type":1100,"value":1269,"id":1272},{"heading_text":1270,"size":1126,"link_id":1271},"۱- وارد کردن داشبورد etcd","etcd-dashboard","0a1eacff-5221-4b93-8cd9-b9f6e7e98f2f",{"type":1090,"value":1274,"id":1275},"\u003Cp data-block-key=\"f6rtu\">یک داشبورد آماده etcd را از جامعه Grafana وارد کنید. به \u003Cb>Dashboards > Import\u003C/b> بروید و ID داشبورد را وارد کنید یا فایل JSON را آپلود کنید. به طور مثال \u003Cb>می توانید از\u003C/b>\u003Ca href=\"https://grafana.com/grafana/dashboards/15308-etcd-cluster-overview/\">\u003Cb>این دشبورد آماده\u003C/b>\u003C/a>\u003Cb> استفاده نمایید\u003C/b>.\u003C/p>","6b8961c2-477b-428d-9430-caaad180b5d0",{"type":1277,"value":1278,"id":1286},"image_block",{"title":1279,"file":1280,"sources":1281,"width":1283,"height":1284,"file_size":1285},"grafana","https://s3.thr1.sotoon.ir/ravi-statics/media/original_images/unnamed_ahuTfSf.png",{"png":1280,"jpg":1282},"https://s3.thr1.sotoon.ir/ravi-statics/media/images/unnamed_ahuTfSf.format-jpeg.jpg",1432,1600,1231207,"866eaa0f-83db-4eb3-808a-30a6b53c7d9c",{"type":1100,"value":1288,"id":1291},{"heading_text":1289,"size":1126,"link_id":1290},"۲- ساخت هشدارها (Alerts)","create-alert","e9d6cc80-090d-453a-80a3-3ec2da9edf51",{"type":1090,"value":1293,"id":1294},"\u003Cp data-block-key=\"f6rtu\">همچنین میتوانید الرتهایی برای etcd ست کنید.\u003C/p>\u003Cul>\u003Cli data-block-key=\"aivv9\">الرت برای سایز دیتابیس:\u003C/li>\u003C/ul>","8d1ad135-0cb3-4aaa-a972-d5263f53e45e",{"type":1133,"value":1296,"id":1299},{"language":1297,"code":1298},"css","(etcd_server_quota_backend_bytes - etcd_debugging_mvcc_db_total_size_in_bytes) \u003C 100 * 1024 * 1024","d2d395c5-5e9f-4dc3-ae9d-3ac236dcb352",{"type":1090,"value":1301,"id":1302},"\u003Cul>\u003Cli data-block-key=\"f6rtu\">وضعیت لیدر: etcd_server_has_leader == 0\u003C/li>\u003Cli data-block-key=\"a0ks\">تأخیر دیسک: etcd_disk_backend_commit_duration_seconds\u003C/li>\u003Cli data-block-key=\"a603o\">پیشنهادات ناموفق: etcd_server_proposals_failed_total\u003C/li>\u003C/ul>","bc37ec95-5ddf-448a-b93f-1f9fd70f31ac",[1304,1305],{"heading_text":1102,"size":1103,"link_id":1104},{"heading_text":1111,"size":1103,"link_id":1112},{"slug":893,"title":894},["Reactive",1308],{"$snuxt-i18n-meta":1309,"$sroute-nav-config":1310,"$ssite-config":1314},{},["ShallowRef",1311],{"variant":1312,"position":1313,"container":97},"light","static",{"currentLocale":1315,"description":1316,"env":1317,"name":1318,"url":1319},"fa","Managing Sotoon products showcase","production","sotoon","https://sotoon.ir",["Set"],["ShallowReactive",1322],{"products":-1,"documents:products":-1,"$APL8jXlmTi":-1},"/docs/kubernetes/kubernetes/challenges-and-solutions/etcd-management"]