Skip to content

Commit

Permalink
improve doc
Browse files Browse the repository at this point in the history
  • Loading branch information
vlad committed Feb 3, 2021
1 parent 1dbc024 commit bb831b6
Showing 1 changed file with 33 additions and 11 deletions.
44 changes: 33 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,36 +2,47 @@

Приложение разворачивается при помощи Kubernetes.

<br/>
---

### Общая схема взаимодействия

![Общая схема взаимодействия](./schema.png)

Состоит из 5 микросервисов:
- **[Admin Dashboard](https://github.com/pvelx/message-dashboard-demo)** - панель администратора для доступа к API сервиса Message. Интерфейс построен на базе фреймворка Vue.
- **[Message service](https://github.com/pvelx/message-service-demo)** - отвечает за управление сообщениями. Создание, удаление, отложенная отправка. Написан на базе фреймворка Symfony 5 (PHP).
- **Broker** - брокер сообщений RabbitMQ для асинхронного взаимодействия.
- **Monitoring** - мониторинг сервиса Trigger. Отображаемые метрики описаны [тут](https://github.com/pvelx/triggerhook#%D0%BF%D1%80%D0%B8%D0%BD%D1%86%D0%B8%D0%BF-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B). Построен на базе InfluxDb + Grafana.
- **[Trigger service](https://github.com/pvelx/trigger-service-demo)** - сервис реализует механизм отложенного выполенения задач. Построен на безе [Trigger Hook](https://github.com/pvelx/triggerhook).

<br/>
---

### Локальное развертывание

#### Прежде всего должны быть установлены следующие приложения:
#### Предварительные требования
Прежде всего должны быть установлены следующие приложения:
- docker
- kubectl
- minikube
- git

Для MacOs в качесве драйвера лучше дополнительно установить virtualbox или parallels. Docker в качестве драйвера на данной системе может работать медленно.

#### Запустите виртуальную машину для приложения:
<br/>

#### Запуск
Вы можете использовать не стандартный драйвер, например, virtualbox или parallels.
```bash
minikube start
```
Вы можете использовать другой драйвер, например, virtualbox или parallels:
или
```bash
minikube start --vm-driver=parallels
```
#### Клонирование репозиториев проекта:

<br/>

Клонирование репозиториев проекта:
```bash
mkdir trigger-hook-demo && cd trigger-hook-demo

Expand All @@ -40,30 +51,36 @@ git clone https://github.com/pvelx/k8s-message-demo.git
cd k8s-message-demo && ./download.sh
```

#### Развертывание на виртуальной машине:
<br/>

Развертывание на виртуальной машине:
```bash
./deploy.sh
```
Это может занять несколько минут.

#### Добавление в файл /etc/hosts URLs сервисов
<br/>

Для доступа сервисам с локальной машины нужно выполнить:
```bash
./update_hosts.sh
```
С развернутого хоста стануд доступны сервисы по ссылкам:
С развернутого хоста станут доступны сервисы по ссылкам:
- [dashboard.message.com](http://dashboard.message.com)
- [api.message.com](http://api.message.com)
- [monitoring.message.com](http://monitoring.message.com)
- [rabbitmq.message.com](http://rabbitmq.message.com)
login:rabbitmq
password:secret

#### Открытие приборной панели Kubernetes
<br/>

Открытие приборной панели Kubernetes:
```bash
minikube dashboard
```

<br/>

#### Пересборка сервисов
После изменений кода в одном из сервисов нужно будет его пересобрать:

Expand All @@ -79,11 +96,16 @@ minikube dashboard
./build.sh message-dashboard
```

<br/>

#### Удаление
Для удаления сервисов из виртуальной машины можно использовать:
```bash
./undeploy.sh
```

<br/>

Для полного удаления:
```bash
minikube stop
Expand Down

0 comments on commit bb831b6

Please sign in to comment.