vitess.io/vitess@v0.16.2/examples/local/101_initial_cluster.sh (about)

     1  #!/bin/bash
     2  
     3  # Copyright 2019 The Vitess Authors.
     4  #
     5  # Licensed under the Apache License, Version 2.0 (the "License");
     6  # you may not use this file except in compliance with the License.
     7  # You may obtain a copy of the License at
     8  #
     9  #     http://www.apache.org/licenses/LICENSE-2.0
    10  #
    11  # Unless required by applicable law or agreed to in writing, software
    12  # distributed under the License is distributed on an "AS IS" BASIS,
    13  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14  # See the License for the specific language governing permissions and
    15  # limitations under the License.
    16  
    17  # this script brings up zookeeper and all the vitess components
    18  # required for a single shard deployment.
    19  
    20  source ../common/env.sh
    21  
    22  # start topo server
    23  if [ "${TOPO}" = "zk2" ]; then
    24  	CELL=zone1 ../common/scripts/zk-up.sh
    25  elif [ "${TOPO}" = "k8s" ]; then
    26  	CELL=zone1 ../common/scripts/k3s-up.sh
    27  elif [ "${TOPO}" = "consul" ]; then
    28  	CELL=zone1 ../common/scripts/consul-up.sh
    29  else
    30  	CELL=zone1 ../common/scripts/etcd-up.sh
    31  fi
    32  
    33  # start vtctld
    34  CELL=zone1 ../common/scripts/vtctld-up.sh
    35  
    36  # start vttablets for keyspace commerce
    37  for i in 100 101 102; do
    38  	CELL=zone1 TABLET_UID=$i ../common/scripts/mysqlctl-up.sh
    39  	CELL=zone1 KEYSPACE=commerce TABLET_UID=$i ../common/scripts/vttablet-up.sh
    40  done
    41  
    42  # set the correct durability policy for the keyspace
    43  vtctldclient --server localhost:15999 SetKeyspaceDurabilityPolicy --durability-policy=semi_sync commerce || fail "Failed to set keyspace durability policy on the commerce keyspace"
    44  
    45  # start vtorc
    46  ../common/scripts/vtorc-up.sh
    47  
    48  # Wait for all the tablets to be up and registered in the topology server
    49  # and for a primary tablet to be elected in the shard and become healthy/serving.
    50  wait_for_healthy_shard commerce 0 || exit 1
    51  
    52  # create the schema
    53  vtctldclient ApplySchema --sql-file create_commerce_schema.sql commerce || fail "Failed to apply schema for the commerce keyspace"
    54  
    55  # create the vschema
    56  vtctldclient ApplyVSchema --vschema-file vschema_commerce_initial.json commerce || fail "Failed to apply vschema for the commerce keyspace"
    57  
    58  # start vtgate
    59  CELL=zone1 ../common/scripts/vtgate-up.sh
    60  
    61  # start vtadmin
    62  ../common/scripts/vtadmin-up.sh
    63