مراقبة مجموعة Nexus Kubernetes
تتكون كل مجموعة Nexus Kubernetes من طبقات متعددة:
- الأجهزة الظاهرية (VMs)
- طبقة Kubernetes
- جرابات التطبيق
الشكل: عينة نظام مجموعة Nexus Kubernetes
على مثيل، يتم تسليم مجموعات Nexus Kubernetes مع حل مراقبة Container Insights اختياري. يلتقط Container Insights السجلات والمقاييس من مجموعات وأحمال عمل Nexus Kubernetes. إنها لتقديرك فقط ما إذا كنت تريد تمكين هذه الأدوات أو توزيع مكدس بيانات تتبع الاستخدام الخاص بك.
يبدو نظام مجموعة Nexus Kubernetes مع أداة مراقبة Azure كما يلي:
الشكل: مجموعة Nexus Kubernetes مع أدوات المراقبة
إلحاق الملحق ب CLI باستخدام مصادقة الهوية المدارة
وثائق للبدء ب Azure CLI، وكيفية تثبيته عبر أنظمة تشغيل متعددة، وكيفية تثبيت ملحقات CLI.
تثبيت أحدث إصدار من ملحقات CLI الضرورية.
مراقبة مجموعة Nexus Kubernetes
يوفر دليل الكيفية هذا خطوات لتمكين وكلاء المراقبة لمجموعة سجلات النظام من هذه الأجهزة الظاهرية باستخدام عامل مراقبة Azure. تسجل الإرشادات المزيد من التفاصيل حول كيفية إعداد جمع بيانات السجل في مساحة عمل Log Analytics.
المتطلبات الأساسية
وصول مسؤول نظام المجموعة إلى مجموعة Nexus Kubernetes.
لاستخدام خوادم Azure Arc الممكنة، سجل موفري موارد Azure التاليين في اشتراكك:
- Microsoft.HybridCompute
- Microsoft.GuestConfiguration
- Microsoft.HybridConnectivity
سجل موفري الموارد هؤلاء، إذا لم يتم ذلك مسبقا:
az account set --subscription "{the Subscription Name}"
az provider register --namespace 'Microsoft.HybridCompute'
az provider register --namespace 'Microsoft.GuestConfiguration'
az provider register --namespace 'Microsoft.HybridConnectivity'
- تعيين كيان خدمة Azure للأدوار المضمنة التالية في Azure، حسب الحاجة. تعيين كيان الخدمة إلى مجموعة موارد Azure التي تحتوي على الأجهزة المراد توصيلها:
الدور | مطلوب ل |
---|---|
مسؤول مورد الجهاز المتصل Azure أو المساهم | قم بتوصيل خادم الجهاز الظاهري لمجموعة Nexus Kubernetes الممكن بواسطة Arc في مجموعة الموارد وتثبيت عامل مراقبة Azure (AMA) |
مراقبة المساهم أو المساهم | إنشاء قاعدة تجميع البيانات (DCR) في مجموعة الموارد وإقران الخوادم الممكنة بواسطة Arc بها |
مسؤول وصول المستخدم والمساهم في نهج الموارد أو المساهم | مطلوب إذا كنت تريد استخدام تعيين (تعيينات) نهج Azure للتأكد من أن DCR مقترن بالأجهزة التي تدعم Arc |
مساهم ملحق Kubernetes | مطلوب لنشر ملحق K8s ل Container Insights |
مراقبة مجموعة Nexus Kubernetes
المتطلبات الأساسية
هناك متطلبات أساسية معينة يجب أن يضمنها المشغل لتكوين أدوات المراقبة على مجموعات Nexus Kubernetes.
تخزن Container Insights بياناتها في مساحة عمل Log Analytics. تتدفق بيانات السجل إلى مساحة العمل التي قمت بتوفير معرف المورد الخاص بها أثناء تثبيت ملحق Container Insights. وإلا، يتم تحويل البيانات إلى مساحة عمل افتراضية في مجموعة الموارد المقترنة باشتراكك (استنادا إلى موقع Azure).
قد يبدو مثال شرق الولايات المتحدة كما يلي:
- اسم مساحة عمل Log Analytics: DefaultWorkspace-GUID-EUS<>
- اسم مجموعة الموارد: DefaultResourceGroup-EUS
قم بتشغيل الأمر التالي للحصول على معرف مورد مساحة عمل Log Analytics موجود مسبقا:
az login
az account set --subscription "<Subscription Name or ID the Log Analytics workspace is in>"
az monitor log-analytics workspace show --workspace-name "<Log Analytics workspace Name>" \
--resource-group "<Log Analytics workspace Resource Group>" \
-o tsv --query id
لنشر Container Insights وعرض البيانات في مساحة عمل Log Analytics القابلة للتطبيق يتطلب تعيينات أدوار معينة في حسابك. على سبيل المثال، تعيين دور "المساهم". راجع إرشادات تعيين الأدوار المطلوبة:
- دور مساهم Log Analytics: الأذونات الضرورية لتمكين مراقبة الحاوية على مجموعة CNF (المقدمة).
- دور قارئ Log Analytics: يتلقى غير الأعضاء في دور مساهم Log Analytics أذونات لعرض البيانات في مساحة عمل Log Analytics بمجرد تمكين مراقبة الحاوية.
تثبيت ملحق نظام المجموعة
تسجيل الدخول إلى Azure Cloud Shell للوصول إلى نظام المجموعة:
az login
az account set --subscription "<Subscription Name or ID the Provisioned Cluster is in>"
الآن، انشر ملحق Container Insights على مجموعة Nexus Kubernetes المتوفرة باستخدام أي من الأمرين التاليين:
مع مساحة عمل تحليلات السجل المنشأة مسبقا من قبل العميل
az k8s-extension create --name azuremonitor-containers \
--cluster-name "<Nexus Kubernetes cluster Name>" \
--resource-group "<Nexus Kubernetes cluster Resource Group>" \
--cluster-type connectedClusters \
--extension-type Microsoft.AzureMonitor.Containers \
--release-train preview \
--configuration-settings logAnalyticsWorkspaceResourceID="<Log Analytics workspace Resource ID>" \
amalogsagent.useAADAuth=true
استخدام مساحة عمل Log analytics الافتراضية
az k8s-extension create --name azuremonitor-containers \
--cluster-name "<Nexus Kubernetes cluster Name>" \
--resource-group "<Nexus Kubernetes cluster Resource Group>" \
--cluster-type connectedClusters \
--extension-type Microsoft.AzureMonitor.Containers \
--release-train preview \
--configuration-settings amalogsagent.useAADAuth=true
التحقق من صحة ملحق نظام المجموعة
التحقق من صحة النشر الناجح لتمكين عوامل المراقبة على مجموعات Nexus Kubernetes باستخدام الأمر التالي:
az k8s-extension show --name azuremonitor-containers \
--cluster-name "<Nexus Kubernetes cluster Name>" \
--resource-group "<Nexus Kubernetes cluster Resource Group>" \
--cluster-type connectedClusters
ابحث عن حالة توفير "Succeeded" للملحق. قد يكون الأمر "k8s-extension create" قد أرجع الحالة أيضا.
تخصيص مجموعة السجلات والمقاييس
توفر Container Insights وظائف المستخدمين النهائيين لضبط مجموعة السجلات والمقاييس من مجموعات Nexus Kubernetes. راجع إرشادات تكوين جمع بيانات عامل نتائج تحليلات الحاوية لمزيد من المعلومات.
إشعار
لا تجمع Container Insights السجلات من kube-system
مساحة الاسم بشكل افتراضي. لتجميع السجلات من kube-system
مساحة الاسم، يجب تكوين العامل لتجميع السجلات من kube-system
مساحة الاسم.
يمكن القيام بذلك عن طريق إزالة kube-system
مساحة الاسم من excludedNamespaces
الحقل في ConfigMap باتباع configMap
نهج التكوين .
[log_collection_settings]
[log_collection_settings.stdout]
# In the absence of this configmap, default value for enabled is true
enabled = true
# exclude_namespaces setting holds good only if enabled is set to true
# kube-system,gatekeeper-system log collection are disabled by default in the absence of 'log_collection_settings.stdout' setting. If you want to enable kube-system,gatekeeper-system, remove them from the following setting.
# If you want to continue to disable kube-system,gatekeeper-system log collection keep the namespaces in the following setting and add any other namespace you want to disable log collection to the array.
# In the absence of this configmap, default value for exclude_namespaces = ["kube-system","gatekeeper-system"]
exclude_namespaces = ["gatekeeper-system"]
# If you want to collect logs from only selective pods inside system namespaces add them to the following setting. Provide namespace:controllerName of the system pod. NOTE: this setting is only for pods in system namespaces
# Valid values for system namespaces are: kube-system, azure-arc, gatekeeper-system, kube-public, kube-node-lease, calico-system. The system namespace used should not be present in exclude_namespaces
# collect_system_pod_logs = ["kube-system:coredns"]
[log_collection_settings.stderr]
# Default value for enabled is true
enabled = true
# exclude_namespaces setting holds good only if enabled is set to true
# kube-system,gatekeeper-system log collection are disabled by default in the absence of 'log_collection_settings.stderr' setting. If you want to enable kube-system,gatekeeper-system, remove them from the following setting.
# If you want to continue to disable kube-system,gatekeeper-system log collection keep the namespaces in the following setting and add any other namespace you want to disable log collection to the array.
# In the absence of this configmap, default value for exclude_namespaces = ["kube-system","gatekeeper-system"]
exclude_namespaces = ["gatekeeper-system"]
# If you want to collect logs from only selective pods inside system namespaces add them to the following setting. Provide namespace:controllerName of the system pod. NOTE: this setting is only for pods in system namespaces
# Valid values for system namespaces are: kube-system, azure-arc, gatekeeper-system, kube-public, kube-node-lease, calico-system. The system namespace used should not be present in exclude_namespaces
# collect_system_pod_logs = ["kube-system:coredns"]