اگر یکی از اعضای etcd منابع بیشتری که از مقدار quota تعریف شده مصرف کند، یک هشدار (alarm) ایجاد میشود که etcd را در حالت تعمیر و نگهداری با عملیات محدود قرار میدهد. برای جلوگیری از پر شدن فضا، تاریخچه فضای کلید etcd به صورت خودکار توسط خود etcd فشرده (compact) میشود.\u003C/p>","adcb76a4-38f4-4f8c-a7de-09098fd4090a",{"type":1117,"value":1127,"id":1130},{"heading_text":1128,"size":1120,"link_id":1129},"راهاندازی مانیتورینگ برای etcd","setup-etcd-monitoring","88ec581e-1e1d-4ffd-a5dd-d4799bb67cca",{"type":1107,"value":1132,"id":1133},"\u003Cp data-block-key=\"z4w3d\">مانیتورینگ etcd برای اطمینان از سلامت و عملکرد کلاستر بسیار مهم است. این راهنما دستورالعملهای گامبهگام برای تنظیم مانیتورینگ etcd و بررسی روشهای مختلف برای انجام این کار را ارائه میدهد.\u003C/p>","4a833191-9409-47bd-93fa-bc0016e9eb27",{"type":1117,"value":1135,"id":1139},{"heading_text":1136,"size":1137,"link_id":1138},"گام ۱: دسترسی به سرتیفیکیتهای etcd","h3","step1","8310301d-95ce-43d8-b348-e372376daf72",{"type":1117,"value":1141,"id":1145},{"heading_text":1142,"size":1143,"link_id":1144},"۱- یافتن پاد etcd","h4","find-etcdpod","4d79ac86-91e7-4424-b9d1-02c28051959e",{"type":1107,"value":1147,"id":1148},"\u003Cp data-block-key=\"88z5c\">ابتدا پاد etcd را در کنترل پلین شناسایی کنید.\u003C/p>","c823fc6e-7bec-48c1-a085-1d5723a85dfa",{"type":1150,"value":1151,"id":1154},"code_block",{"language":1152,"code":1153},"bash","kubectl get pods -n kube-system","1b0a3dac-6a6b-4ba0-ade3-b904110f5781",{"type":1111,"value":1156,"id":1159},{"box_type":1157,"content":1158},"info","\u003Cp data-block-key=\"o04c3\">به دنبال پادی با نام مشابه <etcd-node-name> بگردید.\u003C/p>","47914ae9-0a8d-4871-a6df-83edbef5f030",{"type":1117,"value":1161,"id":1164},{"heading_text":1162,"size":1143,"link_id":1163},"۲- استخراج سرتیفیکیتها","export-certificate","575a4c8a-e0f9-4955-bd87-36515ff68366",{"type":1107,"value":1166,"id":1167},"\u003Cp data-block-key=\"qmhfu\">سرتیفیکیتها را از پاد etcd کپی کنید.\u003C/p>","54a2e76c-fa07-4fb1-b4da-15293a0ee7b3",{"type":1150,"value":1169,"id":1171},{"language":1152,"code":1170},"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":1117,"value":1173,"id":1176},{"heading_text":1174,"size":1143,"link_id":1175},"۳- ساخت یک Secret برای سرتیفیکیتها","create-secret","c8e7998c-8e3f-4e45-9c7d-6e8c25c5d8a8",{"type":1107,"value":1178,"id":1179},"\u003Cp data-block-key=\"r5efi\">سرتیفیکیتهای etcd را در یک secret ذخیره کنید.\u003C/p>","3eefe4cf-6321-4e45-a446-1ad32837cc66",{"type":1150,"value":1181,"id":1183},{"language":1152,"code":1182},"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":1117,"value":1185,"id":1188},{"heading_text":1186,"size":1137,"link_id":1187},"گام ۲: راهاندازی Prometheus","setup-prometheus","530074ba-b383-42d8-bc02-ddce78598e1a",{"type":1107,"value":1190,"id":1191},"\u003Cp data-block-key=\"ca20c\">اگر Prometheus را در کلاستر خود نصب نکردهاید، مراحل زیر را برای دیپلوی آن دنبال کنید. در غیر این صورت این گام را رد کنید:\u003C/p>","a96da7a7-db00-43d9-b1f2-4a75eadc01ef",{"type":1117,"value":1193,"id":1196},{"heading_text":1194,"size":1143,"link_id":1195},"۱- نصب kube-prometheus-stack","kube-prometheus-stack","b843588f-c3d8-4528-a0d6-181cc7965407",{"type":1150,"value":1198,"id":1200},{"language":1152,"code":1199},"helm repo add prometheus-community https://prometheus-community.github.io/helm-charts\r\nhelm repo update","68128e83-943d-46dd-bc99-6a03d53c6889",{"type":1107,"value":1202,"id":1203},"\u003Cp data-block-key=\"o3ucs\">Prometheus و Grafana را با استفاده از چارت Helm دیپلوی کنید.\u003C/p>","390327b6-8742-436a-b779-7d465f5c55a3",{"type":1150,"value":1205,"id":1207},{"language":1152,"code":1206},"helm install prometheus-stack prometheus-community/kube-prometheus-stack -n monitoring --create-namespace","e4a0de8a-a2f5-43db-b487-7dbdd924fdb1",{"type":1117,"value":1209,"id":1212},{"heading_text":1210,"size":1143,"link_id":1211},"۲- دسترسی به Prometheus و Grafana:","access-prometheus-grafana","edbd5c69-317f-415c-b329-d3a171bec632",{"type":1107,"value":1214,"id":1215},"\u003Cp data-block-key=\"o3ucs\">پس از دیپلوی میتوانید از طریق port-forward و یا expose کردن سرویسها به رابطهای Prometheus و Grafana دسترسی پیدا کنید.\u003C/p>","01b54d45-49f7-43ee-a91c-0c10afaea29b",{"type":1150,"value":1217,"id":1219},{"language":1152,"code":1218},"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":1111,"value":1221,"id":1223},{"box_type":1157,"content":1222},"\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":1150,"value":1225,"id":1227},{"language":1152,"code":1226},"kubectl get secret -n monitoring prometheus-stack-grafana -o jsonpath=\"{.data.admin-password}\" | base64 --decode","2a2edb51-490c-4c1f-aafa-5d60c30ecf9a",{"type":1117,"value":1229,"id":1232},{"heading_text":1230,"size":1137,"link_id":1231},"گام ۳: تنظیم Prometheus برای جمعآوری متریکهای etcd","collection-metrics","6853eb0a-494c-4409-97ef-7ea147c245a4",{"type":1117,"value":1234,"id":1237},{"heading_text":1235,"size":1143,"link_id":1236},"۱- ساخت سرویس برای etcd","create-service","5b957496-bc6f-4938-a45f-254727e6f8cb",{"type":1150,"value":1239,"id":1241},{"language":20,"code":1240},"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":1107,"value":1243,"id":1244},"\u003Cp data-block-key=\"ypjqf\">سپس آن را اعمال کنید.\u003C/p>","41da9853-cec9-4872-ae7b-f174f08ae96b",{"type":1150,"value":1246,"id":1248},{"language":1152,"code":1247},"kubectl apply -f etcd-service.yaml","d44da23d-9cf4-4d3e-8a12-13e06fa64317",{"type":1117,"value":1250,"id":1253},{"heading_text":1251,"size":1143,"link_id":1252},"۲- ساخت Service Monitor برای etcd","create-servicemonitor","e7ab4859-79db-4ee0-9e19-520c2beb9217",{"type":1150,"value":1255,"id":1257},{"language":20,"code":1256},"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":1107,"value":1243,"id":1259},"ae6acc6a-57ea-41ab-bdde-9d363bac995d",{"type":1150,"value":1261,"id":1263},{"language":1152,"code":1262},"kubectl apply -f etcd-servicemonitor.yaml","b23ce7b1-29fe-4786-a769-7043f14bb39e",{"type":1117,"value":1265,"id":1268},{"heading_text":1266,"size":1143,"link_id":1267},"۳- بررسی راهاندازی","launch","8255a3b2-f5dd-45e1-8b78-2c21f7e6710e",{"type":1107,"value":1270,"id":1271},"\u003Cp data-block-key=\"ypjqf\">تارگت های Prometheus را بررسی کنید تا اطمینان حاصل کنید متریکهای etcd جمعآوری میشوند.\u003C/p>","ed12aeef-1844-4fc4-9c43-f2a9743a5f20",{"type":1150,"value":1273,"id":1275},{"language":1152,"code":1274},"kubectl port-forward -n monitoring svc/prometheus-stack-prometheus 9090:9090","473ec740-8148-40a8-b859-dbab027cee2a",{"type":1111,"value":1277,"id":1279},{"box_type":1113,"content":1278},"\u003Cp data-block-key=\"o04c3\">به http://localhost:9090/targets بروید و اطمینان حاصل کنید که تارگت های etcd بهصورت UP ظاهر میشود.\u003C/p>","936e403b-9dac-46d4-bdd8-4770fe60a42b",{"type":1117,"value":1281,"id":1284},{"heading_text":1282,"size":1137,"link_id":1283},"گام ۴: استفاده از Grafana","use-grafana","0a861799-f792-4942-b5e2-c5ed745f3aa2",{"type":1117,"value":1286,"id":1289},{"heading_text":1287,"size":1143,"link_id":1288},"۱- وارد کردن داشبورد etcd","etcd-dashboard","0a1eacff-5221-4b93-8cd9-b9f6e7e98f2f",{"type":1107,"value":1291,"id":1292},"\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":1294,"value":1295,"id":1303},"image_block",{"title":1296,"file":1297,"sources":1298,"width":1300,"height":1301,"file_size":1302},"grafana","https://s3.thr1.sotoon.ir/ravi-statics/media/original_images/unnamed_ahuTfSf.png",{"png":1297,"jpg":1299},"https://s3.thr1.sotoon.ir/ravi-statics/media/images/unnamed_ahuTfSf.format-jpeg.jpg",1432,1600,1231207,"866eaa0f-83db-4eb3-808a-30a6b53c7d9c",{"type":1117,"value":1305,"id":1308},{"heading_text":1306,"size":1143,"link_id":1307},"۲- ساخت هشدارها (Alerts)","create-alert","e9d6cc80-090d-453a-80a3-3ec2da9edf51",{"type":1107,"value":1310,"id":1311},"\u003Cp data-block-key=\"f6rtu\">همچنین میتوانید الرتهایی برای etcd ست کنید.\u003C/p>\u003Cul>\u003Cli data-block-key=\"aivv9\">الرت برای سایز دیتابیس:\u003C/li>\u003C/ul>","8d1ad135-0cb3-4aaa-a972-d5263f53e45e",{"type":1150,"value":1313,"id":1316},{"language":1314,"code":1315},"css","(etcd_server_quota_backend_bytes - etcd_debugging_mvcc_db_total_size_in_bytes) \u003C 100 * 1024 * 1024","d2d395c5-5e9f-4dc3-ae9d-3ac236dcb352",{"type":1107,"value":1318,"id":1319},"\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",[1321,1322],{"heading_text":1119,"size":1120,"link_id":1121},{"heading_text":1128,"size":1120,"link_id":1129},{"slug":903,"title":904},["Reactive",1325],{"$snuxt-i18n-meta":1326,"$sroute-nav-config":1327,"$ssite-config":1331},{},["ShallowRef",1328],{"variant":1329,"position":1330,"container":97},"light","static",{"currentLocale":1332,"description":1333,"env":1334,"name":1335,"url":1336},"fa","Managing Sotoon products showcase","production","sotoon","https://sotoon.ir",["Set"],["ShallowReactive",1339],{"products":-1,"documents:products":-1,"$APL8jXlmTi":-1},"/docs/kubernetes/kubernetes/challenges-and-solutions/etcd-management"]