/
mirror-3dc-3-nodes.yaml
165 lines (164 loc) · 7.37 KB
/
mirror-3dc-3-nodes.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
# YDB configuration options and their values
# are described in documentaion https://ydb.tech/en/docs/deploy/configuration/config
# static erasure is the parameter that
# describes the fault tolerance mode of the
# cluster. See docs for more details https://ydb.tech/en/docs/deploy/configuration/config#domains-blob
static_erasure: mirror-3-dc
host_configs: # the list of available host configurations in the cluster.
- drive:
- path: /dev/disk/by-partlabel/ydb_disk_ssd_01 # path of the first disk in the host configration.
type: SSD # kind of the disk: available kinds are SSD, NVME, HDD
- path: /dev/disk/by-partlabel/ydb_disk_ssd_02
type: SSD
- path: /dev/disk/by-partlabel/ydb_disk_ssd_03
type: SSD
host_config_id: 1
hosts:
- host: ydb-node-zone-a.local # storage node DNS name
host_config_id: 1 # numeric host configuration template identifier
walle_location: # this parameter describes where host is located.
body: 1 # string representing a host serial number.
data_center: 'zone-a' # string representing the datacenter / availability zone where the host is located.
# if cluster is deployed using mirror-3-dc fault tolerance mode, all hosts must be distributed
# across 3 datacenters.
rack: '1' # string representing a rack identifier where the host is located.
# if cluster is deployed using block-4-2 erasure, all hosts should be distrubited
# accross at least 8 racks.
- host: ydb-node-zone-b.local
host_config_id: 1
walle_location:
body: 2
data_center: 'zone-b'
rack: '2'
- host: ydb-node-zone-c.local
host_config_id: 1
walle_location:
body: 3
data_center: 'zone-c'
rack: '3'
domains_config:
# There can be only one root domain in a cluster. Domain name prefixes all scheme objects names, e.g. full name of a table table1 in database db1.
# in a cluster with domains_config.domain.name parameter set to Root would be equal to /Root/db1/table1
domain:
- name: Root
storage_pool_types:
- kind: ssd
pool_config:
box_id: 1
# fault tolerance mode name - none, block-4-2, or mirror-3-dc..
# See docs for more details https://ydb.tech/en/docs/deploy/configuration/config#domains-blob
erasure_species: mirror-3-dc
kind: ssd
geometry:
realm_level_begin: 10
realm_level_end: 20
domain_level_begin: 10
domain_level_end: 256
pdisk_filter:
- property:
- type: SSD # device type to match host_configs.drive.type
vdisk_kind: Default
state_storage:
- ring:
node: [1, 2, 3]
nto_select: 3
ssid: 1
table_service_config:
sql_version: 1
actor_system_config: # the configuration of the actor system which descibes how cores of the instance are distributed
executor: # accross different types of workloads in the instance.
- name: System # system executor of the actor system. in this executor YDB launches system type of workloads, like system tablets
# and reads from storage.
threads: 2 # the number of threads allocated to system executor.
type: BASIC
- name: User # user executor of the actor system. In this executor YDB launches user workloads, like datashard activities,
# queries and rpc calls.
threads: 3 # the number of threads allocated to user executor.
type: BASIC
- name: Batch # user executor of the actor system. In this executor YDB launches batch operations, like scan queries, table
# compactions, background compactions.
threads: 2 # the number of threads allocated to the batch executor.
type: BASIC
- name: IO # the io executor. In this executor launches sync operations and writes logs.
threads: 1
time_per_mailbox_micro_secs: 100
type: IO
- name: IC # the interconnect executor which YDB uses for network communications accross different nodes of the cluster.
spin_threshold: 10
threads: 1 # the number of threads allocated to the interconnect executor.
time_per_mailbox_micro_secs: 100
type: BASIC
scheduler:
progress_threshold: 10000
resolution: 256
spin_threshold: 0
blob_storage_config: # configuration of static blobstorage group.
# YDB uses this group to store system tablets' data, like SchemeShard
service_set:
groups:
- erasure_species: mirror-3-dc # fault tolerance mode name for the static group
rings: # in mirror-3-dc must have exactly 3 rings or availability zones
- fail_domains: # first record: fail domains of the static group describe where each vdisk of the static group should be located.
- vdisk_locations:
- node_id: ydb-node-zone-a.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_01
- vdisk_locations:
- node_id: ydb-node-zone-a.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_02
- vdisk_locations:
- node_id: ydb-node-zone-a.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_03
- fail_domains: # second ring: fail domains of the static group describe where each vdisk of the static group should be located.
- vdisk_locations:
- node_id: ydb-node-zone-b.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_01
- vdisk_locations:
- node_id: ydb-node-zone-b.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_02
- vdisk_locations:
- node_id: ydb-node-zone-b.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_03
- fail_domains: # third ring: fail domains of the static group describe where each vdisk of the static group should be located.
- vdisk_locations:
- node_id: ydb-node-zone-c.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_01
- vdisk_locations:
- node_id: ydb-node-zone-c.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_02
- vdisk_locations:
- node_id: ydb-node-zone-c.local
pdisk_category: SSD
path: /dev/disk/by-partlabel/ydb_disk_ssd_03
channel_profile_config:
profile:
- channel:
- erasure_species: mirror-3-dc
pdisk_category: 0
storage_pool_kind: ssd
- erasure_species: mirror-3-dc
pdisk_category: 0
storage_pool_kind: ssd
- erasure_species: mirror-3-dc
pdisk_category: 0
storage_pool_kind: ssd
profile_id: 0
interconnect_config:
start_tcp: true
encryption_mode: OPTIONAL
path_to_certificate_file: "/opt/ydb/certs/node.crt"
path_to_private_key_file: "/opt/ydb/certs/node.key"
path_to_ca_file: "/opt/ydb/certs/ca.crt"
grpc_config:
cert: "/opt/ydb/certs/node.crt"
key: "/opt/ydb/certs/node.key"
ca: "/opt/ydb/certs/ca.crt"
services_enabled:
- legacy