如何使用云容器搭建基于CentOS7的Hadoop2.x伪分布式环境(CSDN开发者云平台使用初体验)

简介: CSDN 云容器通过深度融合新一代云原生技术,提供以容器为核心的高性能 Kubernetes 容器服务,助力用户快速构建学习、实验容器环境。同时有效控制使用成本,只需要支付远低于市场价的费用就可以全年不限次数使用10核10GB的容器资源。

前言


前不久CSDN联合国内顶级云厂商,共同为开发者提供稳定便宜的云服务,送了学长两张优惠券,一张云容器,一张云主机。恰好最近在学习某硅谷的SeaTunnel课程需要用到主机做实验,使用本地的还需要重头安装VMware,有诸多不便,于是想试试CSDN的云容器服务。


ed4fc6091aca4846b64f9351f4955f31.png


CSDN开发者云平台


目前CSDN开发者云平台主要有如下资源:


(1)云容器 快速构建学习、

(2)实验容器环境 云主机 稳定、

(3)安全的弹性计算服务 云磁盘 高性能的、

(4)弹性块存储服务 、

(5)数据库 可靠易用免维护的数据服务、

(6)云存储 大规模分布式对象存储服务。


其中我个人用的最多的是云主机。


0d2093744cf8499ca94d4a5e528588f6.png


白piao云主机


送了40元优惠券仅限云主机1核1GB1MB1个月


1c704e4c1ccc49aeb0149b0e2f7125a2.png


云容器购买指南


e4ea307e28bb4577848cdb9664924e54.png


CSDN 云容器通过深度融合新一代云原生技术,提供以容器为核心的高性能 Kubernetes 容器服务,助力用户快速构建学习、实验容器环境。同时有效控制使用成本,只需要支付远低于市场价的费用就可以全年不限次数使用10核10GB的容器资源。


产品优势


仅需支付相同规格服务器5%-10%的费用,就能全年不限次数使用容器服务。


产品类型


云容器实例:一个容器实例目前有 CentOS7 和Ubuntu16两种操作系统可以供选择,同时提供多种规格可供选择


简单易用


提供简单易用的web界面,方便用户一键创建多台容器、登录管理容器、上传下载文件。


存储管理


支持创建容器时同时自动挂载云存储服务,多个容器间可以共享云存储服务,解决容器状态存储问题。


实验数据集


提供常用软件安装包及常用实验数据集,而且直接挂载到容器指定目录,免去用户查找、下载实验资源,让用户更专注实验流程。


使用时间


会员有效期内,不限使用次数。


适用场景


体验真实云场景


秒级构建云环境,快速模拟真实生产场景。用户可以从默认提供的公共存储软件包快速安装常用软件,构建常用开发部署环境。


随时随地做实验


快速创建多台容器,真实还原分布式场景,更全面的对分布式场景进行实验测试。例如Mysql主从同步、kafka集群安装使用、Hadoop集群安装使用、Flink集群安装使用等实验。


会员使用规则


购买即同意《开发云服务协议》(opens new window)


【配额范围】:云容器规格配额为10核10GB内存,可根据实际需求开通并使用。


【使用时间】:会员有效期内,不限使用次数。


【使用限制】:云容器主要是提供给用户进行实验或学习,无法用于生产,需实名认证后才能正常使用。


【特别说明】:单次实验或学习时长为72小时,超过72小时后,云容器将自动销毁,使用期间请留意倒计时。


创建过程


fd0c5b123719458faf9ec7aac3a83d04.png


创建1个2核4G的容器。


这里我踩了一个小坑,直接创建10核10G的容器,主机一直连接不成功,后来改成2核4G连接成功,可能是csdn考虑到要用来做Hadoop集群、Flink集群等实验,需要使用多集群默认了不能创建10核10G。


f04fdf134bd94a7ca3e65347b516b141.png


jps命令没有,先安装一下。


命令如下:


yum install java-1.8.0-openjdk.x86_64
yum install java-1.8.0-openjdk-devel.x86_64


安装Hadoop2.x


0289f3c42468401492d65016f6022693.png


详细安装步骤如下:


我们先开始配置java环境


首先下载java的jdk


wget https://download.java.net/openjdk/jdk8u41/ri/openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz


然后解压


tar -zxvf openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz


移动位置并且配置java路径


mv java-se-8u41-ri/ /usr/java8
echo 'export JAVA_HOME=/usr/java8' >> /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile
source /etc/profile


检查是否安装成功


java -version


这是理想情况,若安装成功会出现如下结果


85117bfcd6cfb7b47cc0a9ed13d7e1a3.png


hadoop2.x(2022.06.12更新)


wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz


tar -zxvf hadoop-2.10.1.tar.gz -C /opt/
mv /opt/hadoop-2.10.1 /opt/hadoop


配置地址


echo 'export HADOOP_HOME=/opt/hadoop/' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/bin' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/sbin' >> /etc/profile
source /etc/profile


配置yarn和hadoop


echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/yarn-env.sh
echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/hadoop-env.sh


查看Hadoop 安装情况


hadoop version

472bc0d158a68110a449aa213f31151c.png


若出现上图情况,则说明安装成功


接下来需要利用vim来操作core-site 和 hdfs-site


vim /opt/hadoop/etc/hadoop/core-site.xml


进入vim环境


e2ab3fc1f2ddb4749f6c2062efd1cbc4.png


按下i(insert)修改


光标移动至configuration之间,复制如下的信息


<property>
        <name>hadoop.tmp.dir</name>
        <value>file:/opt/hadoop/tmp</value>
        <description>location to store temporary files</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>


然后按下esc,停止修改,然后打":wq"(实际无“”)退出vim修改


同理操作hdfs-site


vim /opt/hadoop/etc/hadoop/hdfs-site.xml
<property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/opt/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/opt/hadoop/tmp/dfs/data</value>
    </property>


配置master和slave连接,运行如下指令,并且一直回车,直至出现如下图


ssh-keygen -t rsa 

37deaefd27c8e4b251493e1369c3a876.png


运行如下代码


cd .ssh
cat id_rsa.pub >> authorized_keys


启动Hadoop


hadoop namenode -format
start-dfs.sh
start-yarn.sh


踩坑:


ERROR: but there is no YARN_NODEMANAGER_USER defined. Aborting operation


这里踩了一个小坑,


解决方案:


https://blog.csdn.net/ystyaoshengting/article/details/103026872


查看是否配置成功


jps


成功图


40e2ede37fc9b923a048bd807053fe7b.png


验证成果


起初HDFS没有文件所以无任何显示


48bb46aad963452591415cd0d235a583.png


上传yum日志到HDFS系统中,可以看到系统上有文件


13aaae90808d45948d68ccd5a40d2b6a.png


保留节目:使用CSDN云容器创建多集群做实验


用CSDN云容器创建多集群暂时未试过,小伙伴们又兴起可以做一做


csdn有丰富的教程,按照教程一步步实现想必并不困难,这里贴出其中一个教程。


https://blog.csdn.net/code__online/article/details/80178032


0d52b899d3c24e8aab867fcd372db2c8.png


测评优点


(1)正如文档写的提供简单易用的web界面,方便用户一键创建多台容器、登录管理容器、上传下载文件。可以随时随地搭建集群做实验


(2)仅需支付相同规格服务器5%-10%的费用,就能全年不限次数使用容器服务。


(3)容器实例目前有 CentOS7 和Ubuntu16两种操作系统可以供选择,对我来说够用了。


(4)支持创建容器时同时自动挂载云存储服务,多个容器间可以共享云存储服务,解决容器状态存储问题。


5417d40cd1034bb5912e99e69eee17a3.png


测评不足


(1)提供常用软件安装包及常用实验数据集,这个在实际操作中并没有看到有,也许是学长没找到或者藏的太深。


3217fe186e774405b66e41a23ea87ac9.png


(2)超过72小时自动销毁也让很多东西受到限制,


13ad98a74bfe49b680b6ec7485fcb74c.png


(3)建议多关联操作文档,这也是CSDN一大优势(相关详细的文章很多),像Mysql主从同步、kafka集群安装使用、Hadoop集群安装使用、Flink集群安装使用的文档可以放在一边,方便开发者看着一步步实现操作。


总结


对于刚刚推出的云服务有不足之处,CSDN开发者云的优势在于用户基数大,有刚性的使用需求,同时在CSDN发表的文章本就很完善,希望在后面的不断优化中推出更完善的服务。

相关实践学习
使用ACS算力快速搭建生成式会话应用
阿里云容器计算服务 ACS(Container Compute Service)以Kubernetes为使用界面,采用Serverless形态提供弹性的算力资源,使您轻松高效运行容器应用。本文将指导您如何通过ACS控制台及ACS集群证书在ACS集群中快速部署并公开一个容器化生成式AI会话应用,并监控应用的运行情况。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
7月前
|
Kubernetes 供应链 安全
云原生环境下的容器安全与最佳实践
云原生时代,容器与 Kubernetes 成为企业应用核心基础设施,但安全挑战日益突出。本文探讨容器安全现状与对策,涵盖镜像安全、运行时防护、编排系统风险及供应链安全,提出最小权限、漏洞扫描、网络控制等最佳实践,并结合阿里云 ACK、ACR 等服务提供全链路解决方案,展望零信任、AI 安全与 DevSecOps 融合趋势。
327 5
|
8月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
538 16
|
9月前
|
存储 缓存 Serverless
【Azure Container App】如何在Consumption类型的容器应用环境中缓存Docker镜像
在 Azure 容器应用的 Consumption 模式下,容器每次启动均需重新拉取镜像,导致冷启动延迟。本文分析该机制,并提出优化方案:使用 ACR 区域复制加速镜像拉取、优化镜像体积、设置最小副本数减少冷启动频率,或切换至 Dedicated 模式实现镜像缓存,以提升容器启动效率和应用响应速度。
390 0
|
11月前
|
分布式计算 Hadoop Java
CentOS中构建高可用Hadoop 3集群
这个过程像是在一个未知的森林中探索。但当你抵达终点,看到那个熟悉的Hadoop管理界面时,所有的艰辛都会化为乌有。仔细观察,尽全力,这就是构建高可用Hadoop 3集群的挑战之旅。
406 21
|
11月前
|
Kubernetes Cloud Native 区块链
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
359 0
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
692 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
负载均衡 网络协议 算法
Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式
本文探讨了Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式,以及软件负载均衡器、云服务负载均衡、容器编排工具等实现手段,强调两者结合的重要性及面临挑战的应对措施。
527 4
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
存储 监控 Shell
docker的底层原理二:容器运行时环境
本文深入探讨了Docker容器运行时环境的关键技术,包括命名空间、控制组、联合文件系统、容器运行时以及分离的进程树,这些技术共同确保了容器的隔离性、资源控制和可移植性。
405 5
下一篇
开通oss服务