1. Введение
Github: https://github.com/codecentric/spring-boot-admin
Официальный документ: http://codecentric.github.io/spring-boot-admin/1.5.7/ (этот документ является документом с версией 1.5.7)
Приложения регистрируются в нашем клиенте Admin Admin Spring (через HTTP) или обнаруживаются с использованием Spring Cloud ® (EG Eureka, Consul).
В официальном документе упоминается, что использование мониторинга Spring Boot Admin Admin требует службы сервера Admin Boot Spring, а другие контролируемые службы являются клиентом Admin Spring Boot, или служба мониторинга проводится через компоненты регистрации и обнаружения услуг, такие как Eureak и Consul в Spring Cloud. Таким образом, нет необходимости сознательно настраивать соответствующие отслеживаемые службы как клиент, просто зарегистрируйтесь в Eureka или консул.
Примечание. Эта статья основана на Spring Cloud Eureka как компоненте обнаружения регистрации услуг для реализации мониторинга услуг. Служба Эврики существует заранее. Кроме того: если вы не используете Eureka, вам нужно представить банки клиентов в контролируемой службе. Для получения подробной информации, пожалуйста, обратитесь к официальной документации выше. *
2. Создание сервера сервера Admin Spring Boot
Сначала создайте загрузочный проект Spirng, который можно быстро построить через http://start.spring.io/.
1. Добавить зависимости сервера сервера Admin Spring
Pom.xml
<DepeCtiendions> <Dependency> <groupId> de.codecentric </GroupId> <ArtifactId> Spring-boot-admin-starter-server </artifactid> <sersive> 1.5.7 </version> </depertive> </degestined>
2. Добавить аннотацию @EnableAdminServer , чтобы включить мониторинг
@Configuration@enableAutoConfiguration@enableDminSerVerpublic Class SpringBootAdminApplication {public static void main (string [] args) {SpringApplication.run (SpringBootAdminApplication.class, args); }}3. Зарегистрировать Spring Boot Admin Server в Eureka
Добавить зависимости Eureka
Pom.xml
<Depective> <groupid> org.springframework.cloud </GroupId> <ArtifactId> Spring-Cloud-Starter-eureka </artifactid> </dependent>
Добавить @EnableDiscoveryClient , чтобы включить обнаружение обслуживания
@Configuration@enableAutoConfiguration@enabledIscoveryClient@eNableDminSerVerPublic 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/# Выключите безопасность Boot Actuator, в противном случае.
Запустите проект и посетите IP: Port, чтобы ввести управляемую страницу
Как показано на картинке:
Элементы, показанные на рисунке, представляют собой услуги, зарегистрированные в Eureka, а элементы контролируются путем регистрации Spring Boot Admin Server в Eureka.
3. Настройки конфигурации
1. Войдите в пользовательский интерфейс
Служба управления администратором не имеет никаких мер безопасности, и любой может получить к нему доступ, зная IP и порт, что очень небезопасно, и Spring Boot Admin также предоставляет страницу входа в систему. Нужно использовать с помощью Spring Security.
Добавить зависимости пользовательского пользовательского интерфейса Spring Boot:
<depervice> <groupid> de.codecentric </GroupId> <strifactid> Spring-boot-admin-server-ui-login </artifactid> <sersive> 1.5.7 </version> </dependency>
Добавить Spring Security зависимости:
<Depective> <groupid> org.springframework.boot </GroupId> <artifactid> Spring-Boot-Starter-Security </artifactid> </dependency>
Добавьте код конфигурации в класс запуска проекта:
пакет com.aspire.springbootadmin; import de.codecentric.boot.admin.config.enableadminserver; import org.springframework.boot.springApplication; импорт org.springframe.boot.autoconfigure.enableautoconfiguration; org.springframework.cloud.client.discovery.enablediscoveryclient; Импорт org.springframework.context.annotation.configuration; импорт org.springframework.security.config.annotation.web.builders.httpsecurity; импорт org.springframework.security.config.annotation.web.configuration.websecurityConfigurerAdapter;@configuration@enyableautoconfiguration@enablediscoveryclient@enableadminserverpublic class class SpringApplication.Run (SpringBootAdminApplication.class, args); } @Configuration Public Static Class SecurityConfig Extends WebseCurityConfigurerAdapter {@Override Protected void Configure (httpsecurity http) Throws Exception {// Страница с формой логаризма обслуживается /login.html и выполняет пост /login. http.formlogin (). // пользовательский интерфейс выполняет сообщение в/вход в систему http.logout (). Logouturl ("/logout"); // пользовательский интерфейс в настоящее время не поддерживает CSRF http.csrf (). Disable (); // Запросы на страницу входа и статические активы разрешены http.authorizerequests () .antmatchers ("/login.html", "/**/*. // ... и любой другой запрос должен быть разрешен http.authorizerequests (). Antmatchers ("/**"). Authenticated (); // включить так, чтобы клиенты могли аутентифицировать подлинность через HTTP Basic для регистрации http.httpbasic (); }}}Добавить файл конфигурации
Безопасность: Пользователь: Имя: Пароль администратора: 123123 Основная: включена: false
Страница для входа появится при снова получить доступ
Введите имя пользователя и пароль, настроенные в конфигурации, и нажмите «Вход», чтобы входить в систему. После входа в навигационную панель будет дополнительная кнопка выхода. После нажатия вы вернетесь на страницу входа в систему.
2. Информация о версии клиентского приложения
Чтобы отобразить версию в списке приложений, используйте плагин Maven's build-info и добавьте плагин в файл pom.xml
<build> <plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>build-info</goal> </goals> </execution> </executions> </plugin> </plugin> </plugins></build>
Как показано на рисунке: если ничего не добавлено, это не будет отображаться.
3. Клиентское приложение JMX Management Management
Чтобы взаимодействовать с JMX-бобами в интерфейсе администратора, вы должны включить Jolokia в ваше приложение. Добавить зависимости POM:
<Dependency> <groupid> org.jolokia </GroupId> <artifactid> jolokia-core </artifactid> </deperiancy>
После добавления, вы можете увидеть меню JMX в контролируемом меню декорации приложения.
4. Клиентское приложение добавляет журнал журнала
Конфигурация в свойствах клиентского приложения заключается в следующем:
Регистрация: path:/xxx/xxx/xxx/
Укажите путь вывода журнала, а затем можно отобразить журнал:
5. Поддержка пользовательского интерфейса Hystrix
Admin Spring Boot также может интегрировать дисплей Hystrix. Предпосылка заключается в том, что клиент должен включить Hystrix.
Добавление зависимостей в Spring Boot Admin Server
<Depective> <groupid> de.codecentric </GroupId> <ArtifactId> Spring-boot-admin-server-ui-hystrix </artifactid> <sersive> 1.4.6 </version> </depertive>
Добавить узел конечных точек в файл конфигурации сервера
Скопируйте код следующим образом: spring.boot.admin.routes.endpoints: env, метрики, трассировка, дамп, jolokia, info, configprops, трассировки, logfile, обновление, левша, ликибаза, Heapdump, Activiti, Hystrix.stream
Нажмите, чтобы открыть клиент Hystrix, нажмите на меню Hystrix, чтобы увидеть информацию Hystrix
6. Турбинная поддержка пользовательского интерфейса
Администратор Spring Boot также может интегрировать дисплей турбины.
Присоединяйтесь к зависимостям:
<depervice> <groupid> de.codecentric </GroupId> <ArtifactId> Spring-boot-admin-server-ui-turbine </artifactid> <sersive> 1.5.7 </version> </depertive>
Настройте кластер и расположение турбины. Кластеры - это те же кластеры, настроенные в службе Turbin. Место должно указать имя службы турбины, зарегистрированное в Эврике. Например, имя вашего турбинного обслуживания является турбинным сервером, а конфигурация, как показано ниже. (Фактически, Spring Boot Boot Admin Server может рассматриваться как служба турбины. Если служба турбины существовала ранее, его можно настроить непосредственно здесь. Если служба турбин не существует, добавьте связанные с турбиной зависимости и конфигурации к Spring Boot Admin Server, так что Spring Boot Boot Admin Server Service.)
spring.boot.admin.turbine: кластеры: по умолчанию Расположение: турбин-сервер
Наконец -то добавьте конечную точку Turbine.stream в файле конфигурации
Скопируйте код следующим образом: Spring.boot.admin.routes.endpoints: Env, метрики, трассировку, дамп, Jolokia, Info, ConfigProps, Trace, Logfile, Refresh, Flyway, Liquibase, Heapdump, Activiti, Hystrix.stream, Turbine.stream
интерфейс
В панели навигации будет дополнительная вкладка турбины, и вы можете увидеть информацию о турбине, нажав.
7. Уведомление по электронной почте
Spring Boot Admin также поддерживает уведомления по электронной почте.
Добавить зависимости
<Depective> <groupId> org.springframework.boot </GroupId> <artifactid> Spring-Boot-Starter-mail </artifactid> </dependency>
Добавьте конфигурацию по электронной почте Spring (я помню небольшую яму здесь. Я начал использовать почтовый ящик QQ, но я не мог подключиться к SMTP -серверу почтового ящика QQ. Я проверил причину, потому что Tencent запретил IP IP -адрес компании, но не было проблем с подключением к сети 4G).)
Весна: почта: хост: mmmail.aspire-tech.com Пароль: XXXXX Порт: 25 Имя пользователя: XXXX
Добавить конфигурацию почты администратора Spring Boot
Boot: Admin: уведомление: mail: to: [email protected] с: [email protected] включено: true: true
Эффект, как показано на рисунке. Будут уведомления по электронной почте, когда служба мониторинга будет запущена или остановлена.
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.