## Module 1: Deploying TiCDC

### Step 1. Log into the remote Linux

+ Click here - [Terminal 1](ssh://monitor1-ssh#1) to open a new terminal connected to the virtual machine assigned for your hands-on lab.

### Step 2. Check the status of the TiDB cluster

  ```bash
  tiup cluster display tidb-test
  ```

  ```output
  tiup is checking updates for component cluster ...
  Starting component `cluster`: /root/.tiup/components/cluster/v1.10.2/tiup-cluster display tidb-test
  Cluster type:       tidb
  Cluster name:       tidb-test
  Cluster version:    v${LAB:TIDB_VERSION}
  Deploy user:        tidb
  SSH type:           builtin
  Dashboard URL:      http://10.90.1.34:2379/dashboard
  Grafana URL:        http://10.90.4.231:3000
  ID                 Role          Host         Ports                            OS/Arch       Status   Data Dir                      Deploy Dir
  --                 ----          ----         -----                            -------       ------   --------                      ----------
  10.90.4.231:9093   alertmanager  10.90.4.231  9093/9094                        linux/x86_64  Up       /tidb-data/alertmanager-9093  /tidb-deploy/alertmanager-9093
  10.90.4.231:3000   grafana       10.90.4.231  3000                             linux/x86_64  Up       -                             /tidb-deploy/grafana-3000
  10.90.1.34:2379    pd            10.90.1.34   2379/2380                        linux/x86_64  Up|L|UI  /tidb-data/pd-2379            /tidb-deploy/pd-2379
  10.90.2.38:2379    pd            10.90.2.38   2379/2380                        linux/x86_64  Up       /tidb-data/pd-2379            /tidb-deploy/pd-2379
  10.90.3.188:2379   pd            10.90.3.188  2379/2380                        linux/x86_64  Up       /tidb-data/pd-2379            /tidb-deploy/pd-2379
  10.90.4.231:9090   prometheus    10.90.4.231  9090/12020                       linux/x86_64  Up       /tidb-data/prometheus-9090    /tidb-deploy/prometheus-9090
  10.90.1.69:4000    tidb          10.90.1.69   4000/10080                       linux/x86_64  Up       -                             /tidb-deploy/tidb-4000
  10.90.2.35:4000    tidb          10.90.2.35   4000/10080                       linux/x86_64  Up       -                             /tidb-deploy/tidb-4000
  10.90.4.53:9000    tiflash       10.90.4.53   9000/8123/3930/20170/20292/8234  linux/x86_64  Up       /tidb-data/tiflash-9000       /tidb-deploy/tiflash-9000
  10.90.1.162:20160  tikv          10.90.1.162  20160/20180                      linux/x86_64  Up       /tidb-data/tikv-20160         /tidb-deploy/tikv-20160
  10.90.2.108:20160  tikv          10.90.2.108  20160/20180                      linux/x86_64  Up       /tidb-data/tikv-20160         /tidb-deploy/tikv-20160
  10.90.3.12:20160   tikv          10.90.3.12   20160/20180                      linux/x86_64  Up       /tidb-data/tikv-20160         /tidb-deploy/tikv-20160
  Total nodes: 12
  ```

### Step 3. Read the file solution-three-nodes-scale-out-ticdc.yaml

  ```bash
  cat solution-three-nodes-scale-out-ticdc.yaml
  ```

  ```output
  cdc_servers:
    - host: 10.90.2.84
      gc-ttl: 86400
      data_dir: "/cdc-data"
    - host: 10.90.2.134
      gc-ttl: 86400
      data_dir: "/cdc-data"
    - host: 10.90.2.214
      gc-ttl: 86400
      data_dir: "/cdc-data"
  ```

### Step 4. Deploy TiCDC nodes

  ```bash
  tiup cluster scale-out tidb-test --user ec2-user -i ~/.ssh/pe-class-key-${LAB:REGION_NAME}.pem solution-three-nodes-scale-out-ticdc.yaml
  ```

  ```output
  ...
  Do you want to continue? [y/N]: (default=N) y
  ...
  Scaled cluster `tidb-test` out successfully
  ```

### Step 5. Check the status of the TiDB cluster

  ```bash
  tiup cluster display tidb-test
  ```

  ```output
  tiup is checking updates for component cluster ...
  Starting component `cluster`: /home/ec2-user/.tiup/components/cluster/v1.12.1/tiup-cluster display tidb-test
  Cluster type:       tidb
  Cluster name:       tidb-test
  Cluster version:    v${LAB:TIDB_VERSION}
  Deploy user:        tidb
  SSH type:           builtin
  Dashboard URL:      http://10.90.1.34:2379/dashboard
  Grafana URL:        http://10.90.4.231:3000
  ID                 Role          Host         Ports                            OS/Arch       Status   Data Dir                      Deploy Dir
  --                 ----          ----         -----                            -------       ------   --------                      ----------
  10.90.4.231:9093   alertmanager  10.90.4.231  9093/9094                        linux/x86_64  Up       /tidb-data/alertmanager-9093  /tidb-deploy/alertmanager-9093
  10.90.1.34:8300    cdc           10.90.1.34   8300                             linux/x86_64  Up       /cdc-data                     /tidb-deploy/cdc-8300
  10.90.2.38:8300    cdc           10.90.2.38   8300                             linux/x86_64  Up       /cdc-data                     /tidb-deploy/cdc-8300
  10.90.3.188:8300   cdc           10.90.3.188  8300                             linux/x86_64  Up       /cdc-data                     /tidb-deploy/cdc-8300
  10.90.4.231:3000   grafana       10.90.4.231  3000                             linux/x86_64  Up       -                             /tidb-deploy/grafana-3000
  10.90.1.34:2379    pd            10.90.1.34   2379/2380                        linux/x86_64  Up|L|UI  /tidb-data/pd-2379            /tidb-deploy/pd-2379
  10.90.2.38:2379    pd            10.90.2.38   2379/2380                        linux/x86_64  Up       /tidb-data/pd-2379            /tidb-deploy/pd-2379
  10.90.3.188:2379   pd            10.90.3.188  2379/2380                        linux/x86_64  Up       /tidb-data/pd-2379            /tidb-deploy/pd-2379
  10.90.4.231:9090   prometheus    10.90.4.231  9090/12020                       linux/x86_64  Up       /tidb-data/prometheus-9090    /tidb-deploy/prometheus-9090
  10.90.1.69:4000    tidb          10.90.1.69   4000/10080                       linux/x86_64  Up       -                             /tidb-deploy/tidb-4000
  10.90.2.35:4000    tidb          10.90.2.35   4000/10080                       linux/x86_64  Up       -                             /tidb-deploy/tidb-4000
  10.90.4.53:9000    tiflash       10.90.4.53   9000/8123/3930/20170/20292/8234  linux/x86_64  Up       /tidb-data/tiflash-9000       /tidb-deploy/tiflash-9000
  10.90.1.162:20160  tikv          10.90.1.162  20160/20180                      linux/x86_64  Up       /tidb-data/tikv-20160         /tidb-deploy/tikv-20160
  10.90.2.108:20160  tikv          10.90.2.108  20160/20180                      linux/x86_64  Up       /tidb-data/tikv-20160         /tidb-deploy/tikv-20160
  10.90.3.12:20160   tikv          10.90.3.12   20160/20180                      linux/x86_64  Up       /tidb-data/tikv-20160         /tidb-deploy/tikv-20160
  Total nodes: 15
  ```

### Step 6. Check the status of TiCDC cluster

  ```bash
  tiup ctl:v${LAB:TIDB_VERSION} cdc capture list --pd=http://${HOST_PD1_PRIVATE_IP}:2379
  ```

  ```output
  ...
  Starting component `ctl`: /home/ec2-user/.tiup/components/ctl/v${LAB:TIDB_VERSION}/ctl cdc capture list --pd=http://10.80.0.224:2379
  [
     {
        "id": "1c15e075-1435-464c-af66-92ba0286a7fe",
        "is-owner": false,
        "address": "10.90.1.34:8300",
        "cluster-id": "default"
     },
     {
        "id": "4399c858-e811-4d9e-9b08-fb5690c097ec",
        "is-owner": true,
        "address": "10.90.2.38:8300",
        "cluster-id": "default"
     },
     {
        "id": "5982fa7d-c755-409a-88d5-03527c8a0fcd",
        "is-owner": false,
        "address": "10.90.3.188:8300",
        "cluster-id": "default"
     }
  ]
  ```
