美文网首页
CDH5.14使用MySQL存储元数据

CDH5.14使用MySQL存储元数据

作者: cyclone_29 | 来源:发表于2018-09-03 12:04 被阅读0次

    CDH使用cloudera-manager-installer.bin安装时默认安装了postgresql用来存储cloudera manager运行所需要的状态,但是一般生产环境使用外部数据库,这里介绍以下如何在cdh中使用MySQL

    配置Mysql数据库

    为Cloudera Manager配置外部的数据库需要对此外部数据库进行一些配置

    1) 需要配置Mysql的搜索引擎为InnoDB

    2) Mysql安装好以后默认分配的缓冲区和内存比较小,ClouderaManager会非常频繁地连接Mysql需要配置一下,具体根据你集群的大小配置最大连接数

    3) 二进制日志对于ClouderaManager不是必须的,但是对Mysql有好处,这个你随意

    然后官网在下面给了一个my.cnf配置的例子,然后说只要你的大数据集群在50个节点以内都可以使用下面的这个配置

        # For advice on how to change settings please see
        # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
    
        [mysqld]
    
        # Remove leading # and set to the amount of RAM for the most important data
        # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
        # innodb_buffer_pool_size = 128M
    
        # Remove leading # to turn on a very important data integrity option: logging
        # changes to the binary log between backups.
        # log_bin
        # Remove leading # to set options mainly useful for reporting servers.
        # The server defaults are faster for transactions and fast SELECTs.
        # Adjust sizes as needed, experiment to find the optimal values.
        # join_buffer_size = 128M
        # sort_buffer_size = 2M
        # read_rnd_buffer_size = 2M
        validate_password = off
        datadir=/var/lib/mysql
        socket=/var/lib/mysql/mysql.sock
    
        key_buffer_size = 32M
        max_allowed_packet = 32M
        thread_stack = 256K
        thread_cache_size = 64
        query_cache_limit = 8M
        query_cache_size = 64M
        query_cache_type = 1
    
        max_connections = 550
        #expire_logs_days = 10
        #max_binlog_size = 100M
    
        read_buffer_size = 2M
        read_rnd_buffer_size = 16M
        sort_buffer_size = 8M
        join_buffer_size = 8M
    
        # InnoDB settings
        innodb_file_per_table = 1
        innodb_flush_log_at_trx_commit  = 2
        innodb_log_buffer_size = 64M
        innodb_buffer_pool_size = 4G
        innodb_thread_concurrency = 8
        innodb_flush_method = O_DIRECT
        innodb_log_file_size = 512M
    
        [mysqld_safe]
        log-error=/var/log/mysqld.log
        pid-file=/var/run/mysqld/mysqld.pid
        sql_mode=STRICT_ALL_TABLES
    

    安装MySQL,将原来的/etc/my.cnf备份,新建/etc/my.cnf并将上面的内容进行复制。
    下载MySQL驱动包,上传到主节点的/usr/share/java目录,该目录需要手动进行创建,下载的驱动包的版本不要太高,以免出现连接错误,我下载的版本是5.1.35,下载完成之后,重命名,上传到创建的/usr/share/java目录

        mv mysql-connector-java-5.1.35.jar mysql-connector-java.jar
    

    安装CDH过程中,执行cloudera-manager-installer.bin可执行文件后,先不要进入浏览器端,等待cloudera-scm-server启动完成之后,按照下面的命令依次停止cloudera-scm-server-db和cloudera-scm-server进程

        service  cloudera-scm-server-db stop
        service  cloudera-scm-server stop
    

    配置 CM Server 的数据库(主节点)

    cd /usr/share/cmf/schema
    ./scm_prepare_database.sh mysql -hmaster -ucyclone -p123456 --scm-host master scm scm scm
    

    这个脚本就是用来创建和配置CMS需要的数据库的脚本。各参数是指:
    mysql:数据库用的是mysql,如果安装过程中用的oracle,那么该参数就应该改为oracle。
    -hmaster:数据库建立在master主机上面
    -ucyclone:数据库用户名为cyclone
    -p123456:数据库的密码为123456
    --scm-host:CM server的主机,一般是和mysql安装的主机是在同一个主机上。
    最后三个参数是:数据库名,数据库用户名,数据库密码。
    初始化完成之后,启动cloudera-scm-server服务即可

        service cloudera-scm-server start
    

    另外一个是内置的数据库服务,就不需要启动了,启动完成就可以在网页端进行登陆,进行节点分配和服务安装,如果网页上没有警告说使用了内置的数据库,就说明配置成功。

    相关文章

      网友评论

          本文标题:CDH5.14使用MySQL存储元数据

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