- 博客(26)
- 资源 (4)
- 收藏
- 关注
原创 hdfs写文件creat客户端代码追踪
1 创建输出流过程 客户端通过给FileSystem对象的create方法传入Path对象来构建输出流,在FileSystem对象内部调用多个create方法来传入相应的配置。 /** * Create an FSDataOutputStream at the indicated Path with write-progress * reporting. * @param f the file name to open * @param overwrite if a file w
2020-09-09 09:34:47
327
原创 2020-09-09
HDFS主要RPC接口 ClientProtocol:客户端与名字节点间的接口。客户端通过这个接口访问名字节点,操作文件或目录的元数据信息(如,获取数据块位置后,才能继续与数据节点通信读取数据)。另外,还能够管理或查看名字节点的状态(和由名字节点维护的集群统计信息)。 ClientDatanodeProtocol:客户端与数据节点间的接口。用于客户端和数据节点进行交互。这个接口用得比较少,客户端和数据节点间的主要交互是通过流接口进行读/写文件数据的操 作;主要在错误发生时,客户端需要数据节点配合进行恢复
2020-09-09 09:33:43
319
原创 2020-09-09
HDFS在写入数据时有两种选择磁盘策略: 基于轮询的策略(RoundRobinVolumeChoosingPolicy) 基于可用空间的策略(AvailableSpaceVolumeChoosingPolicy) 1. 基于轮询的策略 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aeYmLnCM-1599615000844)(/images/23/599/c6d3bf7d455c36b9cb4c96ebad2a12c.png)] 轮询策略的思想就是从对象1遍历到对象n,
2020-09-09 09:30:25
270
原创 Hadoop写文件create代码追踪
服务端代码分析 NameNodeRpcServer.create方法:namenode所有的rpc响应都由NameNodeRpcServer来处理 1.参数配置及检查 检查namenode的状态 checkNNStartup(); private void checkNNStartup() throws IOException { if (!this.nn.isStarted()) { String message = NameNode.composeNotStart
2020-09-08 13:39:34
498
原创 CentOS7 密码重置
Reboot 重启系统,系统启动进入欢迎界面,加载内核步骤时,按 e,然后选中 “CentOS Linux (3.10.0-327.e17.x86_64)7 (Core)” 继续按 e 进入编辑模式,找到 ro crashkernel=auto xxx 项,将 ro 改成 rw init=/sysroot/bin/sh 按 ctrl+x 按钮进入单用户模式 执行命令 chroot /sysroot 访问系统,并使用 passwd 修改 root 密码 更新系统信息,touch /.autorelabel.如
2020-08-31 10:49:30
714
原创 修改CentOS7 服务器网卡名称
ifcfg-eno16777736 > ifcfg-eth0 编辑/etc/sysconfig/grub 文件 //在倒数第二行 quiet 后加入如下代码net.ifnames=0 biosdevname=0 GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 biosdevname=0" 执行命令 grub2-mkconfig
2020-08-31 10:45:32
216
原创 IP地址分类
A类IP地址 第一段号码为网络号码,剩下的三段号码为本地计算机的号码 A 类网络地址数量较少,有 126个网络,每个网络可以容纳主机数达1600 万台(2的24次方个) A 类 IP 地址 地址范围 1.0.0.0 到 127.255.255.255 A 类 IP 地址的子网掩码为 255.0.0.0 B类IP地址 前两段号码为网络号码,剩下的两段号码为本地计算机的号码 B类网络地址适 用于中等规模的网络有16384个网络,每个网络所能容纳的计算机数为 6 万多台 B类IP地址地址范围 128.0.0
2020-08-31 10:37:56
352
原创 hadoop 读流程追踪-Client端
Client端读文件流程 创建DFSInputStream 具体流程 代码分析: FileSystem.get方法获取DistributedFileSystem对象 fileSystem = FileSystem.get(configuration); System.out.println(fileSystem.getClass()); 输出 //根据configuration传入的参数分析schema后获取的hdfs对应的文件系统DistributedFileSystem,具体流程不再展示 class
2020-08-28 14:54:38
438
原创 hadoop-3.1.1-RPC(1)
RPC :Remote Procedure Call 本地程序像调用本地方法一样调用远程计算机上的应用程序,采用客户端/服务器模式,请求程序是客户端,服务提供程序就是服务端 hadoop RPC架构 RPC类结构 RPC类提供一个统一的接口,客户端通过getProxy()方法获取代理对象,服务端通过内部类Builder.build()方法构造server。 RPC类在namenode中的使用 构造server org.apache.hadoop.hdfs.server.namenode.NameNo
2020-08-25 15:11:19
338
原创 ambari集群Kerberos服务异常
异常现象 组件列表里面没有kerberos组件,安全认证页面显示已经开启了Kerberos服务。主机组件列表里面也没有Kerberos-client组件。kdc服务正常。怀疑有人禁用Kerberos服务失败了,但是没有查到日志记录。 问题排查 ambari.cluster表: ambari根据clusters表中security_type的状态(KERBEROS/NONE)显示是否开启Kerberos服务了 如果为NONE:则下面的页面会显示:启用Kerberos安全 如果为KERBERO:则显示如
2020-08-14 11:32:09
754
原创 hadoop集群hdfs和yarn开启HA配置
namenode开启HA core-site.xml文件配置 <configuration> <!-------------------------------------------------------------------------------------------------> <property> <name>fs.defaultFS</name>
2020-08-13 18:30:29
236
原创 jvm远程调试
-Djava.rmi.server.hostname=192.168.23.65 -Dcom.sun.management.jmxremote.port=18888 -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.managementote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
2020-08-06 16:47:45
210
原创 测试网络带宽和延迟
yum install -y qperf 测试步骤: 找两个机器,一个作为qperf的服务器端,(服务器ip地址是192.168.80.50) 如下: [root@localhost ~]# qperf 客户端 [root@localhost ~]# qperf -t 60 --use_bits_per_sec 192.168.80.50 tcp_bw tcp_lat tcp_bw: bw = 1.58 Gb/sec--------->>>这就是网络带宽 tcp_lat: ...
2020-07-24 16:54:56
583
原创 redis部署
下载安装包 wget http://download.redis.io/releases/redis-5.0.8.tar.gz 解压 tar zxf redis-5.0.8.tar.gz 编译 make
2020-05-11 17:25:36
143
原创 apache源码包安装
下载安装包 wget https://downloads.apache.org/httpd/httpd-2.4.43.tar.gz wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.gz wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz 编译安装依赖 * apr tar zxf apr-1.7.0.tar.gz cd ap
2020-05-11 17:22:38
294
原创 activemq部署
下载源码 wget http://activemq.apache.org/components/classic/download 解压 tar zxf apache-activemq-5.15.12-bin.tar.gz 修改端口号 apache-activemq-5.15.12/conf/jetty.xml <property name="port" value="18161"/>
2020-05-11 17:10:15
157
原创 mysql主备复制模式搭建
在主备节点执行以下操作: 准备工作目录 # MySQL工作目录 mkdir -p $MySQLPath/mysql # MySQL配置目录 mkdir -p $MySQLPath/mysql/etc # MySQL数据目录 mkdir -p $MySQLPath/mysql/data # MySQL日志目录 mkdir -p $MySQLPath/mysql/errorLog touch $M...
2020-02-27 09:44:25
343
原创 ambari-server主备搭建
说明 ambari-server目前没有主备模式,这里利用nginx搭建一个主备环境。 nginx搭建 下载源码:nginx-1.14.2.tar.gz 解压编译 * tar -zxvf nginx-1.14.2.tar.gz * nginx-1.14.2/configure --prefix=/opt/nginx/install/ng --conf-path=...
2020-01-20 11:11:56
777
原创 飞腾安装Kerberos
准备安装包 krb5-admin-server_1.13.2+dfsg-5ubuntu2.1_arm64.deb krb5-kdc_1.13.2+dfsg-5ubuntu2.1_arm64.deb 源 dpkg-scanpackages -t deb . | gzip -9c > Packages.gz apt update 安装 apt install krb5-kdc krb5-adm...
2020-01-15 17:13:47
356
原创 MySQL源码编译安装-隐藏版本号
下载源码包 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.29.tar.gz 解压源码包 tar -zxvf mysql-boost-5.7.29.tar.gz 修改版本号 修改mysql-5.7.28/VERSION文件 MYSQL_VERSION_MAJOR=99 MYSQL_VERSION_MINOR...
2020-01-13 17:12:59
2157
原创 iptables
Filter表 INPUT链 – 处理来自外部的数据。 OUTPUT链 – 处理向外发送的数据。 FORWARD链 – 将数据转发到本机的其他网卡设备上。 NAT表 PREROUTING链 – 处理刚到达本机并在路由转发前的数据包。它会转换数据包中的目标IP地址(destination ip address),通常用于DNAT(destination NAT)。 POSTROUTING链 –...
2020-01-09 10:35:44
129
原创 k8s集群部署
Linux服务器配置 关闭交换分区 [root@localhost kubelet] swapoff -a [root@localhost kubelet] vi /etc/fstab 关闭selinux [root@localhost kubelet] vim /etc/sysconfig/selinux [root@localhost kubelet] setenforce 0 ...
2020-01-07 16:02:33
193
原创 路由与交换技术
基本概念 路由器上的每个接口属于一个广播域,不同的接口属于不同的广播域。交换机上所有的接口属于同一个广播域。 面临的问题 网络通信中广播信息是普遍存在的,这些广播信息会占用大量的网络宽带,并增加网络主机为处理广播信息所产生的负载。 路由器能够实现对广播域的分割和隔离,但是路由器上的以太网接口较少,为了在交换机上实现对广播域的分割和隔离产生了VLAN。 VLAN概念 一个VLAN就是一个网段,通过在...
2020-01-06 09:28:46
2152
原创 内网环境不能使用yum下载
原因 centos自带的repo需要从外网下载软件,内网没有接通外网,所以不能下载 解决方案一 删除自带的repo文件 rm -rf /etc/yum.repos.d/* 在/media下创建目录centos mkdir -p /media/centos 挂载centos镜像 mount -o loop /dev/cdrom /media/centos 创建repo文件 touch /etc/y...
2019-12-25 09:24:07
1218
原创 centos7.4部署docker
卸载之前的安装包 yum remove docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine 下载依赖包 yum install -y yum-...
2019-10-16 17:14:22
149
转载 Java代码中supresswarning用法
作用 告诉编辑器忽略指定的警告,不用再编译完成后出现警告信息。 用法 @ SuppressWarnings(“ ”) @ SuppressWarnings({ }) @ SuppressWarnings(value={}) 注意: @SuppressWarnings(value={"unchecked", "deprecation"}) 等同于@SuppressWarnings("un...
2019-10-02 09:35:12
794
基于socket的IO编程模型对比
2020-08-02
Java设计模式之单例模式讲解
2020-08-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅