Adding Datasources to an Existing Deployment
Ensure the new host that is being added has been configured following the "Installation Prerequisites".
Update the
/etc/tungsten/tungsten.iniconfiguration file adding the new host to the list ofmembers, and/orconnectors, if applicable.Example tungsten.ini[alpha]members=host1,host2,host3,host4hosts=host1,host2,host3,host4connectors=host1,host2,host3,host4Show argument definitions
members=host1,host2,host3,host4Hostnames for the dataservice members.hosts=host1,host2,host3,host4No description availableconnectors=host1,host2,host3,host4Hostnames for the dataservice connectors.Using the
--no-connectorsoption updates the current deployment without restarting the existing connectors.Initially, the newly added host will attempt to read the information from the existing THL. If the full THL is not available from the primary, the new replica will need to be reprovisioned:
Log into the new host.
Execute
tprovisionto read the information from an existing replica and overwrite the data within the new host:shell> tprovision -s host2 -m xtrabackupNoteFor a full explanation of using
tprovisionsee "The tprovision Command"
Once the new host has been added and reprovisioned, check the status in cctrl:
[LOGICAL] /alpha > ls
COORDINATOR[host1:AUTOMATIC:ONLINE]
ROUTERS:
+----------------------------------------------------------------------------+
|connector@host1[11401](ONLINE, created=0, active=0) |
|connector@host2[8756](ONLINE, created=0, active=0) |
|connector@host3[21673](ONLINE, created=0, active=0) |
+----------------------------------------------------------------------------+
DATASOURCES:
+----------------------------------------------------------------------------+
|host1(master:ONLINE, progress=219, THL latency=1.047) |
|STATUS [OK] [2024/12/13 04:16:17 PM GMT] |
+----------------------------------------------------------------------------+
| MANAGER(state=ONLINE) |
| REPLICATOR(role=master, state=ONLINE) |
| DATASERVER(state=ONLINE) |
| CONNECTIONS(created=0, active=0) |
+----------------------------------------------------------------------------+
+----------------------------------------------------------------------------+
|host2(slave:ONLINE, progress=219, latency=1.588) |
|STATUS [OK] [2024/12/13 04:16:17 PM GMT] |
+----------------------------------------------------------------------------+
| MANAGER(state=ONLINE) |
| REPLICATOR(role=slave, master=host1, state=ONLINE) |
| DATASERVER(state=ONLINE) |
| CONNECTIONS(created=0, active=0) |
+----------------------------------------------------------------------------+
+----------------------------------------------------------------------------+
|host3(slave:ONLINE, progress=219, latency=2.021) |
|STATUS [OK] [2024/12/13 04:16:18 PM GMT] |
+----------------------------------------------------------------------------+
| MANAGER(state=ONLINE) |
| REPLICATOR(role=slave, master=host1, state=ONLINE) |
| DATASERVER(state=ONLINE) |
| CONNECTIONS(created=0, active=0) |
+----------------------------------------------------------------------------+
+----------------------------------------------------------------------------+
|host4(slave:ONLINE, progress=219, latency=1.000) |
|STATUS [OK] [2024/01/17 05:28:54 PM GMT] |
+----------------------------------------------------------------------------+
| MANAGER(state=ONLINE) |
| REPLICATOR(role=slave, master=host1, state=ONLINE) |
| DATASERVER(state=ONLINE) |
| CONNECTIONS(created=0, active=0) |
+----------------------------------------------------------------------------+
If the host has not come up, or the progress does not match the primary, check "Datasource Recovery Steps" for more information on determining the exact status and what steps to take to enable the host operation.