美文网首页
TiDB初体验

TiDB初体验

作者: darkranger | 来源:发表于2017-10-19 19:57 被阅读0次

    话不多说了,开讲~

    环境准备

    centos7
    java8
    mysql客户端
    go1.8.4.linux-amd64.tar.gz
    

    安装

    go安装

    cd /usr/local
    tar zxvf go1.8.4.linux-amd64.tar.gz
    rm go1.8.4.linux-amd64.tar.gz 
    vi /etc/profile
    

    在profile中添加下列内容:

    export GOROOT=/usr/local/go
    export GOBIN=$GOROOT/bin
    export PATH=$PATH:$GOBIN
    

    然后使profile生效

    source /etc/profile
    go env
    

    效果

    图1

    表明go已经安装成功

    Ansible安装

    yum install epel-release
    yum update
    yum install ansible
    

    TiDB1.0安装

    cd /usr/local
    git clone -b release-1.0 https://github.com/pingcap/tidb-ansible.git
    

    分配机器资源,编辑 inventory.ini 文件,路径为 tidb-ansible/inventory.ini

    我编辑后的inventory.ini内容

    # TiDB Cluster Part
    [tidb_servers]
    localhost
    
    [tikv_servers]
    localhost
    
    [pd_servers]
    localhost
    
    [spark_master]
    
    [spark_slaves]
    
    # Monitoring Part
    [monitoring_servers]
    localhost
    
    [grafana_servers]
    localhost
    
    [monitored_servers:children]
    tidb_servers
    tikv_servers
    pd_servers
    spark_master
    spark_slaves
    
    ## Binlog Part
    [pump_servers:children]
    tidb_servers
    
    [cistern_servers]
    
    [drainer_servers]
    
    [pd_servers:vars]
    # location_labels = ["zone","rack","host"]
    
    ## Global variables
    [all:vars]
    deploy_dir = /home/tidb/deploy
    
    ## Connection
    # ssh via root:
     ansible_user = root
     ansible_become = true
     ansible_become_user = tidb
    
    # ssh via normal user
    # ansible_user = tidb
    
    cluster_name = test-cluster
    
    # misc
    enable_elk = False
    enable_firewalld = False
    enable_ntpd = False
    machine_benchmark = False
    set_hostname = False
    tidb_version = v1.0.0
    use_systemd = True
    
    # binlog trigger
    enable_binlog = False
    

    说明:
    我是安装单节点,且使用的是centos7,所以enable_ntpd 和machine_benchmark都设为False ,而use_systemd 设为true

    部署

    TiDB 服务不推荐使用 root 用户运行,但是我懒,所以继续用root

    Ansible 通过 root 用户远程连接部署

    修改 inventory.ini,取消 ansible_user = root 、ansible_become = true 及 ansible_become_user 注释,给 ansible_user = tidb 添加注释:

    ## Connection
    # ssh via root:
    ansible_user = root
    ansible_become = true
    ansible_become_user = tidb
    
    # ssh via normal user
    # ansible_user = tidb
    

    使用 local_prepare.yml playbook, 下载 TiDB

    ansible-playbook local_prepare.yml
    

    初始化系统环境,修改内核参数。如服务运行用户尚未建立,此初始化操作会自动创建该用户

    ansible-playbook bootstrap.yml
    

    如果 ansible 使用 root 用户远程连接需要密码, 使用 -k 参数,执行其他 playbook 同理

    ansible-playbook bootstrap.yml -k
    

    部署

    ansible-playbook deploy.yml -k
    

    启动

    ansible-playbook start.yml -k
    

    测试安装是否成功

    使用 MySQL 客户端连接测试, TCP 4000 端口是 TiDB 服务默认端口。

    mysql -u root -h 192.168.0.159 -P 4000
    

    这里我使用idea内置的数据库客户端链接,访问的是外网IP。界面如下

    图2

    通过浏览器访问监控平台。同上,我使用的是外网IP。地址:http://192.168.0.159:3000 默认帐号密码是:admin/admin

    界面如下


    图3

    总结

    这只是初步的安装,我以后还是要使用集群,并且会使用到它其中的spark组件

    相关文章

      网友评论

          本文标题:TiDB初体验

          本文链接:https://www.haomeiwen.com/subject/dtspuxtx.html