Отримайте 50 ГБ безкоштовно!Зареєструйте безкоштовний акаунт та почніть міграцію сьогодні — кредитна картка не потрібна.Зареєструватися →
GodwitGodwit Sync
ГоловнаЦіниЗавантаженняДокументація
Кабінет клієнтаПочати
Почати
Довідник конфігураційного файлу

Довідник конфігураційного файлу

Godwit Sync підтримує конфігураційні файли YAML як альтернативу прапорцям CLI. Використовуйте --config (-f) для завантаження конфігураційного файлу.

Базове використання

godwit sync --config my-sync.yml
godwit sync -f my-sync.yml

# Override a config value with a CLI flag
godwit sync -f my-sync.yml --parallel 8

Пріоритет CLI

Прапорці CLI завжди мають пріоритет над значеннями конфігураційного файлу. Якщо прапорець встановлено в командному рядку, відповідне значення конфігурації ігнорується.

Структура конфігураційного файлу

Конфігураційний файл використовує формат YAML з такими секціями верхнього рівня:

Джерело

Налаштування endpoint джерела — локальний шлях або S3 bucket.

YAML ключТипПрапорець CLIОпис
source.urlstring--sourceШлях джерела або S3 URI (s3://bucket/prefix)
source.endpointstring--source-endpointS3 API endpoint (host:port)
source.access_keystring--source-access-keyS3 ключ доступу
source.secret_keystring--source-secret-keyS3 секретний ключ
source.session_tokenstring--source-session-tokenНеобов’язковий токен сесії для тимчасових облікових даних
source.regionstring--source-regionS3 регіон
source.securebool--source-secureВикористовувати TLS для S3 з’єднань
source.disable_keepalivebool--source-disable-keepaliveВимкнути HTTP keep-alive

Призначення

Налаштування endpoint призначення — локальний шлях або S3 bucket.

YAML ключТипПрапорець CLIОпис
destination.urlstring--destinationШлях призначення або S3 URI
destination.endpointstring--destination-endpointS3 API endpoint (host:port)
destination.access_keystring--destination-access-keyS3 ключ доступу
destination.secret_keystring--destination-secret-keyS3 секретний ключ
destination.session_tokenstring--destination-session-tokenНеобов’язковий токен сесії для тимчасових облікових даних
destination.regionstring--destination-regionS3 регіон
destination.securebool--destination-secureВикористовувати TLS для S3 з’єднань
destination.disable_keepalivebool--destination-disable-keepaliveВимкнути HTTP keep-alive

Політика

Політики порівняння та пропуску для фільтрації об’єктів.

YAML ключТипПрапорець CLIОпис
policy.comparestring--compare-policyПолітика порівняння (size,etag або size,mtime)
policy.skipstring[]--skipСписок суфіксів або шаблонів для пропуску

Параметри

Налаштування поведінки передачі — паралелізм, повтори, перезапис.

YAML ключТипПрапорець CLIОпис
options.parallelint--parallelКількість паралельних воркерів синхронізації
options.plan_parallelint--plan-parallelКількість паралельних воркерів планування
options.buffer_multiplierint--buffer-multiplierМножник довжини черги копіювання
options.multipart_thresholdint64--multipart-thresholdПоріг multipart завантаження в байтах
options.overridebool--overrideПерезаписати існуючі об’єкти призначення
options.skip_tagsbool--skip-tagsПропустити читання тегів об’єктів з джерела
options.retryint--retryМаксимум повторів на об’єкт
options.retry_backoffstring--retry-backoffБазова затримка між повторами

Запуск

Відстеження запуску — ID запуску, драйвер стану та шлях до файлу стану.

YAML ключТипПрапорець CLIОпис
run.run_idstring--run-idІдентифікатор запуску для відстеження
run.state_driverstring--state-driverДрайвер бекенду стану
run.state_pathstring--state-pathШлях до файлу бази даних стану
run.logs_dirstring--logs-dirДиректорія для логів спостережуваності

Вивід

Режим виводу в консоль — UI, стислий або тихий.

YAML ключТипПрапорець CLIОпис
output.uibool--uiУвімкнути детальне логування в консолі
output.briefbool--briefПоказувати лише основні повідомлення прогресу
output.silentbool--silentПридушити весь вивід консолі

Ліцензія

Шлях до файлу ліцензії або рядок ліцензії.

YAML ключТипПрапорець CLIОпис
license.filestring--license-fileШлях до файлу ліцензії
license.inlinestring--licenseBase64-рядок ліцензії

Обмеження швидкості

Контроль дросселювання — RPS, ширина каналу та одночасність.

YAML ключТипПрапорець CLIОпис
rate_limit.rpsfloat64--rpsЛіміт запитів на секунду (0 = вимкнено)
rate_limit.read_bpsint64--read-bpsЛіміт байтів читання на секунду (0 = вимкнено)
rate_limit.max_inflightint--max-inflightМаксимум одночасних завантажень (0 = вимкнено)

Статус

HTTP-адреса сервера метрик та статус-ендпоінту.

YAML ключТипПрапорець CLIОпис
status.addrstring--status-addrHTTP-адреса для сервера статусу/метрик

Приклади конфігурацій

Локальна файлова система → S3

Завантаження локальної директорії до S3-сумісного bucket.

source:
  url: "./data"

destination:
  url: "s3://my-bucket/backup"
  endpoint: localhost:9001
  access_key: access_key
  secret_key: secret_key
  secure: false

options:
  parallel: 3

output:
  ui: true

status:
  addr: ":8080"

S3 → Локальна файлова система

Завантаження об’єктів з S3 bucket до локальної директорії.

source:
  url: "s3://my-bucket/data"
  endpoint: localhost:9001
  access_key: access_key
  secret_key: secret_key
  secure: false

destination:
  url: "./downloads"

policy:
  skip:
    - .md5

options:
  parallel: 6

output:
  ui: true

S3 → S3

Копіювання даних між двома S3-сумісними endpoints.

source:
  url: "s3://source-bucket/data"
  endpoint: localhost:9001
  access_key: access_key
  secret_key: secret_key
  secure: false

destination:
  url: "s3://dest-bucket/backup"
  endpoint: localhost:9101
  access_key: access_key
  secret_key: secret_key
  secure: false

policy:
  skip:
    - .md5

options:
  parallel: 9

output:
  ui: true

status:
  addr: ":8080"

Повний приклад (усі секції)

Повний конфігураційний файл з усіма доступними параметрами.

source:
  url: "s3://source-bucket/prefix"
  endpoint: source.storage.example.com
  access_key: SOURCE_ACCESS_KEY
  secret_key: SOURCE_SECRET_KEY
  region: us-east-1
  secure: true

destination:
  url: "s3://dest-bucket/backup"
  endpoint: localhost:9000
  access_key: access_key
  secret_key: secret_key
  secure: false

policy:
  compare: "size,etag"
  skip:
    - .md5
    - .tmp

options:
  parallel: 4
  plan_parallel: 8
  buffer_multiplier: 4
  multipart_threshold: 67108864
  override: false
  skip_tags: false
  retry: 3
  retry_backoff: "1s"

run:
  run_id: "daily-backup"
  state_driver: sqlite
  state_path: "./godwit-sync.state.db"
  logs_dir: "./logs"

output:
  ui: true
  brief: false
  silent: false

license:
  file: "./license.json"

rate_limit:
  rps: 50
  read_bps: 104857600
  max_inflight: 10

status:
  addr: ":8080"

Прапорці лише для CLI

Ці прапорці не мають еквіваленту в конфігураційному файлі та мають передаватися в командному рядку:

  • --config (-f) — Вибирає конфігураційний файл для завантаження
  • --plan-only — Планування передачі без копіювання даних
  • --resume — Відновлення раніше запланованої передачі
  • --register — Реєстрація ліцензії на диск

Довідник CLI

Перегляньте повний список усіх прапорців CLI з типами, значеннями за замовчуванням та описами.

Переглянути довідник CLI
← ПосібникиДовідник CLI →
Godwit Sync

Міграція та синхронізація даних виробничого рівня для великих об'єктних сховищ. Контроль, передбачуваність та безпека у масштабі.

Продукт

  • Ціни
  • Документація

Юридична інформація

  • Умови надання послуг
  • Угода користувача
  • Політика конфіденційності

© 2026 Godwit Sync. Усі права захищено.

Версія v1.0.19