精华内容
下载资源
问答
  • Nutanix AHV平台集群环境下单台主机停机维护操作手册
  • 大数据平台集群

    千次阅读 2018-08-18 20:13:35
    基本组件:  Zookeeper:  分布式协作框架  节点数目:  测试集群:3个  生产集群:(7个差不多)  小型集群:3个或者5个  中型集群:5个或者7个  ...

    基本组件:

        Zookeeper:

            分布式协作框架

                节点数目:

                    测试集群:3

                    生产集群:(7个差不多)

                        小型集群:3个或者5

                        中型集群:5个或者7

                        大型集群:更多,奇数个

        HDFS:

            存储海量数据

        YARN:

            集群资源管理

            资源调度

        MapReduce:

            并行计算框架

                思想:

                    分而治之

     

    集群大小:双十一模拟,峰值,宕机处理一类,119

        测试集群:

            机器数量:(测试数据,每秒读取数据一类)

                5台 - 10

            机器配置:

                内存:24G/32G以上

                    8G-12G

                    NameNode:2G 每台内存越多越好 MR内存来自于NN

                    DataNode:6G-8G

                    RS:4G

                硬盘:4T / 10T  以上

                CPU核:6核以上(i5,i7) 一个map任务默认1G 100万个文件

                网卡/网线:(数据传输读写)万兆,十万,百万

     

    生产集群:(十几二十几就可以,内存128G,硬盘15T,浪潮,16核,网卡10万兆)

        小型集群:

            20台以下。

        中型集群:

            50台以下。

        大型集群:

            50台以上。

     

    Hadoop发行版本:

        Apache

        CDH:服务收钱,开源免费 (Cloudera's Distribution Hadoop)

            Cloudera公司:发布版本,只支持64位操作系统

                安装:tar包:http://archive.cloudera.com/cdh5/cdh/5

                      rmp包:http://archive.cloudera.com/cdh5/redhat(lunix发行版本)/6/x86_64/cdh 京东等,自己编译rmp包

                      parcels包(压缩包,生态系统所有压缩在里面,最好的):cdh 4.1.2 以后才有的 13年 官方推荐的方式 Cloudera Manager进行安装

        HDP:(Hortonworks Data Platform)

            Hortonworks

    公司版本:

        apache -> cdh | hdp

    面试题:

        apache和cdh比较,为什么选择了cdh?

        CDH省时省力,自动探测host,选择版本,配置简单,几乎是傻瓜式一键安装。MapR方便程度就稍微差一些,但是仍然比Apache要方便很多。但是MapR版本有一个致命的缺点,它用的不是Hadoop的HDFS而是他们自己实现的MapRFS。导致了Hadoop生态系统中所有涉及到文件系统操作的系统都需要使用MapR的发行版。为了兼容MapRFS,源码都被改过。可以到MapR的github账户上看到。Apache的话就真心需要专职运维人员去管理了。需要使用一些集群管理配置工具了。手动绝对累死。你所说的CDH没有对yarn的开发力度不大我觉得这个倒不用太担心。CDH会定期根据Apache开源的最新稳定版本发布相应的CDH版本,所以不存在版本落后最新版很多的情况。而且我记得CDH现在加入了parcel管理,可以非常简单方便地切换hadoop版本而不需要重新安装集群。这个功能诱惑力太大了。另外CDH对于超过50个节点的集群就要开始收费了。这个是需要考虑的问题。5.050个节点限制取消。

        CDH对Hadoop版本的划分非常清晰,只有两个系列的版本,分别是CDH3和CDH4,分别对应Hadoop 1.0和Hadoop 2.0。相比而言,Apache版本则混乱得多。

        CDH比Apache在兼容性,安全性,稳定性上有增强。

        CDH3版本是基于Apache  Hadoop  0.20.2改进的,并融入了最新的patch,CDH4版本是基于Apache Hadoop 2.X改进的,CDH总是并应用了最新Bug修复或者Feature的Patch,并比Apache hadoop同功能版本提早发布,更新速度比Apache官方快。

        CDH支持Kerberos安全认证,Apache则使用简陋的用户名匹配认证.

        CDH文档清晰,很多采用Apache版本的用户都会阅读CDH提供的文档,包括安装文档、升级文档等。

        CDH支持Yum/Apt包,Tar包,RPM包,Cloudera Manager四种方式安装,Apache 只支持Tar包安装。

        CDH使用推荐的Yum/Apt包安装时,有以下几个好处:

            1、联网安装、升级,非常方便

            2、自动下载依赖软件包

            3、Hadoop生态系统包自动匹配,不需要你寻找与当前Hadoop匹配的Hbase,Flume,Hive等软件,Yum/Apt会根据当前安装Hadoop版本自动寻找匹配版本的软件包,并保证兼容性。

            4、自动创建相关目录并软链到合适的地方(如conf和logs等目录);自动创建hdfs, mapred用户,hdfs用户是HDFS的最高权限用户,mapred用户则负责mapreduce执行过程中相关目录的权限。

     

     

    集群环境准备:

        机器:

            磁盘阵列:

                RADI0 RADI1 JBOD

                RADI1:两块磁盘映射为一块磁盘使用。装了CentOs 6.4版本,其中一块磁盘损坏,不会影响系统,因为相互映射备份 0+1更保险

                JBOD:磁盘柜。DataNode存储数据推荐的方式。调优。读取快。

                      datanode存储位置可以配置,挂载一个磁盘,通常:/dfs/data01 /dfs/data02 /dfs/data03

            装系统:redhat 5/6 推荐6、CentOs 6.x 64位 6.4版本、sles 11ur版本

                clouder文档:查看适应哪个版本

            系统:

                IP地址:尽可能在同一网段,尽量在一个交换机上(机架Rack,默认机架/default)。

                设置主机名:bigdata-cdh01.ibeifeng.com、bigdata-cdh02.ibeifeng.com、bigdata-cdh03.ibeifeng.com(主机名里面不能有_下划线)

                    修改主机名:

                        hostname

                        vi /etc/sysconfig/network

                        例:

                            hostname bigdata-cdh02.ibeifeng.com

                            vi /etc/sysconfig/network

                                HOSTNAME=bigdata-cdh02.ibeifeng.com

                IP和主机名映射(所有机器):

                    禁用IPv6(所有机器):

                        sudo echo "alia net-pf-10 off" >> /etc/modprobe.d/dist.conf

                        sudo echo "alia ipv6 off" >> /etc/modprobe.d/dist.conf

                        tail -f /etc/modprobe.d/dist.conf

                    vi /etc/hosts

                    ## BigData CDH 5.x

                    172.16.200.11 bigdata-cdh01.ibeifeng.com bigdata-cdh01

                    172.16.200.12 bigdata-cdh02.ibeifeng.com bigdata-cdh02

                    172.16.200.13 bigdata-cdh03.ibeifeng.com bigdata-cdh03

                    windows下:

                        C:/Windows/System32/drivers/etc/hosts

                        172.16.200.11 bigdata-cdh01.ibeifeng.com bigdata-cdh01

                        172.16.200.12 bigdata-cdh02.ibeifeng.com bigdata-cdh02

                        172.16.200.13 bigdata-cdh03.ibeifeng.com bigdata-cdh03

                普通用户(所有机器):所有集群中普通用户名字一定要一致

                    用于安装软件:

                        adduser beifeng

                        passwd 123456

                        su - beifeng 切换用户

                        su

                        sudo 切换方便

                配置普通用户的sudo权限(所有):

                    su             

                    写权限:chmod 777 /etc/sudoers/chmod u+w /etc/sudoers

                    添加:vi /etc/sudoers

                        beifeng ALL=(root)NOPASSWD:ALL

                    收回权限:chmod 777 /etc/sudoers/chmod u-w /etc/sudoers

                关闭防火墙(所有,不同机器,关键字不同);

                    sudo service iptables stop

                    永久关闭:sudo chkconfig iptables off

                    查看防火墙是否关闭:sudo chkconfig --list|grep iptables

                                iptables 0:off  1:off   2:off   3:off   4:off   5:off   6:off  全部关闭

                    more /etc/inittab:默认运行级别5,节省内存3

                Selinux(所有):

                    禁用:因为麻烦,没有专业运维,运用少,系统服务和驱动程序不兼容,涉及安全

                        sudo vi /etc/sysconfig/selinux

                        SELINUX=disabled

                卸载JDK:

                    查看版本:sudo rpm -qa|grep java

                    卸载,参数强制性,因为有些是有关联的:sudo rpm -e --nodeps xxx

                设置文件打开数量和用户最大进程数(所有):

                    文件打开数量:

                        ulimit -a

                    用户最大进程数:

                        ulimit -u

                    设置:

                        sudo vi /etc/security/limits.conf

                        内容:

                            *(任何参数用户) soft nofile 65535

                            * hard nofile 65535

                            * soft nproc 32000

                            * hard nproc 32000

    文档:www.cloudera.com/content/www/en-us/documentation/enterprise/5-3-x.html                  

            软件:

                集群时间同步:

                    CentOS配置时间同步NTP,为什么要使用ntpd而不是ntpdate?

                        原因很简单,ntpd是步进式的逐渐调整时间,而ntpdate是断点更新,比如现在服务器时间是9.18分,而标准时间是9.28分,ntpd会在一段时间内逐渐的把时间校准到与标准时间相同,而ntpdate会立刻把时间调整到9.28分,如果你往数据库内写入内容或在其他对时间有严格要求的生产环境下,产生的后果会是很严重的。(注:当本地时间与标准时间相差30分钟以上是ntpd会停止工作)

                    找集群一台机器作为【时间服务器】:bigdata-cdh01.ibeifeng.com

                    sudo rpm -qa|grep ntp

                    sudo vim /etc/

                        restrict (ifconfig:inet6 addr) mask 255.255.255.0 nomodify notrap

                        #server 0.centos.pool.ntp.org

                        #server 1.centos.pool.ntp.org

                        #server 2.centos.pool.ntp.org

                        server 127.127.1.0 # local clock

                        fudge 127.127.1.0 stratum 10

                    sudo vi /etc/sysconfig/ntpd

                        SYNC_HWCLOCK=yes

                    sudo service ntpd status

                    sudo service ntpd start

                    sudo chkconfig ntpd on

                    sudo chkconfig --list|grep ntpf

                客户端同步(剩余其他台机器):zookeeper依赖性特别高

                    定时任务:

                        Linux Crontab

                            su

                            crontab -l:查看定时器任务

                            crontab -e:创建定时器任务

                                ## sync cluster time

                                0-59/10 * * * * /usr/sbin/ntpdade bigdata-cdh01.ibeifeng.com

    sudo reboot

    展开全文
  • 最近公司在使用 Cat 作为新的监控平台,通过这个机会,我也尝试去搭建 Cat 集群,下面简单介绍一下搭建的过程。   2、下载 Cat 代码 通过全球最大同性交友网站( https://github.com/dianping/cat )下载 Cat ...

    1、Cat 简介

    Cat 是大众点评开源出来的一个监控平台,很多企业都在使用,比如官方提供的下面这些企业:

    最近公司在使用 Cat 作为新的监控平台,通过这个机会,我也尝试去搭建 Cat 集群,下面简单介绍一下搭建的过程。

     

    2、下载 Cat 代码

    通过全球最大同性交友网站( https://github.com/dianping/cat )下载 Cat 代码,根据官方的介绍文档,在本地很容易搭建完并跑。生成 cat.war ,也可以不下载代码,直接下载 cat.war。

     

    3、搭建集群

    用 4 台 CentOS7 机器来搭建整个 Cat 集群。4 台机器分别如下:

    192.168.153.128   Cat 服务

    192.168.153.129   Cat 服务

    192.168.153.130   Cat 服务

    192.168.153.131   MySQL 服务

     

    JDK 和 Tomcat 安装以及Cat数据库导入就不多说了,直接讲一下配置

    在每台机器的根目录创建 /data 目录,并授读写权

     

    3 台 Cat 服务的 /data/appdatas/cat 目录放如下 3 个文件

    client.xml

    <?xml version="1.0" encoding="utf-8"?>
    <config mode="client" xmlns:xsi="http://www.w3.org/2001/XMLSchema" 
    xsi:noNamespaceSchemaLocation="config.xsd">
    
    <servers>
       <server ip="192.168.153.128" port="2280" http-port="8080" />
       <server ip="192.168.153.129" port="2280" http-port="8080" />
       <server ip="192.168.153.130" port="2280" http-port="8080" />
    </servers>
    
    </config>
    

     

    datasources.xml

    <data-sources>
       <data-source id="cat">
          <maximum-pool-size>3</maximum-pool-size>
          <connection-timeout>1s</connection-timeout>
          <idle-timeout>10m</idle-timeout>
          <statement-cache-size>1000</statement-cache-size>
          <properties>
             <driver>com.mysql.jdbc.Driver</driver>
             <url><![CDATA[jdbc:mysql://192.168.153.131:3306/cat]]></url>
             <user>root</user>
             <password></password>
             <connectionProperties><![CDATA[useUnicode=true&characterEncoding
    =UTF-8&autoReconnect=true&socketTimeout=120000]]></connectionProperties>
          </properties>
       </data-source>
       
       <data-source id="app">
          <maximum-pool-size>3</maximum-pool-size>
          <connection-timeout>1s</connection-timeout>
          <idle-timeout>10m</idle-timeout>
          <statement-cache-size>1000</statement-cache-size>
          <properties>
             <driver>com.mysql.jdbc.Driver</driver>
             <url><![CDATA[jdbc:mysql://192.168.153.131:3306/cat]]></url>
             <user>root</user>
             <password></password>
             <connectionProperties><![CDATA[useUnicode=true&characterEncoding
    =UTF-8&autoReconnect=true&socketTimeout=120000]]></connectionProperties>
          </properties>
       </data-source>
    </data-sources>


    server.xml

    <?xml version="1.0" encoding="utf-8"?>
    <config local-mode="false" hdfs-machine="false" job-machine="true" 
    alert-machine="false">
       <storage  local-base-dir="/data/appdatas/cat/bucket/" 
    max-hdfs-storage-time="15" local-report-storage-time="7" 
    local-logivew-storage-time="7"></storage>
       <console default-domain="Cat" show-cat-domain="true">
          <remote-servers>192.168.153.128:8080,192.168.153.129:8080,
    192.168.153.130:8080</remote-servers>
       </console>
    </config>
    

    启动 3 台 Cat 服务,到 Cat 配置界面配置

     

    <?xml version="1.0" encoding="utf-8"?>
    <router-config backup-server="192.168.153.128" backup-server-port="2280">
       <default-server id="192.168.153.128" weight="1.0" port="2280" 
       enable="true"/>
       <default-server id="192.168.153.129" weight="1.0" port="2280" 
       enable="true"/>
       <default-server id="192.168.153.130" weight="1.0" port="2280" 
       enable="true"/>
    </router-config>
    

    这样子集群就搭建完了

     

    4、Cat 客户端验证

    这在客户端运行的磁盘上创建 data/appdatas/cat/client.xml 文件,配置如下

    <?xml version="1.0" encoding="utf-8"?>
    <config mode="client" xmlns:xsi="http://www.w3.org/2001/XMLSchema" 
    xsi:noNamespaceSchemaLocation="config.xsd">
       <servers>
          <server ip="192.168.153.128" port="2280" http-port="8080" />
          <server ip="192.168.153.129" port="2280" http-port="8080" />
          <server ip="192.168.153.130" port="2280" http-port="8080" />
       </servers>
    </config>
    

    maven 引入 cat-client

    <dependency>
      <groupId>com.dianping.cat</groupId>
      <artifactId>cat-client</artifactId>
      <version>2.0.0</version>
    </dependency>
    

    如果是 Web 项目,在 web.xml 加上 

    <filter>
      <filter-name>cat-filter</filter-name>
      <filter-class>com.dianping.cat.servlet.CatFilter</filter-class>
    </filter>
    <filter-mapping>
      <filter-name>cat-filter</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
      <dispatcher>FORWARD</dispatcher>
    </filter-mapping>
    

    在 META-INF 添加 app.properties 文件,配置应用名

    app.name = abc

    运行后就可以看到你的应用在图片的红框上

     

    嗯,这样子就搞定啦。。。

    展开全文
  • CM是cloudera manager的简称,是CDH的管理平台,主要包括CM server, CM agent。通过CM可以对CDH进行配置,监测,报警,log查看,动态添加删除各种服务等。 一、准备工作 环境 JDK: 1.8 centos: ...

    Cloudera Manager

    Cloudera Manager 分为两个部分:CDH和CM。

    CDH是Cloudera Distribution Hadoop的简称,顾名思义,就是cloudera公司发布的Hadoop版本,封装了Apache Hadoop,提供Hadoop所有的服务,包括HDFS,YARN,MapReduce以及各种相关的components:HBase, Hive, ZooKeeper,Kafka等。

    CM是cloudera manager的简称,是CDH的管理平台,主要包括CM server, CM agent。通过CM可以对CDH进行配置,监测,报警,log查看,动态添加删除各种服务等。

    一、准备工作

    环境

    JDK:1.8  
    centos:7.3
    
    操作系统:CentOS 6
    JDK 版本:1.7.0_80
    
    所需安装包及版本说明:由于我们的操作系统为CentOS7,需要下载以下文件:
    
    cloudera-manager-centos7-cm5.12.1_x86_64.tar.gz
    
    CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel
    
    CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1
    
    manifest.json

    Cloudera Manager 下载目录
    http://archive.cloudera.com/cm5/cm/5/

    CDH 下载目录
    http://archive.cloudera.com/cdh5/parcels/5.12.1/

    manifest.json 下载
    http://archive.cloudera.com/cdh5/parcels/5.12.1/manifest.json

    CHD5 相关的 Parcel 包放到主节点的/opt/cloudera/parcel-repo/目录中

    CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1 重命名为 CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha

    这点必须注意,否则,系统会重新下载 CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel 文件

    本文采用离线安装方式,在线安装方式请参照官方文

    主机名 ip地址 安装服务
    node1 (Master) 192.168.252.121 jdk、cloudera-manager、MySql
    node2 (Agents) 192.168.252.122 jdk、cloudera-manager
    node3 (Agents) 192.168.252.123 jdk、cloudera-manager
    node4 (Agents) 192.168.252.124 jdk、cloudera-manager
    node5 (Agents) 192.168.252.125 jdk、cloudera-manager
    node6 (Agents) 192.168.252.126 jdk、cloudera-manager
    node7 (Agents) 192.168.252.127 jdk、cloudera-manager

    二、系统环境搭建

    1、网络配置(所有节点)

    修改 hostname

    命令格式

    hostnamectl set-hostname <hostname>

    依次修改所有节点 node[1-7]

    hostnamectl set-hostname node1

    重启服务器

    reboot

    修改映射关系

    1.在 node1 的 /etc/hosts 文件下添加如下内容

    $ vi /etc/hosts

    2.查看修改后的/etc/hosts 文件内容

    [root@node7 ~]# cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    
    192.168.252.121 node1
    192.168.252.122 node2
    192.168.252.123 node3
    192.168.252.124 node4
    192.168.252.125 node5
    192.168.252.126 node6
    192.168.252.127 node7

    2、SSH 免密码登录

    1.在集群node1的 /etc/ssh/sshd_config 文件去掉以下选项的注释

    vi /etc/ssh/sshd_config 
    RSAAuthentication yes      #开启私钥验证
    PubkeyAuthentication yes   #开启公钥验证

    2.将集群node1 修改后的 /etc/ssh/sshd_config 通过 scp 命令复制发送到集群的每一个节点

    for a in {2..7} ; do scp /etc/ssh/sshd_config node$a:/etc/ssh/sshd_config ; done

    3.生成公钥、私钥

    1.在集群的每一个节点节点输入命令 ssh-keygen -t rsa -P '',生成 key,一律回车

    ssh-keygen -t rsa -P ''

    4.在集群的node1 节点输入命令

    将集群每一个节点的公钥id_rsa.pub放入到自己的认证文件中authorized_keys;

    for a in {1..7}; do ssh root@node$a cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys; done

    5.在集群的node1 节点输入命令

    将自己的认证文件 authorized_keys 通过scp命令复制发送到每一个节点上去:/root/.ssh/authorized_keys`

    for a in {1..7}; do scp /root/.ssh/authorized_keys root@node$a:/root/.ssh/authorized_keys ; done

    6.在集群的每一个节点节点输入命令

    接重启ssh服务

    sudo systemctl restart sshd.service

    7.验证 ssh 无密登录

    开一个其他窗口测试下能否免密登陆

    例如:在node3

    ssh root@node2

    exit 退出

    3、关闭防火墙

    systemctl stop firewalld.service

    4、关闭 SELINUX

    查看

    [root@node1 ~]# getenforce
    Enforcing
    [root@node1 ~]# /usr/sbin/sestatus -v
    SELinux status:  

    临时关闭

    ## 设置SELinux 成为permissive模式
    ## setenforce 1 设置SELinux 成为enforcing模式
    setenforce 0

    永久关闭

    vi /etc/selinux/config

    SELINUX=enforcing 改为 SELINUX=disabled

    设置后需要重启才能生效

    PS 我是修改node1/etc/selinux/config 后,把配置文件复制到其他节点

    for a in {2..7}; do scp /etc/selinux/config root@node$a:/etc/selinux/config ; done

    重启所有节点

    reboot

    5、安装 JDK

    下载Linux环境下的jdk1.8,请去(官网)中下载jdk的安装文件

    我在百度云盘分下的链接:http://pan.baidu.com/s/1jIFZF9s 密码:u4n4

    上传在 /opt 目录

    解压

    cd /opt
    tar zxvf jdk-8u144-linux-x64.tar.gz
    mv jdk1.8.0_144/ /lib/jvm

    配置环境变量

    vi /etc/profile
    #jdk
    export JAVA_HOME=/lib/jvm
    export JRE_HOME=${JAVA_HOME}/jre   
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib   
    export PATH=${JAVA_HOME}/bin:$PATH 

    使环境变量生效

    source /etc/profile

    验证

    [root@localhost ~]# java -version
    java version "1.8.0_144"
    Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
    Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

    6、设置 NTP

    所有节点安装 NTP

    yum install ntp

    设置同步

    ntpdate -d 182.92.12.11

    7、安装配置 MySql

    主节点 安装 MySql

    MySQL依赖于libaio 库

    yum search libaio
    yum install libaio

    下载,解压,重命名

    通常解压在 /usr/local/mysql

    mysql-5.7.19-linux-glibc2.12-x86_64 文件夹,重命名成mysql,这样就凑成/usr/local/mysql目录了

    cd /opt/
    wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
    tar -zxvf /opt/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
    mv /usr/local/mysql-5.7.19-linux-glibc2.12-x86_64/ /usr/local/mysql

    1. 新建用户组和用户

    groupadd mysql
    useradd mysql -g mysql

    2. 创建目录并授权

    cd /usr/local/mysql/ 
    mkdir data mysql-files
    chmod 750 mysql-files
    chown -R mysql .
    chgrp -R mysql .

    3. 初始化MySQL

    bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up

    4. 注意密码 mysql 临时密码

    [注意]root@localhost生成临时密码:;b;s;)/rn6A3,也就是root@localhost:后的字符串

    2017-09-24T08:34:08.643206Z 1 [Note] A temporary password is generated for root@localhost: D<qha)5gtr<!

    5. 授予读写权限

    chown -R root .
    chown -R mysql data mysql-files

    6. 添加到MySQL 启动脚本到系统服务

    cp support-files/mysql.server /etc/init.d/mysql.server

    7. 给日志目录授予读写权限

    mkdir /var/log/mariadb
    touch /var/log/mariadb/mariadb.log
    chown -R mysql:mysql /var/log/mariadb

    8. 修改 /etc/my.cnf

    vi /etc/my.cnf

    修改 [mysqld]组下的 socket 路径,注释掉/var/lib/mysql/mysql.sock,加一行为tmp/mysql.soc

    [mysqld]
    datadir=/var/lib/mysql
    #socket=/var/lib/mysql/mysql.sock
    socket=/tmp/mysql.sock

    9.启动MySQL服务

    service mysql.server start

    或者

    /usr/local/mysql/support-files/mysql.server start

    10. 登录MySQL

    /usr/local/mysql/bin/mysql -uroot -p
    Enter password: 

    如果不知道密码
    密码在,安装MySQL步骤 4 ,有提到,怎么找初始化临时密码

    11. 设置MySQL密码

    登陆成功后,设置MySQL密码

    mysql> ALTER USER   'root'@'localhost' identified by 'mima';
    mysql> flush privileges;

    12. 开启远程登录

    mysql> grant all privileges on *.*  to  'root'@'%'  identified by 'mima'  with grant option;
    mysql> flush privileges;
    mysql> exit;

    8、下载依赖包

    yum -y install chkconfig
    yum -y install bind-utils
    yum -y install psmisc
    yum -y install libxslt
    yum -y install zlib
    yum -y install sqlite
    yum -y install cyrus-sasl-plain
    yum -y install cyrus-sasl-gssapi
    yum -y install fuse
    yum -y install portmap
    yum -y install fuse-libs
    yum -y install redhat-lsb

    三、cloudera manager Server & Agent 安装

    1、安装 CM Server & Agent

    在所有节点,创建/opt/cloudera-manager

    mkdir /opt/cloudera-manager

    把下载好的cloudera-manager-centos7-cm5.12.1_x86_64.tar.gz安装包上传至 node1 节点/opt/目录

    在 node1 节点拷贝 cloudera-manager-centos7-cm5.12.1_x86_64.tar.gz 到所有 Server、Agent 节点创建 /opt/cloudera-manager 目录:

    for a in {2..7}; do scp /opt/cloudera-manager-*.tar.gz root@node$a:/opt/ ; done

    所有 Server、Agent 节点节点解压安装 Cloudera Manager Server & Agent

    cd /opt
    tar xvzf cloudera-manager*.tar.gz -C /opt/cloudera-manager

    2、创建用户 cloudera-scm(所有节点)

    cloudera-scm 用户说明,摘自官网:

    Cloudera Manager Server and managed services are configured to use the user account cloudera-scm by default, creating a user with this name is the simplest approach. This created user, is used automatically after installation is complete.

    Cloudera管理器服务器和托管服务被配置为在默认情况下使用用户帐户Cloudera-scm,创建具有这个名称的用户是最简单的方法。创建用户,在安装完成后自动使用。

    执行:在所有节点创建cloudera-scm用户

    useradd --system --home=/opt/cloudera-manager/cm-5.12.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

    3、配置 CM Agent

    修改 node1 节点

    /opt/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/config.ini中的server_host为主节点的主机名。

    cd /opt/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/
    vi config.ini

    在node1 操作将 node1 节点修改后的 (复制到所有节点)

    for a in {1..7}; do scp /opt/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/config.ini root@node$a:/opt/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/config.ini ; done

    4、配置 CM Server 的数据库

    在主节点 node1 初始化CM5的数据库:

    下载 mysql 驱动包

    cd /opt/cloudera-manager/cm-5.12.1/share/cmf/lib
    wget http://maven.aliyun.com/nexus/service/local/repositories/hongkong-nexus/content/Mysql/mysql-connector-java/5.1.38/mysql-connector-java-5.1.38.jar

    启动MySQL服务

    service mysql.server start
    cd /opt/cloudera-manager/cm-5.12.1/share/cmf/schema/
    
    ./scm_prepare_database.sh mysql cm -h node1 -uroot -pmima --scm-host node1 scm scm scm

    看到如下信息,恭喜您,配置没毛病

    [main] DbCommandExecutor              INFO  Successfully connected to database.
    All done, your SCM database is configured correctly!
    

    格式:

    scm_prepare_database.sh mysql cm -h <hostName> -u<username>  -p<password> --scm-host <hostName>  scm scm scm
    
    对应于:数据库类型  数据库 服务器 用户名 密码  –scm-host  Cloudera_Manager_Server 所在节点……

    5、创建 Parcel 目录

    Manager 节点创建目录/opt/cloudera/parcel-repo,执行:

    将下载好的文件

    CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel
    CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha
    manifest.json

    拷贝到该目录下。

    mkdir -p /opt/cloudera/parcel-repo
    chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
    cd /opt/cloudera/parcel-repo
    

    重命名,CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1 否则,系统会重新下载 CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel

    mv CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1 CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha

    Agent 节点创建目录/opt/cloudera/parcels,执行:

    mkdir -p /opt/cloudera/parcels
    chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

    6、启动 CM Manager&Agent 服务

    注意,mysql 服务启动,防火墙关闭

    在 node1 (master) 执行:

    Server

    /opt/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-server start

    在 node2-7 (Agents) 执行:

    Agents

    /opt/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent start

    访问 http://Master:7180 若可以访问(用户名、密码:admin),则安装成功。

    Manager 启动成功需要等待一段时间,过程中会在数据库中创建对应的表需要耗费一些时间。

    四、CDH5 安装

    CM Manager && Agent 成功启动后,登录前端页面进行 CDH 安装配置。

    免费版本的 CM5 已经去除 50 个节点数量的限制。

    各个 Agent 节点正常启动后,可以在当前管理的主机列表中看到对应的节点。

    选择要安装的节点,点继续。

    点击,继续,如果配置本地 Parcel 包无误,那么下图中的已下载,应该是瞬间就完成了,然后就是耐心等待分配过程就行了,大约 10 多分钟吧,取决于内网网速。

    (若本地 Parcel 有问题,重新检查步骤三、5 是否配置正确)

    点击,继续,如果配置本地Parcel包无误,那么下图中的已下载,应该是瞬间就完成了,然后就是耐心等待分配过程就行了,大约10多分钟吧,取决于内网网速。

    遇到问题

    问题一
    接下来是服务器检查,可能会遇到以下问题:

    Cloudera 建议将 /proc/sys/vm/swappiness 设置为最大值 10。当前设置为 30。

    使用 sysctl 命令在运行时更改该设置并编辑 /etc/sysctl.conf,以在重启后保存该设置。

    您可以继续进行安装,但 Cloudera Manager 可能会报告您的主机由于交换而运行状况不良。以下主机将受到影响:node[2-7]

    echo 0 > /proc/sys/vm/swappiness

    问题二
    已启用透明大页面压缩,可能会导致重大性能问题。请运行
    echo never > /sys/kernel/mm/transparent_hugepage/defragecho never > /sys/kernel/mm/transparent_hugepage/enabled
    以禁用此设置,然后将同一命令添加到 /etc/rc.local 等初始化脚本中,以便在系统重启时予以设置。以下主机将受到影响: node[2-7]

    echo never > /sys/kernel/mm/transparent_hugepage/defrag
    echo never > /sys/kernel/mm/transparent_hugepage/enabled 

    五、脚本

    MySql 建库&&删库

    1、MySql 建库&&删库

    amon

    create database amon DEFAULT CHARACTER SET utf8; 
    grant all on amon.* TO 'amon'@'%' IDENTIFIED BY 'amon';

    hive

    create database hive DEFAULT CHARACTER SET utf8; 
    grant all on hive.* TO 'hive'@'%' IDENTIFIED BY 'hive';

    oozie

    create database oozie DEFAULT CHARACTER SET utf8; 
    grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY 'oozie';

    Contact

    关注公众号-搜云库

    展开全文
  • 集群部署的优点:当HMaster主节点出现故障,HMaster备用节点会用Zookeeper获取主HMaster存在的整个Hbase集群状态信息,但是Hbase可以通过Zookeeper随时感知每个HegionServer的状况,以便于控制管理。 1. 集群...

    Hbase的基本概念:

    Hbase是Hadoop体系的一大核心成员

    (1)非结构化数据库

    (2)实现海量数据的存储

    (3)适合大数据实时查询

    (4)数据查询工作转换为MapReduce

     

    (下面有几张截图,的时间是2017年,那是因为我的一个软件过期了,所以我就非常暴力的把系统时间改为2017,所以不要对你产生干扰)

     

    实验所需:

    建议:hbase-1.4.3版本

    此次实验是要在zookeeper和Hadoop的基础上做的,所以,如果你前面没有做好,请看我的上一篇博客

     

     

     

    单点部署

    1.下载HBASE

    Hbase支持单节点部署,常用于一些测试环境中

     

    2.安装Hbase

    创建安装目录mkdir /huatec/hbase

    安装hbase tar –zxvf hbase-1.4.3-bin.tar.gz –C /huatec/hbase

    3.配置hbase-env.sh

    Hbase运行需要依赖jdk,需要“JAVA_HOME”的值修改到安装jdk的路径

    export JAVA_HOME=/usr/local/java/jdk1.8.0_181/

    4.配置hbase-site.xml

    这个是hbase的核心配置文件,很多核心配置属性都在这个文件中配置

    <configuration>

    <property>

    <name>Hbase.rootdir</name>

    <value>file:///root/huatec/hbase</value>

    <description>

    The direction shared by RegionServers</description>

    </property>

    </configuration>

    5.启动hbase

    cd /huatec/hbase-1.4.3/bin

    ./start-hbase.sh

    Jps查看HMaster

    6.通过浏览器查看hbase

    在浏览器中输入http://192.168.198.128:16010

    单点部署简单,没有出现问题

    集群部署:

    集群部署的优点:当HMaster主节点出现故障,HMaster备用节点会用Zookeeper获取主HMaster存在的整个Hbase集群状态信息,但是Hbase可以通过Zookeeper随时感知每个HegionServer的状况,以便于控制管理。

    1.集群规划

    序号

    主机名

    IP

    安装的软件

    运行的进程

    1

    hautec01

    192.168.198.128

    Jdk

    Hadoop

    Zookeeper

    hbase

    NameNode,zkfc, NodeManager,

    ResourceManager,QuorumPeerMain, DataNode,HMaster

    2

    huatec02

    192.168.198.129

    Jdk

    Hadoop

    Zookeeper

    hbase

    Namenode,zkfc, journalnode,

    quorumpeermain, haster

    3

    huatec03

    192.168.198.130

    Jdk

    Hadoop

    Zookeeper

    hbase

    Journalnode,quorumpeermain,hregionserver

    2.集群部署

    (1)Hbase-env.sh

    需要修改“JAVA_HOME”的值修改安装jdk的安装路径

    指定jdk(在前面做过此次不再改正)

    Export JAVA_HOME=/usr/local/java/jdk1.8.0_181

    告诉hbase使用外部的zk,将其设置为false

    Export HBASE_MANAGES_ZK=false

    (2)hbase-site.xml

    <configuration>

    <!--指定hbase在HDFS上存储的路径-->

    <property>

    <name>hbase.rootdir</name>

    <value>hdfs://ns1/hbase</value>

    </property>

    <!-指定hbase是分布式的—>

    <property>

    <name>hbase.cluster.distributed</name>

    <value>true</value>

    </property>

    <!—指定zk的地址,多个用“.”分隔 -->

    <property>

    <name>hbase.zookeeper.quorum</name>

    <value>huatec01:2181,huatec02:2181,huatec03:2181</value>

    </property>

    </configuration>

    (3)regionservers

    在配置目录下,修改regionservers文件,写入到huatec03

    (4)复制Hadoop配置文件

    因为hbase底层依赖HDFS,复制hdfs-site.xml和core-site.xml到hbase的conf目录下

    (5)拷贝文件到其他主机

    scp –r /huatec/hbase/  huatec02:/huatec/

    scp –r /huatec/hbase/  huatec03:/huatec/

    4.启动集群

    它的启动是有顺序的顺序为:

    先启动zookeeper(3台)

    再启动Hadoop

    最后启动hbase

    在huatec01下面

    start-hbase.sh

    在huatec02下面

    Hbase-daemon.sh start master

    在huatec03下面

    Hbase-daemon.sh start regionserver

    可以通过浏览器访问hbase管理页面:http://192.168.198.128:16010

     

     

     

    注意:

     

    这次实验做的过程中出现了下面的问题

    1.在最后面浏览器访问的时候出现:错误500

    解决办法:

    同步时间

     

    2.不能访问16010端口的问题:

    解决办法:

    在配置文件hbase-site.xml添加如下内容:

     

    展开全文
  • Spinnaker 是 Netflix 的开源项目,是一个持续交付平台,它提供在多种平台上实现开箱即用的集群管理和部署功能的平台。我们可以通过其强大的集群管理特性,来查看和管理集群中的资源。集群管理主要包括服务组...
  • 搭建集群平台

    2017-07-25 21:20:41
    *******************搭建集群结点*****************#vim/etc/yum.repos.d/rhel-source.repo安装服务:#yuminstall-yricci (两个结点上都安装)#passwdricci#/etc/init.d/riccistart#chkconfigriccion#开机自启动#...
  • uWSGI集群平台

    2017-05-03 18:34:39
    集群是uWSGI服务器的关键功能之一,该功能从0.9.7-dev开始提供。   首先我们看一个通过TCP套接字实现的简单应用:   ./uwsgi -w werkzeug.testapp:test_app -s 192.168.173.100:3032 -M -p 4 ...
  • 懒得 copy 一份了。。。 看个人公众号文章链接: 搭建 Cat 监控集群平台
  • 集群指标监控平台

    2021-02-16 19:31:43
    通过这款软件用户可以轻松检查群集的状态,并且能够实时查看到各项关键指标和多维度历史,同时提供创建主题和删除主题的功能,能够批量生成多个主题,是一站式的Apache Kafka集群指标监控与运维管控平台。...
  • 搭建Jmeter容器集群平台

    千次阅读 热门讨论 2018-05-03 11:11:49
    基于大量虚拟机的Jmeter集群有个缺点,就是不方便管理,比如需要重启Jmeter服务,还需要一个个的连接到虚拟机上进行操作,而且安装部署不方便(无法一键部署),也不方便将集群封装成整体应用对外提供服务。...
  • ARM平台搭建Hadoop集群

    千次阅读 2018-07-06 21:14:40
    /*Hadoop是Apache旗下主流的大数据计算和存储框架之一,在近年来应用的越来越广泛。...而Java是跨平台的,可以“run everywhere”,这就给在ARM平台上搭建Hadoop集群带来了希望。事实上,已经有多家大厂和个人爱好...
  • Kubernetes集群管理平台

    2019-09-14 14:45:54
    Rancher是一个开源的企业级容器管理平台。通过Rancher,企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台。Rancher提供了在生产环境中使用的管理Docker和Kubernetes的全栈化容器部署与管理平台。 ...
  • Java集群平台terracotta

    2012-06-12 15:26:06
    Terracotta是一款由美国Terracotta公司开发的著名开源Java集群平台。它在JVM与Java应用之间实现了一个专门处理集群功能的抽象层,以其特有的增量检测、智能定向传送、分布式协作、服务器镜像、分片等技术,允许用户...
  • Kubernetes是google开源的容器集群管理系统,基于docker构建一个容器的调度服务,提供资源调度、均衡容灾、服务注册、动态扩展等功能套件。基于容器的云平台 Kubernetes基于docker容器的云平台,简称k8s openstack...
  • 一、Hadoop集群环境搭建配置 二、Hadoop集群环境安装 三、Hadoop集群完全分布式坏境搭建 回到顶部 一、Hadoop集群环境搭建配置 1、前言 Hadoop的搭建分为三种形式:单机模式、伪分布模式、完全分布模式,只要...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,958
精华内容 5,983
关键字:

平台集群