1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/CloudWise-OMP

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
app_publish.md 11 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 09:16 1b407f0

Конфигурационные файлы, имена файлов должны совпадать с именами сервисов

│ └── omp_component.yaml # конфигурационный файл сервиса omp_agent, имя файла должно совпадать с именем сервиса
├── omp_server-0.1.0-5d1ac8ce87323fc399506d1335ae5c98.tar.gz # архив сервиса omp_server, разделён дефисом, первое слово — имя сервиса, должно совпадать с именем сервиса, формат: {service_name}-{service_version}-{others}-{package_md5}.tar.gz ├── omp_web-0.1.0-5d1ac8ce87323fc399506d1335ae5c98.tar.gz # архив сервиса omp_web
├── omp_component-0.1.0-5d1ac8ce87323fc399506d1335ae5c98.tar.gz # архив сервиса omp_agent
└── omp.yaml # определение конфигурационного файла продукта, имя файла должно совпадать с названием продукта


Среди сервисов на примере omp_server:

```shell
$ tree omp_server
omp_server    # каталог после распаковки архива сервиса, совпадает с именем сервиса
├── bin     # каталог управляющих скриптов сервиса, запуск, остановка и т. д.
│   └── omp_server    # управляющий скрипт сервиса, совпадает с именем сервиса
├── omp_server.yaml    # конфигурационный файл сервиса, должен совпадать с конфигурационным файлом продукта
└── scripts            # каталог скриптов установки, обновления
    ├── init.py        # скрипт инициализации
    ├── install.py     # скрипт установки
    └── update.py      # скрипт обновления

3.2. Правила именования архивов

Используйте формат {name}-{version}-{others}-{package_md5}.tar.gz

  1. name: название архива, рекомендуется использовать символы: английские буквы, цифры, _.
  2. version: версия архива, рекомендуется использовать символы: английские буквы, цифры, ..
  3. others: дополнительная информация, рекомендуется использовать символы: английские буквы, цифры, ..
  4. package_md5: значение MD5 архива.

Например: omp-0.1.0-8e955b24fefe7061eb79cfc61a9a02a1.tar.gz.

3.3. Описание конфигурационных файлов yaml

При публикации продукта типа «прикладной сервис» необходимо настроить конфигурационные файлы для продукта и для каждого сервиса в продукте.

3.3.1. Конфигурационный файл продукта (yaml)

# тип определяет продукт как product (тип: string)
kind: product
# название продукта, должно совпадать с названием каталога продукта и конфигурационного файла, рекомендуется использовать символы: английские буквы, цифры, _ (тип: string).
name: omp
# отображаемая версия после загрузки, рекомендуется использовать символы: цифры, буквы, _, . (тип: string).
version:
# описание продукта, не более 256 символов, рекомендуется писать краткое и точное описание (тип: string).
description: "OperationManagementPlatform (OMP)  это платформа управления службами, которая обеспечивает надёжные и удобные способы управления установкой и управлением служб."
# список меток компонентов, рекомендуется устанавливать точные метки для компонентов в соответствии с их функциями (тип: list[string,string...]).
labels:
  - omp
# список зависимостей продукта, если нет зависимостей от других продуктов, можно оставить пустым (тип: list[map,map...]).
dependencies:

# список сервисов в продукте, убедитесь, что все пакеты в списке присутствуют в каталоге и имеют одинаковые имена (тип: list[map,map...])
service:
    # имя сервиса, должно совпадать с именем пакета (тип: string).
  - name: omp_server
    # версия сервиса, должна совпадать с версией пакета (тип:string).
    version: 0.1.0
  - name: omp_web
    version: 0.1.0
  - name: omp_component
    version: 0.1.0

3.3.2. Конфигурационный файл сервиса (yaml)

# определяет тип сервиса как service (тип: string).
kind: service
# отображает имя сервиса на платформе, должно совпадать с именем каталога сервиса (рекомендуется использовать символы: английские буквы, цифры, _) (тип: string).
name: omp_server
# отображает версию сервиса на платформе после загрузки (рекомендуется использовать символы: цифры, буквы, _, .) (тип: string).
version: 0.1.0
# описывает сервис (рекомендуется не более 256 символов) (тип: string).
description: «Описание сервиса...»
# указывает, нужно ли запускать сервис после установки (тип: boolean).
auto_launch: true
# указывает, является ли сервис базовым компонентом среды, например JDK (тип: boolean).
base_env: flase
# определяет номера портов сервиса, если порты не используются, можно оставить пустыми (тип:list[map,map...]).
ports:
    # название порта, отображается при установке (тип: string).
  - name: сервисный порт
    # протокол порта, поддерживает TCP/UDP
    protocol: TCP
    # английское название порта для использования в установочном скрипте (поддерживает английские буквы, цифры и _) (тип: string).
    key: service_port  # примечание: service_port — зарезервированное ключевое слово, обозначающее порт предоставления услуг.
    # номер порта по умолчанию, используется при установке (тип: int).
    default: 19001
# конфигурация мониторинга сервиса, определяет способ мониторинга после установки сервиса, если мониторинг не требуется, можно оставить пустым (тип: map).
monitor:
  # имя процесса мониторинга, например «service_a», если процесс service_a не существует, платформа отправит предупреждение (тип: string), мониторинг не требуется, можно оставить пустым.
  process_name:  ""
  # номер порта мониторинга, используйте переменные из портов, мониторинг не требуется, можно оставить пустым (тип: {string}).
  metric_port: {service_port}
---
# определяет зависимости сервиса, если сервису не нужны другие компоненты, можно оставить пустым (тип: list[map,map..]).
dependencies:
  - name: mysql
    version: 5.7.31
  - name: redis
    version: 5.0.1
  - name: python
    version: 3.8.3
# минимальные требования к ресурсам для сервиса (тип:map).
resources:
  # минимальное требование к процессору, 1000m обозначает одно ядро (тип:string).
  cpu: 1000m
  # минимальная потребность в памяти, 500m означает 500 мегабайт памяти (тип:string).
  memory: 500m
---
# параметры, необходимые для установки сервиса, эти параметры будут переданы в установочный скрипт (тип:list[map,map...]).
install:
    # китайское описание параметра, будет отображаться при установке сервиса пользователем (тип: string).
  - name: «каталог установки»
    # ключ параметра, значение будет передано в установочный скрипт (тип:string).
    key: base_dir
    # значение по умолчанию для ключа (тип: stirng).
    default: "{data_path}/omp_server"  # примечание: {data_path} — заполнитель для корневого каталога хоста, не следует заменять другими символами.
#  - name: "JVM settings"
#    key: jvm
#    default: "-XX:MaxPermSize=512m -Djava.awt.headless=true"
# путь к управляющему скрипту и каталогу сервиса (относительно) (тип:map).
control:
  # путь запускающего скрипта, оставьте пустым, если его нет, рекомендуется назвать скрипт так же, как сервис (тип:string).
  start: "./bin/omp_server start"
  # путь останавливающего скрипта, оставьте пустым, если его нет, рекомендуется назвать скрипт так же, как сервис (тип:stirng).
  stop: "./bin/omp_server stop"
  # путь скрипта перезапуска, оставьте пустым, если его нет, рекомендуется назвать скрипт так же, как сервис (тип:stirng).
  restart: "./bin/omp_server restart"
  # путь скрипта перезагрузки, оставьте пустым (тип:stirng).
  reload:
  # путь установочного скрипта, обязательно (тип:stirng).
  install: "./scripts/install.py"
  # путь инициализирующего скрипта, обязательно (тип:stirng).
  init:  "./scripts/init.py"

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/CloudWise-OMP.git
git@api.gitlife.ru:oschina-mirror/CloudWise-OMP.git
oschina-mirror
CloudWise-OMP
CloudWise-OMP
main