在CentOS65环境下安装CDH51.docx_第1页
在CentOS65环境下安装CDH51.docx_第2页
在CentOS65环境下安装CDH51.docx_第3页
在CentOS65环境下安装CDH51.docx_第4页
在CentOS65环境下安装CDH51.docx_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

在CentOS6.5环境下安装CDH5.1关于CDH和Cloudera ManagerCDH (Clouderas Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可直接用于生产环境。Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管理的组件,对集群中主机、Hadoop、Hive、Spark等服务的安装配置管理做了极大简化。1. 安装方案及节点规划NameNode和ResourceManager是两个独立的功能单元,二者可以集中部署,亦可分布式部署。由于测试环境有限,把NameNode和ResourceManager部署到一起。主机IP角色需要的程序备注n133Namenode/DatanodeJournalNode、NameNode、DFSZKFailoverController、DataNode、NodeManagerNamenode主备n234Namenode/DatanodeJournalNode、NameNode、DFSZKFailoverController、DataNode、NodeManagerNamenode主备n335DatanodeDatanode、NodeManager-n133ResourceManagerResourceManagerRM主备n335ResourceManagerResourceManagerRM主备n133JobHistoryServerJobHistoryServer-注意:如果使用VMWare虚拟机安装Linux,需要使用NAT模式,并将虚拟机的IP地址指定好,否则在不同的网络环境下IP可能会发生变化,导致无法使用,但是NAT模式无法与外界的局域网通信,所以如果是在服务器上虚拟化的使用场景,必须使用更复杂的桥接模式,详情参考2. 安装准备2.1 修改主机名对集群内的节点规划不同的主机名 查看主机名的命令hostname临时修改主机名的命令hostname new_hostname临时修改主机名只有当前有效,重启后即取消,如果要彻底修改主机名,需要修改配置文件vi /etc/sysconfig/network修改HOSTNAMENETWORKING=yesHOSTNAME=n1然后重启网络service network restart最后修改hosts文件,增加ip与hostname的对应关系vi /etc/sysconfig/hosts增加ip与hostname的对应关系33 n1 n1.localdomain34 n2 n2.localdomain35 n3 n3.localdomain注意:这里必须是三个,即nn.localdomain不可或缺,否则后面的hdfs配置会出问题2.2 防火墙配置防火墙配置,关闭每个节点的selinux / iptables (用root用户执行) 1. 关闭iptablesservice iptables stop #停止服务chkconfig -del iptables #关闭服务自动重启1. 关闭selinux修改/etc/selinux/configvi /etc/selinux/configSELINUX=disabled2.3 配置SSH*注意:CentOS6.5环境下需要先安装SSH服务 在主节点上执行以下命令,生成无密码的密钥对。ssh-keygen -t rsa一路回车即可,然后将公钥添加到认证文件中cat /.ssh/id_rsa.pub /.ssh/authorized_keys然后并设置authorized_keys的访问权限chmod 600 /.ssh/authorized_keys最后将scp文件到所有datenode节点scp /.ssh/authorized_keys rootn2:/.ssh/测试:在主节点上ssh n2,正常情况下,不需要密码就能直接登陆进去了。2.4 安装JDK注意:这里一定要安装JDK,而且最好在1.7版本以上,CentOS中自带的是JRE,不是JDK,不安装JDK的话Sqoop无法使用。另外Spark需要JDK1.7版本以上,可以考虑直接安装最新的JDK1.8。2.5 配置hosts把集群中的各个节点配置到每个节点的/etc/hosts中。33 n134 n235 n3注意:要把hosts文件中的自环 (类似下表) 删掉,否则在配置ResourceMananger HA时,不能访问RM页面。 localhost localhost.localdomain localhost localhost.localdomain.localdomain localhost localhost.localdomain4 localhost localhost.localdomain4.localdomain4:1 localhost localhost.localdomain localhost localhost.localdomain.localdomain localhost localhost.localdomain6 localhost localhost.localdomain6.localdomain62.6 时间同步在新的版本中引入了信令机制,在启动容器时会进行校验。集群中的各个节点必须时间同步,节点间的时间差不能超过10分钟,否则执行MapReduce任务时报错。2.7 获取安装包CDH5.1版本RPM安装包下载地址: /cdh5/redhat/6/x86_64/cdh/5.1.0/RPMS/ 。 下载zookeeper,Hadoop,hive,sqoop的安装包。noarch文件下存放的是与系统架构无关的软件包,x86_64路径下是64位系统的安装包。3. 安装Zookeeper3.1 Zookeeper安装在每个节点上执行安装命令,zookeeper依赖bigtop-utils。rpm -ivh zookeeper-*.rpm bigtop-utils*.rpm -nodeps -forcezookeeper安装路径:/etc/default/zookeeper/etc/zookeeper /var/lib/zookeeper/var/run/zookeeper/var/log/zookeeper -日志文件路径/usr/share/doc/zookeeper-3.4.5+26/api/org/apache/zookeeper/usr/lib/zookeeper -安装路径3.2 Zookeeper配置1. 配置zoo.cfg 在每个zookeeper节点中修改/etc/zookeeper/conf/zoo.cfg文件。tickTime=2000dataDir=/var/lib/zookeeperclientPort=2181initLimit=5syncLimit=2# server.id=host:port:portserver.1= n1:2888:3888server.2= n2:2888:3888server.3= n3:2888:3888说明:第一个port用于各个zookeeper节点之间通信,第二个port用于产生zookeeper集群的leader。id必须与myid一致,否则不能启动zookeeper。3.3 启动Zookeeper1. 初始化2. 第一次运行zookeeper需要初始化,并指定myid。后续运行则不再执行该操作。service zookeeper-server init -myid=31. 启动zookeeper在每个节点上执行service zookeeper-server start说明:最先启动的几个节点输出如下警告信息,这是因为其他节点的zookeeper未启动。等所有节点全部启动后就会正常。2014-08-01 04:11:58,585 myid:1 - WARN WorkerSendermyid=1:QuorumCnxManager368 - Cannot open channel to 2 at election address dw001/01:3888.ConnectException: 拒绝连接 at .PlainSocketImpl.socketConnect(Native Method) at .AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) at .AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) at .AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) at .SocksSocketImpl.connect(SocksSocketImpl.java:392)启动的其他的方式:/usr/lib/zookeeper/bin/zkServer.sh start3.4 验证安装1. 检查zookeeper的脚本查看启动状态,包括各个节点的角色。/usr/lib/zookeeper/bin/zkServer.sh status或 如果用service方法启动zookeeper,则上面的验证方法失效,可用下面的方法。echo stat|nc hostname 2181输出JMX enabled by defaultUsing config: /usr/lib/zookeeper/bin/./conf/zoo.cfgMode: leader1. 通过客户端脚本,连接到ZooKeeper集群上。对于客户端来说,ZooKeeper是一个整体(ensemble),连接到ZooKeeper集群实际上感觉在独享整个集群的服务,所以可以在任何一个结点上建立到服务集群的连接。cd /usr/lib/zookeeper/bin./zkCli.sh -server n1:21814. 安装Hadoop4.1 安装把Hadoop的RPM安装包上传到节点,执行安装命令。在所有节点上执行。rpm -ivh nc-*.rpm avro-libs-*.rpm bigtop-jsvc-*.rpm bigtop-tomcat-*.rpm parquet-*.rpm hadoop-0.20-mapreduce-2.3.0+*.rpm hadoop-2.3.0+*.rpm hadoop-client-*.rpm hadoop-debuginfo-*.rpm hadoop-doc-*.rpm hadoop-hdfs-2.3.0*.rpm hadoop-hdfs-datanode-*.rpm hadoop-hdfs-journalnode-*.rpm hadoop-hdfs-namenode-*.rpm hadoop-hdfs-zkfc-*.rpm hadoop-httpfs-*.rpm hadoop-libhdfs-*.rpm hadoop-mapreduce-*.rpm hadoop-yarn-*.rpm -nodeps -force4.2 配置SSH必须正确安装和配置ssh,否则namenode主备切换将失败!路径还必须与hdfs-site中配置的ssh私钥路径一致。 安装CDH时,会新建用户hdfs,mapred和用户组hadoop,此处需要为所有的namenode的hdfs用户配置ssh免密码登陆。具体步骤如下:1. 安装ssh服务器和客户端,并开启服务。假设有两个namenode A&B在其中一个A上进行以下步骤: 注意:在CentOS中,必须先修改/etc/ssh/sshd-config文件中以下几行的注释去掉#RSAAuthentication yes#PubkeyAuthentication yes#AuthorizedKeysFile .ssh/authorized_keys然后重启ssh服务service sshd restart1. 进入hdfs用户,在hdfs用户home目录下执行:ssh-keygen -t rsa -P 其中-P代表无密码 一路回车,遇到y/n 选择y,即在默认目录下/var/lib/hadoop-hdfs生成id_rsa 和id_rsa.pub 两个文件,id_rsa为私钥,id_rsa.pub为公钥。 注:如果不知道hdfs用户的密码,可以在root用户下用passwd命令修改密码passwd hdfs#提示New password:此时输入新密码即可。1. 进入.ssh目录下,将id_rsa.pub 复制给authorized_keys文件,并给予权限644。cd .sshcp id_rsa.pub authorized_keyschmod 644 authorized_keys1. 将本节点的公钥id_rsa.pub远程复制给其他节点,并更改权限644。$ scp id_rsa.pub root主机名:/var/lib/hadoop-hdfs/.ssh/注意:scp命令不支持创建文件夹,因此远程复制前应在目标服务器上创建好目录,否则很容易报错,如: scp: .: not a regular file 或 scp: /var/lib/hadoop-hdfs/.ssh/: Is a directory 改/var/lib/hadoop-hdfs/.ssh/authorized_keys所有者为hdfs。chown hdfs:hdfs /var/lib/hadoop-hdfs/.ssh/authorized_keys注:如果此时报“Host key verification failed”错误,需要在 /root/.ssh/known_hosts 文件里面将原来的公钥信息删除即可。1. 在B主机将公钥追加到authorized_keys,并将权限修改为600。cat id_rsa.pub authorized_keyschmod 600 authorized_keys1. 此时A将能ssh免密码登陆B,测试ssh namenodeB的主机名。 在B上设置免密码登陆A,进行以下步骤:2. 重复步骤2。3. 将公钥id_rsa.pub复制到A,并重命名为ip地址.id_rsa.pub.scp id_rsa.pub rootAip地址: /var/lib/hadoop-hdfs/.ssh /Bip地址.id_rsa.pub改文件所有者为hdfschown hdfs:hdfs /var/lib/hadoop-hdfs/.ssh/26.id_rsa.pub1. 将公钥追加到authorized_keys。cat Bip地址.id_rsa.pub authorized_keys1. 此时B将能免密码登陆A,测试ssh namenode A的主机名。2. ssh主机名时,若出现错误:Agent admitted failure to sign using the key. 解決办法:使用ssh-add 指令加入私钥:ssh-add .ssh/id_rsa 1. 若出现ssh localhost总是无法免密码登陆,检查各级目录文件的权限,注意root目录权限。chmod 755 . (或者更严格)chmod 755 .sshchmod 644 .ssh/authorized_keys4.3 配置Hadoop4.3.1 修改配置文件1. 复制Hadoop配置,在每个节点都要执行。cp -r /etc/hadoop/conf.dist /etc/hadoop/conf.my_cluster1. 设置alternatives,在每个节点都要执行。alternatives -verbose -install /etc/hadoop/conf hadoop-conf /etc/hadoop/conf.my_cluster/ 50alternatives -set hadoop-conf /etc/hadoop/conf.my_cluster/1. 修改core-site.xml配置文件配置项取值说明fs.defaultFShdfs:/cdh5文件系统名ha.zookeeper.quorumn1.localdomain:2181,n2.localdomain:2181,n3.localdomain:2181Zookeeper服务的地址hadoop.tmp.dir/home/cdh5-data/hadoopTmp临时路径xyuser.mapred.groups*xyuser.mapred.hosts*1. 配置文件hdfs-site.xml配置项取值说明.dirfile:/home/CDH5/dfs/nndfs.permissionsfalsedfs.replication3Block的副本数dfs.blocksize67108864Block的大小servicescdh5服务名.dirfile:/home/CDH5/dfs/nn在本地存储fsimage的路径dfs.datanode.data.dirfile:/home/CDH5/dfs/dn存储数据块的路径nodes.cdh5nn1,nn2NameNode服务名node.rpc-address.cdh5.nn1n1.localdomain:8020node.http-address.cdh5.nn1n1.localdomain:50070node.rpc-address.cdh5.nn2n2.localdomain:8020node.http-address.cdh5.nn2n2.localdomain:50070node.shared.edits.dirqjournal:/dw221.localdomain:8485;localhost2.localdomain:8485/cdh5在HA集群中,多个NameNode共享的路径dfs.journalnode.edits.dir/home/CDH5/dfs/node.ha.ConfiguredFailoverProxyProviderdfs.ha.fencing.methodssshfencedfs.ha.fencing.ssh.private-key-files/var/lib/hadoop-hdfs/.ssh/id_rsadfs.ha.automatic-failover.enabledtrue使failover可用dfs.permissions.superusergrouphadoop1. 配置文件mapred-site.xml配置项取值说明mapreduce.job.maps8每个job的map任务数mapreduce.job.reduces8每个job的Reduce任务数mapreduce.tasktracker.map.tasks.maximum8一个tasktracker可同时运行的map任务数mapreduce.tasktracker.reduce.tasks.maximum8一个tasktracker可同时运行的Reduce任务数yarnmapreduce.jobhistory.addressn1.localdomain:10020mapreduce.jobhistory.webapp.addressn1.localdomain:19888yarn.app.mapreduce.am.staging-dir/user提交job时的临时路径mapreduce.map.memory.mb512每个map任务需要的内存数mapreduce.reduce.memory.mb512每个reduce任务需要的内存数mapreduce.map.java.opts-Xmx200mmapreduce.reduce.java.opts-Xmx200mmapreduce.app-submission.cross-platformtrue支持跨平台提交job1. 配置文件yarn-site.xml配置项取值说明yarn.resourcemanager.ha.enabledtrueRM高可用性yarn.resourcemanager.ha.automatic-failover.enabledtrue故障恢复yarn.resourcemanager.ha.automatic-failover.embeddedtrue使用EmbeddedElectorService 选择主RMyarn.resourcemanager.cluster-idyarn-rm-clusterRM集群名称yarn.resourcemanager.ha.rm-idsrm1,rm2集群中的RM idyarn.resourcemanager.ha.idrm1当前RM的id。不同节点的id配置不同yarn.resourcemanager.recovery.enabledtrueyarn.resourcemanager.zk-addressn1:2181,n2:2181,n3:2181Zookeeper地址yarn.resourcemanager.address.rm1n1: 23140yarn.resourcemanager.scheduler.address.rm1n1: 23130yarn.resourcemanager.webapp.https.address.rm1n1: 23189yarn.resourcemanager.webapp.address.rm1n1: 23188yarn.resourcemanager.resource-tracker.address.rm1n1: 23125yarn.resourcemanager.admin.address.rm1n1: 23141yarn.resourcemanager.address.rm2n3: 23140yarn.resourcemanager.scheduler.address.rm2n3: 23130yarn.resourcemanager.webapp.https.address.rm2n3: 23189yarn.resourcemanager.webapp.address.rm2n3: 23188yarn.resourcemanager.resource-tracker.address.rm2n3: 23125yarn.resourcemanager.admin.address.rm2n3: 23141yarn.nodemanager.local-dirs/home/cdh5-data/yarn/localyarn.nodemanager.log-dirs/home/cdh5-data/yarn/log存储容器日志的路径yarn.nodemanager.resource.memory-mbNodemanager可以管理的内存yarn.scheduler.minimum-allocation-mb200每次分配的最新内存大小yarn.nodemanager.vmem-pmem-ratio3.1容器可以使用的相对于物理内存的虚拟内存的比例yarn.nodemanager.resource.cpu-vcores16nodemanager可以使用的cpu数,不配置的话mp任务没法运行yarn.nodemanager.resource.memory-mb10240nodemanager可以使用的内存数,不配置的话mp任务没法运行1. 创建路径 在每个节点上执行。#创建临时路径sudo mkdir -p /home/cdh5-data/hadoopTmp#创建namenode,datanode存储路径sudo mkdir -p /home/CDH5/dfs/nn /home/CDH5/dfs/dn sudo chown -R hdfs:hdfs /home/CDH5/dfs/nn /home/CDH5/dfs/dnsudo chmod 755 /home/CDH5/dfs/nn /home/CDH5/dfs/dn# 特别注意:这里的目录权限必须是755,否则后面启动的时候会报错#yarn.nodemanager.local-dirs,yarn.nodemanager.log-dirssudo mkdir -p /home/cdh5-data/yarn/local /home/cdh5-data/yarn/logsudo chown -R yarn:yarn /home/cdh5-data/yarn/local /home/cdh5-data/yarn/log#dfs.journalnode.edits.dirsudo mkdir -p /home/CDH5/dfs/jnsudo chown -R hdfs:hdfs /home/CDH5/dfs/jn4.3.2 同步配置1. 把配置文件同步到其他节点$ sudo scp -r /etc/hadoop/conf.my_cluster rootn2:/etc/hadoop/conf.my_cluster1. 在每个节点上配置alternatives$ sudo alternatives -verbose -install /etc/hadoop/conf hadoop-conf /etc/hadoop/conf.my_cluster 50$ sudo alternatives -set hadoop-conf /etc/hadoop/conf.my_cluster4.4 启动HDFS1. 在JournalNode所在节点启动JournalNode服务service hadoop-hdfs-journalnode start1. 在所有NameNode节点上,格式化zkfc并启动hdfs zkfc -formatZKservice hadoop-hdfs-zkfc start注意:这里的启动命令不管成功与否都不会报错,需要看日志才能确定是否正常启动1. 在其中一个NameNode A上格式化文件系统sudo -u hdfs hdfs namenode -format此时可能会报以下错误:15/09/12 00:48:03 INFO namenode.FSImage: Allocated new BlockPoolId: BP-1441093989-33-144199008326615/09/12 00:48:03 WARN fs.FileUtil: Failed to delete file or dir /home/CDH5/dfs/nn/current/.gconfd: it still exists.15/09/12 00:48:03 WARN fs.FileUtil: Failed to delete file or dir /home/CDH5/dfs/nn/current/.config: it still exists.15/09/12 00:48:03 WARN fs.FileUtil: Failed to delete file or dir /home/CDH5/dfs/nn/current/.ssh: it still exists.15/09/12 00:48:03 WARN namenode.NameNode: Encountered exception during format:java.io.IOException: Cannot remove current directory: /home/CDH5/dfs/nn/current at mon.Storage$StorageDirectory.clearDirectory(Storage.java:332) at node.NNStorage.format(NNStorage.java:546) at node.NNStorage.format(NNStorage.java:567) at node.FSImage.format(FSImage.java:152) at node.NameNode.format(NameNode.java:895) at node.NameNode.createNameNode(NameNode.java:1306) at node.NameNode.main(NameNode.java:1420)这里可能是/home/cdh5-data/hadoopTmp目录权限的问题,需要修改目录的权限:chown -R hdfs:hadoop /home/cdh5-data/hadoopTmpsudo chmod -R a+w /home/CDH5/如果还是不行,直接提高nn目录的权限chmod 777 nn另外,如果是第二次格式化,也可能会报这个问题,因为Hadoop为了防止丢失数据,是不允许随意删除文件的,此时可以进入nn目录,删除current文件夹rm -rf /home/CDH5/dfs/nn/current/1. 在另一个namenode B上建立current文件夹mkdir -p /home/CDH5/dfs/nn/current/1. 将A中current文件下所有文件scp到Bscp -r /home/CDH5/dfs/nn/current/* rootn2.localdomain: /home/CDH5/dfs/nn/current/1. 将B中创建的current的所有者改为hdfschown -R hdfs:hdfs /home/CDH5/dfs/nn1. 在所有NameNode节点上,启动所有NameNodeservice hadoop-hdfs-namenode start#停止:service hadoop-hdfs-namenode stop1. 在所有DataNode节点上,启动所有dataNodeservice hadoop-hdfs-datanode start#停止:service hadoop-hdfs-datanode stop1. 配置HADOOP_MAPRED_HOMEexport HADOOP_MAPRED_HOME=/usr/lib/hadoop-mapreduce将其配置到/etc/default/hadoop中。1. 查看HDFS 33:50070/dfshealth.jsp4.5 在HDFS上创建需要的路径1. 创建HDFS /tmp路径sudo -u hdfs hadoop fs -mkdir /tmpsudo -u hdfs hadoop fs -chmod -R 1777 /tmp如果执行报如下错误:15/09/16 13:16:17 WARN retry.RetryInvocationHandler: Exception while invoking class tocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo. Not retrying because failovers (15) exceeded maximum allowed (15).ConnectException: Call From n1.localdomain/33 to n2.localdomain:8020 failed on connection exception: .ConnectException: Connection refused; For more details see: /hadoop/ConnectionRefused at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at .NetUtils.wrapWithMessage(NetUtils.java:783) at .NetUtils.wrapException(NetUtils.java:730) at org.apache.hadoop.ipc.Client.call(Client.java:1413) at org.apache.hadoop.ipc.Client.call(Client.java:1362) at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206) at xy.$Proxy9.getFileInfo(Unknown Source) at tocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:701) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:186) at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102) at xy.$Proxy10.getFileInfo(Unknown Source) at org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:1758) at org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1124) at org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1120) at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) at org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1120) at org.apache.hadoop.fs.Globber.getFileStatus(Globber.java:57) at org.apache.hadoop.fs.Globber.glob(Globber.java:248) at org.apache.hadoop.fs.FileSystem.globStatus(FileSystem.java:1623) at org.apache.hadoop.fs.shell.PathData.expandAsGlob(PathData.java:326) at org.apache.hadoop.fs.shell.Command.expandArgument(Command.java:224) at org.apache.hadoop.fs.shell.Command.expandArguments(Command.java:207) at org.apache.hadoop.fs.shell.CcessRawArguments(Command.java:190) at org.apache.hadoop.fs.shell.Command.run(Command.java:154) at org.apache.hadoop.fs.FsShell.run(FsShell.java:255) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) at org.apache.hadoop.util.T

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论