1. مقدمة
Github: https://github.com/codecentric/spring-boot-admin
المستند الرسمي: http://codecentric.github.io/spring-boot-admin/1.5.7/ (هذا المستند هو مستند مع الإصدار 1.5.7)
يسجل التطبيقات مع عميل SPRING Boot Admin (عبر HTTP) أو يتم اكتشافه باستخدام Spring Cloud ® (على سبيل المثال ، القنصل).
تشير المستند الرسمي إلى أن استخدام مراقبة مسؤول Boot Spring يتطلب خدمة خادم مسؤول Boot Foot ، والخدمات الأخرى التي يتم مراقبتها هي عميل من مسؤولي التمهيد الربيعي ، أو يتم إجراء خدمة المراقبة من خلال مكونات تسجيل الخدمة ومكونات الاكتشاف مثل Eureak و Consul في Spring Cloud. وبهذه الطريقة ، ليست هناك حاجة لإعداد الخدمات المراقبة ذات الصلة عن عمد كعميل ، ما عليك سوى التسجيل في Eureka أو Consul.
ملاحظة: تعتمد هذه المقالة على Spring Cloud Eureka كمكون اكتشاف تسجيل الخدمة لتحقيق مراقبة الخدمات. خدمة يوريكا موجودة مقدما. بالإضافة إلى ذلك: إذا لم تستخدم Eureka ، فأنت بحاجة إلى تقديم جرار العملاء في الخدمة التي يتم مراقبتها. لمزيد من التفاصيل ، يرجى الرجوع إلى الوثائق الرسمية أعلاه. *
2. إنشاء خدمة خادم مسؤول التمهيد الربيع
قم أولاً بإنشاء مشروع SPIRNG Boot ، والذي يمكن بناؤه بسرعة من خلال http://start.spring.io/.
1. أضف تبعيات خادم مسؤول التمهيد الربيعي
pom.xml
<ependencies> <Rependency> <roupiD> de.codecentric </groupId> <intifactid> Spring-boot-boot-admin-starter-server </stifactid> <sored> 1.5.7 </version> </redence> </reperence>
2. أضف @EnableAdminServer التعليق التوضيحي لتمكين المراقبة
@configuration@enableeautoconfiguration@enableadminserverpublic class SpringBootAdMinapplication {public static void main (string [] args) {springapplication.run (springbootadminapplication.class ، args) ؛ }}3. سجل خادم مسؤول التمهيد الربيعي إلى يوريكا
إضافة تبعيات يوريكا
pom.xml
<Rependency> <roupeD> org.springframework.cloud </rougiD> <insifactid> spring-cloud-starter-eureka </shintifactid> </premed>
إضافة @EnableDiscoveryClient لتمكين اكتشاف الخدمة
@configuration@enableeautoconfiguration@enableScoveryClient@enableadminserverpublic class SpringBootAdMinapPlication {public static void main (string [] args) {springapplication.run (springbootadminapplication.class ، args) ؛ }}أضف تكوين تسجيل خدمة Eureka
eureka: مثيل: Leaserenewalintervalinseconds: 10 العميل: registryFetchInterValsEconds: 5 serviceurl: defaultZone: http://10.1.3.54:8761/eureka/# إيقاف أمن مشرك التمهيد الربيعي ، وإلا فإن الوصول إلى المسار الحساس هو 401 مانس.
ابدأ المشروع وزيارة IP: منفذ لإدخال الصفحة المدارة
كما هو موضح في الصورة:
العناصر الموضحة في الشكل هي جميع الخدمات المسجلة لدى Eureka ، ويتم مراقبة العناصر عن طريق تسجيل خادم Admin Spring Boot إلى Eureka.
3. إعدادات التكوين
1. تسجيل الدخول إلى واجهة المستخدم
لا تحتوي خدمة إدارة المشرف على أي تدابير أمان ، ويمكن لأي شخص الوصول إليها من خلال معرفة IP والمنفذ ، وهو أمر غير آمن للغاية ، كما يوفر Admin Spring Boot صفحة تسجيل دخول. يجب استخدامها مع أمن الربيع.
أضف تبعيات واجهة المستخدم للاستعداد الحذاء:
<Rependency> <roupeD> de.codecentric </rougiD> <StifactId> Spring-Boot-Admin-Server-Ui-Login </shintifactid> <الإصدار> 1.5.7 </الإصدار> </التبعية>
أضف تبعيات أمن الربيع:
<Rependency> <roupiD> org.springframework.boot </rougiD> <StifactId> Spring-Boot-Starter-Security </stifactid> </perendency>
أضف رمز التكوين إلى فئة بدء تشغيل المشروع:
package com.aspire.springbootadmin ؛ import de.codecentric.boot.admin.config.enableadminserver ؛ استيراد org.springframework.boot.springapplication ؛ استيراد org.springframework.boot.autoconfigure.enableauconfiguration ؛ org.springframework.cloud.client.discovery.enablediscoveryClient ؛ استيراد org.springframework.context.annotation.configuration org.springframework.security.config.annotation.web.configuration.websecurityConfigureRadapter ؛@configuration@enableeautoConfiguration@enableScoveryClient inableadminserverpublic class springbootadmplication {public static void main (] springapplication.run (SpringBootAdMinapplication.class ، args) ؛ } configuration public static class securityconfig يمتد websecurityConfigureRadapter {Override contected configure (httpsecurity http) يلقي استثناء {// page مع نموذج تسجيل الدخول كما /login.html ويقوم بوضع منشور على /login http.formlogin (). logInPage ("/login.html"). logInProcessingUrl ("/login"). permanly () ؛ . // لا يدعم واجهة المستخدم حاليًا CSRF http.csrf (). disable () ؛ // طلبات صفحة تسجيل الدخول والأصول الثابتة مسموح بها http.authorizerequests () .antmatchers ("/login.html" ، "/**/*. // ... وأي طلب آخر يجب أن يكون مصرحًا به http.authorizerequests (). antmatchers ("/**"). مصادقة () ؛ // تمكين بحيث يمكن للعملاء المصادقة عبر HTTP Basic لتسجيل http.httpbasic () ؛ }}}إضافة ملف تكوين
الأمان: المستخدم: الاسم: كلمة مرور المسؤول: 123123 الأساسي: تمكين: خطأ
ستظهر صفحة تسجيل الدخول عند الوصول مرة أخرى
أدخل اسم المستخدم وكلمة المرور التي تم تكوينها في التكوين وانقر فوق تسجيل الدخول لتسجيل الدخول. بعد الدخول ، سيكون هناك زر خروج إضافي على شريط التنقل. بعد النقر ، ستعود إلى صفحة تسجيل الدخول.
2. معلومات إصدار تطبيق العميل
لعرض الإصدار في قائمة التطبيقات ، استخدم المكون الإضافي لـ Maven's build-info وأضف المكون الإضافي في ملف pom.xml
<Build> <ultion> <clupin> <roupiD> org.springframework.boot </rougeid> <StifactId> Spring-boot-maven-plugin </stifactid> <evelopments> <evelop> <irod> <irod>
كما هو موضح في الشكل: إذا لم تتم إضافة أي شيء ، فلن يتم عرضه.
3. تطبيق العميل JMX Bean Management
للتفاعل مع jmx-beans في واجهة المسؤول ، يجب عليك تضمين jolokia في التطبيق الخاص بك. أضف تبعيات POM:
<Rependency> <roupiD> org.jolokia </rougeid> <StifactId> jolokia-core </artifactid> </premedency>
بعد إضافته ، يمكنك رؤية قائمة JMX في قائمة Detial Application المراقبة.
4. تطبيق العميل يضيف سجل السجل
التكوين في خصائص تطبيق العميل هو كما يلي:
التسجيل: المسار:/xxx/xxx/xxx/
حدد مسار إخراج السجل ، ثم يمكن عرض السجل:
5. دعم واجهة المستخدم Hystrix
يمكن لـ Spring Boot Admin أيضًا دمج شاشة Hystrix. الفرضية هي أن العميل يحتاج إلى تمكين Hystrix.
إضافة تبعيات في خادم مسؤول التمهيد الربيعي
<Rependency> <roupeD> de.codecentric </rougiD> <StifactId> Spring-boot-Admin-Server-Ui-Hystrix </shintifactid> <sored> 1.4.6 </version> </dependency>
أضف عقدة نقاط النهاية في ملف تكوين الخادم
انسخ الرمز على النحو التالي: spring.boot.admin.routes.endpoints: env ، المقاييس ، تتبع ، تفريغ ، jolokia ، المعلومات ، التكوين ، تتبع ، ملف تسجيل ، تحديث ، flyway ، liquibase ، heapdump ، activiti ، hystrix.stream
انقر لفتح عميل Hystrix ، انقر فوق قائمة Hystrix لمشاهدة معلومات Hystrix
6.Turbine دعم واجهة المستخدم
يمكن لـ Spring Boot Admin أيضًا دمج شاشة التوربينات.
انضم إلى التبعيات:
<Rependency> <roupeD> de.codecentric </rougiD> <StifactId> Spring-Boot-Admin-Server-Ui-Turbine </stifactid> <الإصدار> 1.5.7 </الإصدار> </التبعية>
تكوين الكتلة وموقع التوربينات. المجموعات هي نفس المجموعات التي تم تكوينها في خدمة التوربينات. يحتاج الموقع إلى تحديد اسم خدمة التوربينات المسجل في Eureka. على سبيل المثال ، اسم خدمة التوربين الخاص بك هو خادم التوربينات ، والتكوين كما هو موضح أدناه. (في الواقع ، يمكن اعتبار خادم مسؤول Boot Spring بمثابة خدمة توربينات. إذا كانت خدمة التوربينات موجودة من قبل ، فيمكن تكوينها مباشرة هنا. إذا لم تكن خدمة التوربينات موجودة ، أضف التبعيات والتكوينات المرتبطة بالتوربينات إلى خادم مسؤول التمهيد الربيعي ، بحيث يصبح خادم مسؤول Boot Spring خدمة توربين.)
spring.boot.admin.turbine: المجموعات: الافتراضي الموقع: خادم التوربين
أضف أخيرًا نقطة النهاية لـ Turbine.stream في ملف التكوين
انسخ الرمز على النحو التالي: spring.boot.admin.routes.endpoints: env ، المقاييس ، تتبع ، تفريغ ، jolokia ، معلومات ، تكوين ، تتبع ، سجل ، تحديث ، flyway ، liquibase ، heapdump ، activiti ، hystrix.stream ، turbine.stream
واجهة
ستكون هناك علامة تبويب توربينات إضافية في شريط التنقل ، ويمكنك رؤية معلومات التوربينات بالنقر.
7. إشعار البريد الإلكتروني
يدعم مسؤول Boot Spring أيضًا إشعارات البريد الإلكتروني.
إضافة التبعيات
<Rependency> <roupiD> org.springframework.boot </rougiD> <intifactid> spring-boot-starter-mail </intifactid> </perendency>
أضف تكوين البريد الإلكتروني الربيعي (أتذكر حفرة صغيرة هنا. لقد بدأت في استخدام صندوق بريد QQ ، لكن لم أستطع الاتصال بخادم SMTP لصندوق بريد QQ. لقد تحقق من السبب لأن Tencent حظر IP للشركة ، ولكن لم تكن هناك مشكلة في الاتصال بشبكة 4G.)
الربيع: البريد: المضيف: mmmail.aspire-tech.com كلمة المرور: xxxxx المنفذ: 25 اسم المستخدم: xxxx
أضف تكوين بريد مسؤول التمهيد الربيعي
التمهيد: المسؤول: إخطار: البريد: إلى:
التأثير كما هو موضح في الشكل. سيكون هناك إشعارات بريد إلكتروني عند بدء تشغيل خدمة المراقبة أو إيقافها.
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.