hdfs-伪分布式安装

285 阅读3分钟

伪分布式:在一个节点启动所有的角色:NN、DN、SNN 完全分布式: 基础环境 部署配置 1)角色在哪里启动 NN:core-site.xml: fs.defaultFS hdfs://node01:9000 DN: slaves node01 SNN: hdfs-site.xml: dfs.namenode.secondary.http-address node01:50090 2)角色启动时的细节配置 dfs.namenode.name.dir dfs.datanode.data.dir 初始化&启动 格式化 fsimage VERSION start-dfs.sh 加载我们的配置文件 通过ssh 免密的方式去启动相应的角色 伪分布式到完全分布式:重新规划角色 host NN SNN DN node01 1 node02 1 1 node03 1 node04 1

node01:
	stop-dfs.sh
ssh 免密是为了什么:启动start-dfs.sh:在哪里启动,那台就要对别人公开自己的公钥
	这一台有什么特殊要求吗:没有
node01:
	scp /root/.ssh/id_dsa.pub node02:/root/.ssh/node01.pub
	scp /root/.ssh/id_dsa.pub node03:/root/.ssh/node01.pub
	scp /root/.ssh/id_dsa.pub node04:/root/.ssh/node01.pub
node02:
	cd ~/.ssh
	cat node01.pub >> authorized_keys
node03:
	cd ~/.ssh
	cat node01.pub >> authorized_keys
node04:
	cd ~/.ssh
	cat node01.pub >> authorized_keys

配置部署: node01: cd $HADOOP/etc/hadoop vi core-site.xml 不需要改 vi hdfs-site.xml dfs.replication 2 dfs.namenode.name.dir /var/bigdata/hadoop/full/dfs/name dfs.datanode.data.dir /var/bigdata/hadoop/full/dfs/data dfs.namenode.secondary.http-address node02:50090 dfs.namenode.checkpoint.dir /var/bigdata/hadoop/full/dfs/secondary vi slaves node02 node03 node04 分发: cd /opt scp -r ./bigdata/ node02:pwd scp -r ./bigdata/ node03:pwd scp -r ./bigdata/ node04:pwd 格式化启动 hdfs namenode -format start-dfs.sh hadoop-hdfs-ha 思路: 主从集群:结构相对简单,主与从协作 主:单点,数据一致好掌握 问题: 单点故障,集群整体不可用 压力过大,内存受限 解决方案: 单点故障: 高可用方案:HA(High Available) 多个NN,主备切换,主 压力过大,内存受限: 联邦机制:Federation(元数据分片) 多个NN,管理不同的元数据 HADOOP 2.X只支持HA的一主一备 HDFS-HA解决方案: NameNode元数据: 1.client交互操作mkdir /a 2.DataNode提交的block HA:数据同步(client的操作) 分布式:强一致性破坏可用性 ZK: 1.目录树结构:X节点B 抢锁 2.事件机制->call back watch监控 3.临时节点 在HA模式中没有SNN Standby角色滚动落fsimage SNN(非HA模式)

CAP原则:
Consistency:一致性
Availability:可用性
Partition tolerance:分区容忍性
CA: RDBMS
CP: MongoDB、HBase、Redis
AP:CouchDB、Cassandra、DynamoDB、Riak
Paxos算法:
Paxos算法四莱斯利·兰伯特于1990年提出的一种基于消息传递的一致性算法。
这个算法被认为是类似算法中最有效的。
该算法覆盖了全部场景的一致性。
每种技术会根据自己技术的特征选择简化算法实现。
传递:NN之间通过一个可靠的传输技术,最终数据能同步就可以
我们一般假设网络等因素是稳定的
类似一种带存储能力的消息队列。

简化思路:
分布式节点是否明确
节点权重是否明确
强一致性破坏可用性
过半通过可以中和一致性和可用性
最简单的自我协调实现:主从
主的选举:明确节点数量和权重
主从的职能:
	主:增删改查
	从:查询,增删改传递给主
	主与从:过半数同步数据

HA方案:
多台NN主备模式,Active和Standby状态
	Active
	

HDFS-Federation解决方案:
NN