129 lines
4 KiB
YAML
129 lines
4 KiB
YAML
|
kind: Pod
|
||
|
apiVersion: v1
|
||
|
metadata:
|
||
|
name: vttablet-{{uid}}
|
||
|
labels:
|
||
|
component: vttablet
|
||
|
keyspace: "{{keyspace}}"
|
||
|
shard: "{{shard_label}}"
|
||
|
tablet: "{{alias}}"
|
||
|
app: vitess
|
||
|
spec:
|
||
|
containers:
|
||
|
- name: vttablet
|
||
|
image: vitess/lite:v2.0.0-alpha5
|
||
|
volumeMounts:
|
||
|
- name: syslog
|
||
|
mountPath: /dev/log
|
||
|
- name: vtdataroot
|
||
|
mountPath: /vt/vtdataroot
|
||
|
- name: certs
|
||
|
readOnly: true
|
||
|
mountPath: /etc/ssl/certs
|
||
|
resources:
|
||
|
limits:
|
||
|
memory: "1Gi"
|
||
|
cpu: "500m"
|
||
|
command:
|
||
|
- bash
|
||
|
- "-c"
|
||
|
- >-
|
||
|
set -e
|
||
|
|
||
|
mysql_socket="$VTDATAROOT/{{tablet_subdir}}/mysql.sock"
|
||
|
|
||
|
mkdir -p $VTDATAROOT/tmp
|
||
|
|
||
|
chown -R vitess /vt
|
||
|
|
||
|
while [ ! -e $mysql_socket ]; do
|
||
|
echo "[$(date)] waiting for $mysql_socket" ;
|
||
|
sleep 1 ;
|
||
|
done
|
||
|
|
||
|
su -p -s /bin/bash -c "mysql -u vt_dba -S $mysql_socket
|
||
|
-e 'CREATE DATABASE IF NOT EXISTS vt_{{keyspace}}'" vitess
|
||
|
|
||
|
su -p -s /bin/bash -c "/vt/bin/vttablet
|
||
|
-topo_implementation etcd
|
||
|
-etcd_global_addrs http://$ETCD_GLOBAL_SERVICE_HOST:$ETCD_GLOBAL_SERVICE_PORT
|
||
|
-log_dir $VTDATAROOT/tmp
|
||
|
-alsologtostderr
|
||
|
-port {{port}}
|
||
|
-grpc_port {{grpc_port}}
|
||
|
-service_map 'grpc-queryservice,grpc-tabletmanager,grpc-updatestream'
|
||
|
-binlog_player_protocol grpc
|
||
|
-tablet-path {{alias}}
|
||
|
-tablet_hostname $(hostname -i)
|
||
|
-init_keyspace {{keyspace}}
|
||
|
-init_shard {{shard}}
|
||
|
-target_tablet_type {{tablet_type}}
|
||
|
-mysqlctl_socket $VTDATAROOT/mysqlctl.sock
|
||
|
-db-config-app-uname vt_app
|
||
|
-db-config-app-dbname vt_{{keyspace}}
|
||
|
-db-config-app-charset utf8
|
||
|
-db-config-dba-uname vt_dba
|
||
|
-db-config-dba-dbname vt_{{keyspace}}
|
||
|
-db-config-dba-charset utf8
|
||
|
-db-config-repl-uname vt_repl
|
||
|
-db-config-repl-dbname vt_{{keyspace}}
|
||
|
-db-config-repl-charset utf8
|
||
|
-db-config-filtered-uname vt_filtered
|
||
|
-db-config-filtered-dbname vt_{{keyspace}}
|
||
|
-db-config-filtered-charset utf8
|
||
|
-enable-rowcache
|
||
|
-rowcache-bin /usr/bin/memcached
|
||
|
-rowcache-socket $VTDATAROOT/{{tablet_subdir}}/memcache.sock
|
||
|
-health_check_interval 5s
|
||
|
-restore_from_backup {{backup_flags}}" vitess
|
||
|
- name: mysql
|
||
|
image: vitess/lite:v2.0.0-alpha5
|
||
|
volumeMounts:
|
||
|
- name: syslog
|
||
|
mountPath: /dev/log
|
||
|
- name: vtdataroot
|
||
|
mountPath: /vt/vtdataroot
|
||
|
resources:
|
||
|
limits:
|
||
|
memory: "1Gi"
|
||
|
cpu: "500m"
|
||
|
command:
|
||
|
- sh
|
||
|
- "-c"
|
||
|
- >-
|
||
|
mkdir -p $VTDATAROOT/tmp &&
|
||
|
chown -R vitess /vt
|
||
|
|
||
|
su -p -c "/vt/bin/mysqlctld
|
||
|
-log_dir $VTDATAROOT/tmp
|
||
|
-alsologtostderr
|
||
|
-tablet_uid {{uid}}
|
||
|
-socket_file $VTDATAROOT/mysqlctl.sock
|
||
|
-db-config-app-uname vt_app
|
||
|
-db-config-app-dbname vt_{{keyspace}}
|
||
|
-db-config-app-charset utf8
|
||
|
-db-config-dba-uname vt_dba
|
||
|
-db-config-dba-dbname vt_{{keyspace}}
|
||
|
-db-config-dba-charset utf8
|
||
|
-db-config-repl-uname vt_repl
|
||
|
-db-config-repl-dbname vt_{{keyspace}}
|
||
|
-db-config-repl-charset utf8
|
||
|
-db-config-filtered-uname vt_filtered
|
||
|
-db-config-filtered-dbname vt_{{keyspace}}
|
||
|
-db-config-filtered-charset utf8
|
||
|
-bootstrap_archive mysql-db-dir_10.0.13-MariaDB.tbz" vitess
|
||
|
# The bootstrap archive above contains an empty mysql data dir
|
||
|
# with user permissions set up as required by Vitess. The archive is
|
||
|
# included in the Docker image.
|
||
|
env:
|
||
|
- name: EXTRA_MY_CNF
|
||
|
value: /vt/config/mycnf/master_mariadb.cnf
|
||
|
volumes:
|
||
|
- name: syslog
|
||
|
hostPath: {path: /dev/log}
|
||
|
- name: vtdataroot
|
||
|
emptyDir: {}
|
||
|
- name: certs
|
||
|
hostPath: {path: /etc/ssl/certs}
|
||
|
|