首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
社区首页 >问答
筛选
回答情况:
全部无回答回答未采纳
提问时间:
不限一周内一月内三月内一年内
回答标签:
apache

如何搭建Hadoop处理环境?

asioc
软件环境: 虚拟机:VMware Pro14 Linux:CentOS-6.4(下载地址,下载DVD版本即可) JDK:OpenJDK1.8.0 (强力建议不要使用 Oracle 公司的 Linux 版本的 JDK) Hadoop:2.6.5(下载地址) 虚拟机的安装和Linux系统的安装这里就省略了,可以参照网上的教程安装,一般没什么大问题,需要注意的是记住这里你输入的用户密码,下面还要用,如下图所示。 📷 设置用户密码.png 用户选择 使用虚拟机安装好系统后,可以看到登录界面,如下图所示。 📷 进入系统.png 选择 Other ,在 Username 输入框中输入 root,回车,再在 Password 输入框中输入你创建用户时密码。root 用户是安装 CentOS 自动创建的超级用户,但密码和你安装系统时创建的普通用户密码是一样的。 平时在使用 CentOS 时,并不推荐使用 root 用户,因为该用户具有整个系统的最高权限,使用该用户可能会导致严重的后果,但前提是你对 Linux 很熟,才会误操作。搭建 Hadoop 的大数据平台,使用普通用户,很多命令需要 sudo 命令来获取 root 用户的权限,比较麻烦,所以索性直接使用 root 用户。 安装SSH 集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上面运行命令)。 首先确保你的 CentOS 系统可以正常的上网,你可以查看桌面右上角的网络图标,若显示红叉则表明未联网,可点击选择可用网络,也可以使用桌面左上角的火狐浏览器输入网址验证是否网络连接正常。如果还是无法上网,检查虚拟机的设置,选用 NAT 模式,或者上网百度解决。 📷 检查网络状况.png 确定网络连接正常后,打开 CentOS 的终端,可在 CentOS 的桌面点击鼠标右键,选择 Open In Terminal,如下图所示。 📷 打开终端.png 一般情况下,CentOS 默认已安装了 SSH client、SSH server,可打开终端执行如下命令进行检验: rpm -qa | grep ssh 如果返回的结果如下图所示,包含了 SSH client 跟 SSH server,则不需要再安装。 📷 查看SSH是否已安装.png 如果需要安装,则可以通过 yum 这个包管理器进行安装。(安装过程中会让你输入 [y/N],输入 y 即可) 注意:命令是单条执行的,不是直接把两条命令粘贴过去。 终端中的粘贴可通过鼠标点击右键选择 Paste 粘贴,也可通过快捷键 【Shift + Insert】粘贴。 yum install openssh-clients yum install openssh-server SSH安装完成后,执行如下命令测试一下 SSH 是否可用(SSH首次登陆提示 yes/no 信息,输入 yes 即可,然后按照提示输入 root 用户的密码,这样就登录到本机了),如下图所示。 📷 首次登录SSH.png 但这样登陆需要每次都输入密码,我们需要配置成SSH无密码登陆比较方便。 首先输入 exit 退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-keygen 生成密钥,并将密钥加入到授权中。 exit # 退出刚才的 ssh localhost cd ~/.ssh/ # 若提示没有该目录,请先执行一次ssh localhost ssh-keygen -t rsa # 会有提示,都按回车即可 cat id_rsa.pub >> authorized_keys # 加入授权 chmod 600 ./authorized_keys # 修改文件权限 此时再用 ssh localhost 命令,无需输入密码就可以直接登陆了,如下图所示。 📷 再次登录SSH.png 安装 Java 环境 Java 环境可选择 Oracle 的 JDK,或是 OpenJDK(可看作 JDK 的开源版本),现在一般 Linux 系统默认安装的基本是 OpenJDK,这里安装的是 OpenJDK1.8.0版本的。 有的 CentOS 6.4 默认安装了 OpenJDK 1.7,这里我们可以使用命令检查一下,和 Windows 下的命令一样,还可以查看 JAVA_HOME 这个环境变量的值。 java -version # 查看 java 的版本 javac -version # 查看编译命令 Javac 的版本 echo $JAVA_HOME # 查看 $JAVA_HOME 这个环境变量的值 如果系统没有安装 OpenJDK,我们可以通过 yum 包管理器来安装。(安装过程中会让输入 [y/N],输入 y 即可) yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel #安装 openjdk1.8.0 通过上述命令安装 OpenJDK,默认安装位置为 /usr/lib/jvm/java-1.8.0,下面配置 JAVA_HOME 时就使用这个位置。 接着需要配置一下 JAVA_HOME 环境变量,为了方便,直接在 ~/.bashrc 中进行设置,相当于配置的是 Windows 的用户环境变量,只对单个用户生效,当用户登录后,每次打开 shell 终端,.bashrc 文件都会被读取。 修改文件,可以直接使用 vim 编辑器打开文件,也可以使用类似于 Windows 记事本的 gedit 文本编辑器。 下面命令任选其一。 vim ~/.bashrc # 使用 vim 编辑器在终端中打开 .bashrc 文件 gedit ~/.bashrc # 使用 gedit 文本编辑器打开 .bashrc 文件 在文件最后面添加如下单独一行(指向 JDK 的安装位置),并保存。 📷 配置JAVA_HOME环境变量.png 接着还需要让该环境变量生效,执行如下命令。 source ~/.bashrc # 使变量设置生效 设置好后我们来检验一下是否设置正确,如下图所示。 echo $JAVA_HOME # 检验变量值 java -version javac -version $JAVA_HOME/bin/java -version # 与直接执行 java -version 一样 📷 检查JAVA_HOME环境变量是否配置正确.png 这样,Hadoop 所需的 Java 运行环境就安装好了。 安装 Hadoop 在前面软件环境已经给出了 hadoop2.6.5 的下载地址,可以直接通过火狐浏览器打开下载,默认下载位置是在用户的 Home 中的 Downloads 文件夹下,如下图所示。 📷 下载Hadoop.png 下载完成后,我们将 Hadoop 解压到 /usr/local/ 中。 tar -zxf ~/下载/hadoop-2.6.5.tar.gz -C /usr/local # 解压到/usr/local目录中 cd /usr/local/ # 切换当前目录为 /usr/local 目录 mv ./hadoop-2.6.5/ ./hadoop # 将文件夹名改为hadoop chown -R root:root ./hadoop # 修改文件权限,root 是当前用户名 Hadoop 解压后即可使用,输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息。 cd /usr/local/hadoop # 切换当前目录为 /usr/local/hadoop 目录 ./bin/hadoop version # 查看 Hadoop 的版本信息 或者直接输入 hadoop version 命令也可以查看。 hadoop version # 查看 Hadoop 的版本信息 📷 查看Hadoop版本信息.png Hadoop 安装方式有三种,分别是单机模式,伪分布式模式,分布式模式。 单机模式:Hadoop 默认模式为非分布式模式(本地模式),无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。 伪分布式模式:Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。 分布式模式:使用多个节点构成集群环境来运行Hadoop,需要多台主机,也可以是虚拟主机。 Hadoop 伪分布式配置 现在我们就可以来使用 Hadoop 运行一些例子,Hadoop 附带了很多的例子,可以运行 hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar 看到所有的例子。 我们这里来运行一个查询的例子,将 input 文件夹作为输入文件夹,筛选当中符合正则表达式 dfs[a-z.]+ 的单词,统计它的次数,将筛选结果输出到 output 文件夹中。 cd /usr/local/hadoop # 切换当前目录为 /usr/local/hadoop 目录 mkdir ./input # 在当前目录下创建 input 文件夹 cp ./etc/hadoop/*.xml ./input # 将 hadoop 的配置文件复制到新建的输入文件夹 input 中 ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+' cat ./output/* # 查看输出结果 通过命令 cat ./output/* 查看结果,符合正则的单词 dfsadmin 出现了 1次。 📷 运行测试Hadoop例子.png 若运行出错,如出现如下图提示。 📷 运行Hadoop例子出错.png 若出现提示 “WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable”,该 WARN 提示可以忽略,不影响 Hadoop 正常运行。 注意:Hadoop 默认不会覆盖结果文件,因此再次运行上面实例会提示出错,需要先将 output 文件夹删除。 rm -rf ./output # 在 /usr/local/hadoop 目录下执行 测试我们的 Hadoop 安装没有问题,我们可以开始设置 Hadoop 的环境变量,同样在 ~/.bashrc 文件中配置。 gedit ~/.bashrc # 使用 gedit 文本编辑器打开 .bashrc 文件 在 .bashrc 文件最后面增加如下内容,注意 HADOOP_HOME 的位置对不对,如果都是按照前面的配置,这部分可照抄。 # Hadoop Environment Variables export HADOOP_HOME=/usr/local/hadoop export HADOOP_INSTALL=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin 📷 Hadoop环境变量的配置.png 保存后记得关掉 gedit 程序,否则会占用终端,无法执行下面的命令,可以按 【Ctrl + C】键终止该程序。 保存后,不要忘记执行如下命令使配置生效。 source ~/.bashrc Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 下,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。 修改配置文件 core-site.xml (通过 gedit 编辑会比较方便,输入命令, gedit ./etc/hadoop/core-site.xml)。 在 <configuration></configuration> 中间插入如下的代码。 <configuration> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> 同样的,修改配置文件 hdfs-site.xml,gedit ./etc/hadoop/hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> </configuration> 配置完成后,执行 NameNode 的格式化。(Hadoop 首次启动需要该命令) hdfs namenode -format 成功的话,会看到 “successfully formatted” 和 “Exitting with status 0” 的提示,若为 “Exitting with status 1” 则是出错。 📷 NameNode格式化.png 接下来启动 Hadoop。 start-dfs.sh # 开启 NameNode 和 DataNode 进程 若出现如下 SSH 的提示 “Are you sure you want to continue connecting”,输入 yes 即可。 📷 启动Hadoop注意事项.png 启动完成后,可以通过命令 jps 来判断是否成功启动,若出现下面 NameNode、DataNode、SecondaryNameNode、Jps 四个进程,则 Hadoop 启动成功。 jps # 查看进程判断 Hadoop 是否启动成功 📷 判断Hadoop是否启动成功.png 成功启动后,也可以访问 Web 界面 http://localhost:50070 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。 📷 Hadoop正常启动Web界面.png 启动YARN YARN 是从 MapReduce 中分离出来的,负责资源管理与任务调度。YARN 运行于 MapReduce 之上,提供了高可用性、高扩展性。(伪分布式不启动 YARN 也可以,一般不会影响程序执行) 上述通过 start-dfs.sh 命令启动 Hadoop,仅仅是启动了 MapReduce 环境,我们可以启动 YARN ,让 YARN 来负责资源管理与任务调度。 首先修改配置文件 mapred-site.xml,需要先将 mapred-site.xml.template 文件的重命名为 mapred-site.xml。 mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml # 文件重命名 gedit ./etc/hadoop/mapred-site.xml # 用gedit 文本编辑器打开 <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> 接着修改配置文件 yarn-site.xml。 gedit ./etc/hadoop/yarn-site.xml # 用gedit 文本编辑器打开 <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> 然后就可以启动 YARN 了,执行 start-yarn.sh 命令。 注意:在启动 YARN 之前,要确保 dfs Hadoop 已经启动,也就是执行过 start-dfs.sh。 start-yarn.sh # 启动YARN mr-jobhistory-daemon.sh start historyserver # 开启历史服务器,才能在Web中查看任务运行情况 开启后通过 jps 查看,可以看到多了 NodeManager 和 ResourceManager 两个进程,如下图所示。 📷 启动YARN.png 启动 YARN 之后,运行实例的方法还是一样的,仅仅是资源管理方式、任务调度不同。启动 YARN 有个好处是可以通过 Web 界面查看任务的运行情况:http://localhost:8088/cluster 如下图所示。 📷 YARN的Web界面.png YARN 主要是为集群提供更好的资源管理与任务调度,如果不想启动 YARN,务必把配置文件 mapred-site.xml 重命名,改成 mapred-site.xml.template,需要用时改回来就行。否则在该配置文件存在,而未开启 YARN 的情况下,运行程序会提示 “Retrying connect to server: 0.0.0.0/0.0.0.0:8032” 的错误,这也是为何该配置文件初始文件名为 mapred-site.xml.template。 关闭 YARN 的命令如下,开启是 start,关闭是 stop。 stop-yarn.sh mr-jobhistory-daemon.sh stop historyserver 在平时的学习中,我们使用伪分布式就足够了。

在处理高并发问题时Nginx为何比Apache表现的更优秀?

提问2018-05-171.1K
小翼111
反向代理提高网站性能主要通过三个方面: 反向代理可以理解为7层应用层的负载均衡,使用负载均衡之后可以非常便捷的横向扩展服务器集群,实现集群整体并发能力、抗压能力的提高。 通常反向代理服务器会带有本地Cache功能,通过静态资源的Cache,有效的减少后端服务器所承载的压力,从而提高性能 http压缩,开启压缩后,网络流量传输减小,相同带宽下可以服务更多用户最后还有一个TCP链接复用,不过说实话,如果不是商用的负载均衡器,一般没这个功能。 其实,反向代理还可以有效的隐藏隔离内部服务器,提高了安全性,这也算是提高性能的一个方面吧。 主要是在高并发的情况下才能体现出优势来。如果很少,可能表现不如apache httpd。

将Apache Hudi数据集写入腾讯云cos可以实现嘛,有没有例子?

编辑2023-10-1096
一凡sir
Apache Hudi可以将数据集写入腾讯云COS(腾讯云对象存储)。下面是一个示例代码,展示了如何使用Apache Hudi将数据集写入腾讯云COS: import org.apache.hudi.DataSourceWriteOptions; import org.apache.hudi.config.HoodieWriteConfig; import org.apache.hudi.hive.MultiPartKeysValueExtractor; import org.apache.hudi.keygen.SimpleKeyGenerator; import org.apache.hudi.QuickstartUtils; import org.apache.hudi.QuickstartUtils.DataGenerator; import org.apache.hudi.common.model.HoodieKey; import org.apache.hudi.common.model.HoodieRecord; import org.apache.hudi.config.HoodieIndexConfig; import org.apache.hudi.config.HoodieWriteConfig; import org.apache.hudi.index.HoodieIndex; import org.apache.hudi.keygen.SimpleAvroKeyGenerator; import org.apache.hudi.config.HoodieBootstrapConfig; import org.apache.spark.api.java.JavaRDD; import java.io.File; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; public class HudiWriteCOSExample { public static void main(String[] args) throws Exception { // 数据生成器 DataGenerator dataGenerator = new DataGenerator(); JavaRDD<HoodieRecord> records = dataGenerator.generateInserts(0, 10); // Hudi写入配置 String basePath = "cosn://your-bucket/path/to/hudi-table"; HoodieWriteConfig writeConfig = HoodieWriteConfig.newBuilder() .withPath(basePath) .withIndexConfig(HoodieIndexConfig.newBuilder() .withIndexType(HoodieIndex.IndexType.HBASE) .build()) .withBootstrapIndexClass(HoodieIndex.class) .build(); // 写入数据集 HoodieWriteClient<HoodieRecord> writeClient = new HoodieWriteClient<>(jsparkSession, writeConfig); writeClient.insert(records, generateInstantTime()); // 同步数据集到COS QuickstartUtils.setupCOS(basePath); QuickstartUtils.syncCOS(basePath); } } 请注意,上面的代码只是一个简单的示例,您需要根据您的实际情况进行相应的修改。 在上面的示例中,我们使用了Apache Hudi的HoodieWriteConfig来配置Hudi写操作的相关参数,如输出路径、索引配置等。然后,我们使用HoodieWriteClient将数据集插入到Hudi表中,并调用syncCOS方法将数据同步到腾讯云COS。 您需要根据自己的实际情况修改示例代码中的bucket、path和其他参数,确保能够正确访问和写入您的腾讯云COS存储桶。

如何解决webmin后台安装apache2提示找不到/apache/update.cgi?

编辑2023-08-28126
一凡sir
可以尝试通过apt-get命令重新安装apache2

请问如何使用apache-poi的HWPFdocument解析doc格式文档标题编号?

编辑2022-12-30283
用户9528610
有没有大神知道的,最好贴出获取标题编号的代码,先谢谢了

VBA字串排列組合問題,如何排除重複的資料?

编辑2022-12-18121
用户10273407
具體來說想詢問的解法: https://imgur.com/a/lLpY8tT

安装php解释器?

编辑2022-06-07140
华讯云-企业级云计算服务商
可以购买个虚拟主机

MediaWiki、Apache httpd 服务无法启动?

编辑2021-08-23131
用户7426861
请通过分析日志文件定位原因:/var/log/httpd 这个Mediawiki 系统值得一试:https://market.cloud.tencent.com/products/24520 云市场开源软件中心,从Wordpress、宝塔、SqlServer数据库到Gitlab、AWX等,一键部署,欢迎试用:https://market.cloud.tencent.com/stores/1252192180。本地安装部署方案:https://github.com/websoft9

如何取消 Apache Test 页面?

编辑2021-08-13342
用户7426861
使用 # 号将:/etc/httpd/conf.d/welcome.conf中的所有内容全部注释掉,然后重启 Apache 服务 若您有其他问题,可以查看这个全面知识库,两分钟全面了解LAMP、Apache,得到答案:https://support.websoft9.com/docs/lamp/zh/ 如果仍有疑惑,需要人工支持,专业高效,这个值得一试:https://market.cloud.tencent.com/stores/1252192180?key=apache&pageName=home&page=3

如何启用或禁用 Apache 模块?

编辑2021-08-16244
w9
以伪静态模块为例。打开Apache模块配置文件,找到LoadModule rewrite_module modules/mod_rewrite.so,通过“#”作为注释来开启或禁用此模块 若您有其他问题,可以查看这个全面知识库,两分钟全面了解LAMP、Apache,得到答案:https://support.websoft9.com/docs/lamp/zh/ 如果仍有疑惑,需要人工支持,专业高效,这个值得一试:https://market.cloud.tencent.com/stores/1252192180?key=apache&pageName=home&page=3

Apache 虚拟主机配置文件是什么?

编辑2021-08-13230
用户7426861
虚拟主机配置文件是 Apache 用于管理多个网站的配置段集合,路径为:/etc/httpd/conf.d/vhost.conf。 每个配置段的形式为:<VirtualHost *:80> ...</VirtualHost>,有多少个网站就有多少个配置段。 若您有其他问题,可以查看这个全面知识库,两分钟全面了解LAMP、Apache,得到答案:https://support.websoft9.com/docs/lamp/zh/ 如果仍有疑惑,需要人工支持,专业高效,这个值得一试:https://market.cloud.tencent.com/stores/1252192180?key=apache&pageName=home&page=3

如何修改示例网站根目录?

编辑2021-08-13225
用户7426861
示例网站路径信息 /data/wwwroot/www.example.com 存放在 Apache 虚拟主机配置文件中 若您有其他问题,可以查看这个全面知识库,两分钟全面了解LAMP、Apache,得到答案:https://support.websoft9.com/docs/lamp/zh/ 如果仍有疑惑,需要人工支持,专业高效,这个值得一试:https://market.cloud.tencent.com/stores/1252192180?key=apache&pageName=home&page=3

LAMP 是否安装了mod_php模块,Apache服务器怎么解析PHP文件?

编辑2021-08-16193
w9
LAMP 默认安装了mod_php模块,并且已经已经启用。Apache服务器通过php-fpm服务来解析PHP文件,如果想用mod_php解析PHP文件,请参照PHP文件解析方式变更 若您有其他问题,可以查看这个全面知识库,两分钟全面了解LAMP、Apache,得到答案:https://support.websoft9.com/docs/lamp/zh/ 如果仍有疑惑,需要人工支持,专业高效,这个值得一试:https://market.cloud.tencent.com/stores/1252192180?key=apache&pageName=home&page=3

LAMP 默认安装了哪些 Apache模块?

编辑2021-08-16133
w9
运行命令apachectl -M查看。 若您有其他问题,可以查看这个全面知识库,两分钟全面了解LAMP、Apache,得到答案:https://support.websoft9.com/docs/lamp/zh/ 如果仍有疑惑,需要人工支持,专业高效,这个值得一试:https://market.cloud.tencent.com/stores/1252192180?key=apache&pageName=home&page=3

SSL证书绑定好后为什么还显示证书无效?

编辑2021-06-23398
应用案例分享
SSL证书安装部署参考:https://cloud.tencent.com/document/product/400/4143

愿意翻译Data Pipelines with Apache Airflow?

编辑2021-05-28219
最爱开车啦
可以前往作者文章底部留言,会更方便作者查阅与回复喔~

cos 上传报错 代理问题还是权限问题?

不吃貓的鱼oo
您好,上述问题需要您提供更多信息去排查,请提交工单为您跟进处理。

TSF consul 提示8500端口拒绝连接,如何排查?

编辑2020-08-144.6K
人生的旅途
您好,根据上述报错信息,该问题为网络连接问题,没有连上consul。官网上有demo,可以参考demo的代码来配置。 image.png 这里连接的是本地的consul,配置有问题,tsf上的不需要配置这个host。服务会自动连接到consul上,通过环境变量的方式会把值打进去。

发送事务mq 的错误?

编辑2020-08-04671
TinaRoot
解决了吗
Hi~
今天想聊点什么呢?
近期活跃用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档