github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/polardbx/scripts/metadb-setup.tpl (about)

     1  #!/bin/sh
     2  
     3  until mysql -h$GMS_SVC_NAME -P$GMS_SVC_PORT -u$metaDbUser -p$metaDbNonEncPasswd -e 'select 1'; do
     4      sleep 1;
     5      echo "wait gms ready"
     6  done
     7  
     8  function generate_dn_init_sql() {
     9      echo "$DN_HEADLESS_SVC_NAME" | tr ',' '\n' | while IFS= read -r item
    10      do
    11        DN_HOSTNAME=$item
    12        DN_NAME=$(echo "$DN_HOSTNAME" | cut -d'.' -f2 | sed s/-headless//)
    13        dn_init_sql="INSERT IGNORE INTO storage_info (id, gmt_created, gmt_modified, inst_id, storage_inst_id, storage_master_inst_id,ip, port, xport, user, passwd_enc, storage_type, inst_kind, status, region_id, azone_id, idc_id, max_conn, cpu_core, mem_size, is_vip, extras)
    14        VALUES (NULL, NOW(), NOW(), '$KB_CLUSTER_NAME', '$DN_NAME', '$DN_NAME', '$DN_HOSTNAME', '3306', '31600', '$metaDbUser', '$ENC_PASSWORD', '3', '0', '0', NULL, NULL, NULL, 10000, 4,  34359738368 , '0', '');"
    15        echo $dn_init_sql >> /scripts/gms-init-metadata.sql
    16      done
    17      echo "UPDATE config_listener SET op_version = op_version + 1 WHERE data_id = 'polardbx.storage.info.$KB_CLUSTER_NAME'" >> /scripts/gms-init-metadata.sql
    18  }
    19  
    20  ENC_PASSWORD=$(echo -n "$metaDbNonEncPasswd" | openssl enc -aes-128-ecb -K "$(printf "%s" "$dnPasswordKey" | od -An -tx1 | tr -d " \n")" -base64)
    21  SHA1_ENC_PASSWORD=$(echo -n "$metaDbNonEncPasswd" | sha1sum | cut -d ' ' -f1)
    22  echo "export metaDbPasswd=$ENC_PASSWORD" >> /shared/env.sh
    23  
    24  SOURCE_CMD="mysql -h$GMS_SVC_NAME -P$GMS_SVC_PORT -u$metaDbUser -p$metaDbNonEncPasswd -e 'source /scripts/gms-init.sql'"
    25  eval $SOURCE_CMD
    26  
    27  GMS_HOST=$GMS_SVC_NAME"."$KB_NAMESPACE".svc.cluster.local"
    28  
    29  eval "gms_metadata_sql=\"$(cat /scripts/gms-metadata.tpl)\""
    30  
    31  echo $gms_metadata_sql > /scripts/gms-init-metadata.sql
    32  generate_dn_init_sql
    33  
    34  cat /scripts/gms-init-metadata.sql
    35  
    36  eval "mysql -h$GMS_SVC_NAME -P$GMS_SVC_PORT -u$metaDbUser -p$metaDbNonEncPasswd -e 'source /scripts/gms-init-metadata.sql'"
    37