API карт | On-Premise | 2GIS Documentation
On-Premise

Обновление API для работы с картами

  1. Убедитесь, что в реестре Docker находится новый образ сервиса MapGL JS API. См. Релизы сервисов.

  2. Получите новые артефакты для установки.

  3. Ознакомьтесь сo списком критических изменений. Если необходимо, обновите настройки в конфигурационном файле values-mapgl.yaml. См. пример файла в руководстве по установке.

  4. Выполните команду для обновления сервиса:

    helm upgrade --version=1.10.0 --atomic --values ./values-mapgl.yaml mapgl-js-api 2gis-on-premise/mapgl-js-api
    
  5. Проверьте работоспособность сервиса.

Вы можете обновить сервис Tiles API как вместе с его данными (самими тайлами), так и без их обновления.

  1. Убедитесь, что в реестре Docker находится новый образ сервиса Tiles API. См. Релизы сервисов.

    Если вы собираетесь выполнить обновление вместе с данными, убедитесь, что в хранилище артефактов также находится новый набор данных. См. Жизненный цикл артефактов установки.

  2. Получите новые артефакты для установки.

  3. Ознакомьтесь сo списком критических изменений. Если необходимо, обновите настройки в конфигурационном файле values-tiles.yaml. См. пример файла в руководстве по установке.

  4. Выполните команду для обновления сервиса.

    • Чтобы обновить только сервис:
    helm upgrade --version=1.10.0 --atomic --wait --timeout 7200 --values ./values-tiles.yaml tiles-api 2gis-on-premise/tiles-api --set importer.enabled=false
    
    • Чтобы обновить сервис и данные:
    helm upgrade --version=1.10.0 --atomic --wait --timeout 7200 --values ./values-tiles.yaml tiles-api 2gis-on-premise/tiles-api
    
  5. Проверьте работоспособность сервиса.

  1. Убедитесь, что в реестре Docker находится новый образ сервиса Floors API. См. Релизы сервисов.

  2. Получите новые артефакты для установки.

  3. Ознакомьтесь сo списком критических изменений. Если необходимо, обновите настройки в конфигурационном файле values-floors-api.yaml. См. пример файла в руководстве по установке.

  4. Выполните команду для обновления сервиса.

    helm upgrade --version=1.10.0 --atomic --values ./values-floors-api.yaml floors-api 2gis-on-premise/floors-api
    
  5. Проверьте работоспособность сервиса.

Для хранения данных о тайлах сервис использует пространства ключей (keyspace) в Cassandra.

Если настройки безопасности позволяют автоматическое создание пространств ключей, то при обновлении сервиса будет создано новое пространство, а затем сервис переключится на него.

После переключения все данные в прежнем пространстве ключей становятся ненужными. Часть предыдущих пространств можно хранить в качестве резерва, а остальные удалять для экономии места на диске.

Чтобы автоматически удалять старые данные:

  1. В настройке importer.cleaner.enabled укажите значение true.

  2. В настройке importer.cleaner.limit укажите количество предыдущих пространств ключей, которые нужно хранить. Например, 1 означает, что будет оставлено всего одно предыдущее пространство, а все более старые будут удалены. При этом на диске нужно будет зарезервировать как минимум троекратный запас свободного места под пространства ключей (временное, текущее и N предыдущих).

  3. По умолчанию удалённые данные всё ещё будут занимать дисковое пространство в виде снимков (snapshots) в Cassandra. Удалить устаревшие снимки можно вручную с помощью nodetool clearsnapshot, или можно настроить автоматическое удаление через JMX:

    1. Убедитесь, что в вашей конфигурации Cassandra включён удалённый доступ по JMX.
    2. Задайте настройки cassandra.credentials.jmxUser и cassandra.credentials.jmxPassword.
    3. В настройке importer.clearSnapshots укажите значение true.