config.yaml 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. config:
  2. context:
  3. app_user_password:
  4. from: env
  5. env: APP_USER_PASSWORD
  6. client_user_password:
  7. from: env
  8. env: CLIENT_USER_PASSWORD
  9. replicator_user_password:
  10. from: env
  11. env: REPLICATOR_USER_PASSWORD
  12. storage_user_password:
  13. from: env
  14. env: STORAGE_USER_PASSWORD
  15. credentials:
  16. roles:
  17. crud-role:
  18. privileges:
  19. - permissions: [ "execute" ]
  20. lua_call: [ "crud.delete", "crud.get", "crud.upsert" ]
  21. users:
  22. app:
  23. password: '{{ context.app_user_password }}'
  24. roles: [ public, crud-role ]
  25. client:
  26. password: '{{ context.client_user_password }}'
  27. roles: [ super ]
  28. replicator:
  29. password: '{{ context.replicator_user_password }}'
  30. roles: [ replication ]
  31. storage:
  32. password: '{{ context.storage_user_password }}'
  33. roles: [ sharding ]
  34. iproto:
  35. advertise:
  36. peer:
  37. login: replicator
  38. sharding:
  39. login: storage
  40. sharding:
  41. bucket_count: 10000
  42. metrics:
  43. include: [ all ]
  44. exclude: [ vinyl ]
  45. labels:
  46. alias: '{{ instance_name }}'
  47. groups:
  48. storages:
  49. roles:
  50. - roles.crud-storage
  51. - roles.expirationd
  52. - roles.metrics-export
  53. roles_cfg:
  54. roles.expirationd:
  55. cfg:
  56. metrics: true
  57. filer_metadata_task:
  58. space: filer_metadata
  59. is_expired: filer_metadata.is_expired
  60. options:
  61. atomic_iteration: true
  62. force: true
  63. index: 'expire_at_idx'
  64. iterator_type: GT
  65. start_key:
  66. - 0
  67. tuples_per_iteration: 10000
  68. app:
  69. module: storage
  70. sharding:
  71. roles: [ storage ]
  72. replication:
  73. failover: election
  74. database:
  75. use_mvcc_engine: true
  76. replicasets:
  77. storage-001:
  78. instances:
  79. storage-001-a:
  80. roles_cfg:
  81. roles.metrics-export:
  82. http:
  83. - listen: '0.0.0.0:8081'
  84. endpoints:
  85. - path: /metrics/prometheus/
  86. format: prometheus
  87. - path: /metrics/json
  88. format: json
  89. iproto:
  90. listen:
  91. - uri: 127.0.0.1:3301
  92. advertise:
  93. client: 127.0.0.1:3301
  94. storage-001-b:
  95. roles_cfg:
  96. roles.metrics-export:
  97. http:
  98. - listen: '0.0.0.0:8082'
  99. endpoints:
  100. - path: /metrics/prometheus/
  101. format: prometheus
  102. - path: /metrics/json
  103. format: json
  104. iproto:
  105. listen:
  106. - uri: 127.0.0.1:3302
  107. advertise:
  108. client: 127.0.0.1:3302
  109. routers:
  110. roles:
  111. - roles.crud-router
  112. - roles.metrics-export
  113. roles_cfg:
  114. roles.crud-router:
  115. stats: true
  116. stats_driver: metrics
  117. stats_quantiles: true
  118. app:
  119. module: router
  120. sharding:
  121. roles: [ router ]
  122. replicasets:
  123. router-001:
  124. instances:
  125. router-001-a:
  126. roles_cfg:
  127. roles.metrics-export:
  128. http:
  129. - listen: '0.0.0.0:8083'
  130. endpoints:
  131. - path: /metrics/prometheus/
  132. format: prometheus
  133. - path: /metrics/json
  134. format: json
  135. iproto:
  136. listen:
  137. - uri: 127.0.0.1:3303
  138. advertise:
  139. client: 127.0.0.1:3303