分布式web框架-负载均衡_第1页
分布式web框架-负载均衡_第2页
分布式web框架-负载均衡_第3页
分布式web框架-负载均衡_第4页
分布式web框架-负载均衡_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、分 布 式 WEB 框架负载均衡PART ONEPART TWOPART THREEPART FOUR目录CONTENTS01020304PART ONE四层负载安装PART TWO四层负载配置PART THREE七层负载安装PART FOUR七层负载配置1PART ONE四层负载安装普通版LVS安装普通版LVS相对于Ali-LVS,不具备四层负载集群功能,在生产环境下,通常配合keepalived一起进行主主或主备的方式提供服务,普通版本LVS由 发布、原生的LVS。一般情况下,普通版LVS在linux内核2.6版本以上,不需要升级内核版本,它已经是系统的一部分。Ali-LVS安装Ali-L

2、VS是普通版LVS的升级版,相对于普通版LVS主要增加LVS集群功能以及在原有三种工作模式(DR、NAT、TUN)新增了FULLNAT模式。以下所有的配置来源于lvs官网: 普通版LVS安装安装ipvsadmmodprobe -l |grep ipvs检查kernel是否已经支持LVS的ipvs模块:kernel/net/netfilter/ipvs/ip_vs.kokernel/net/netfilter/ipvs/ip_vs_rr.kokernel/net/netfilter/ipvs/ip_vs_wrr.kokernel/net/netfilter/ipvs/ip_vs_lc.koker

3、nel/net/netfilter/ipvs/ip_vs_wlc.kokernel/net/netfilter/ipvs/ip_vs_lblc.kokernel/net/netfilter/ipvs/ip_vs_lblcr.kokernel/net/netfilter/ipvs/ip_vs_dh.kokernel/net/netfilter/ipvs/ip_vs_sh.kokernel/net/netfilter/ipvs/ip_vs_sed.kokernel/net/netfilter/ipvs/ip_vs_nq.kokernel/net/netfilter/ipvs/ip_vs_ftp.k

4、o如果有类似下面的输出,表明系统内核已经默认支持了IPVS模块。接着就可以安装IPVS管理软件了。tar zxvf ipvsadm-1.26.tar.gzcd ipvsadm-1.26make &make install在Director Serve上安装IPVS管理软件(先保证keepalived已正常安装)【方法1】ln -s /usr/src/kernels/2.6.9-42.EL-i686/ /usr/src/linux注意:在make时可能会出现错误编译信息,这是由于编译程序找不到对应内核的原因,按照如下操作就可以正常编译:yum install -y ipvsadm【方法2】ipv

5、sadm -help验证安装成功tar xvf Lvs-fullnat-synproxy.tar.gzcd lvs-fullnat-synproxy/tar xvf lvs-tools.tar.gzcd tools/ipvsadm/make & make install如果看到帮助提示,表明IPVS已经成功安装。【方法3】普通版LVS安装安装keepalived服务器系统:Red Hat 6.1 64bitLinux local00 2.6.32-131.0.15.el6.x86_64 #1 SMP Tue May 10 15:42:40 EDT 2011 x86_64 x86_64 x86_

6、64 GNU/Linuxgcc工具:rpm -qa|grep -i gcc环境配置:gcc make openssl openssl-devel kernel-devel popt-dev【依赖环境】tar -zxvf keepalived-1.2.13.tar.gzcd keepalived-1.2.13./configure -prefix=/home/mysql/keepalivedmake & make install【安装步骤】准备安装包keepalived-1.2.13.tar.gz方式一:Keepalived 下载 (wget )./configure -prefix=/home

7、/mysql/keepalivedmake & make install方式二:在lvs-fullnat-synproxy/tools/keepalivedAli-LVS安装升级内核查看本地是否安装ncurses,rpm -qa ncurses,若没有安装则执行命令:yum install -y ncurses-develtar -zxvf Linux-2.6.32-220.23.1.el6.x86_64.lvs.src.tar.gzcd linux-2.6.32-220.23.1.el6.x86_64.lvs/make mrpropermake menuconfig选择:“save an A

8、lternate Configuration file”“ok”“Exit”make -j16(请根据实际情况配置数值)make modules_installmake install修改文件/boot/grub/menu.lst,将default=0改为default=1记录当前内核版本,uname -a重启 reboot查看修改后的内核版本,看是否变化成功DirectServer内核版本升级tar -zxvf Linux-2.6.32-220.23.1.el6.x86_64.rs.src.tar.gz其他步骤参加上一章节。RealServer内核版本升级tar -zxvf Lvs-full

9、nat-synproxy.tar.gzmkdir lvstoolscp lvs-fullnat-synproxy/lvs-tools.tar.gz lvstools/cd lvstools/tar -zxvf lvs-tools.tar.gzcd tools/LVS Tools (keepalived/ipvsadm/quaage)LVS配套工具有3类:keepalived:保证lvs主备、对lvs、vip进行设置ipvsadm:directserver的命令行工具,一般情况下keepalived内部自动调用lvs命令,keepalived和ipvs命令行选择其一即可,推荐使用keepaliv

10、ed。quaage:cd keepalived/yum install openssl-develyum install popt-devel./configure -with-kernel-dir=/lib/modules/uname -r/build -prefix=/usr/localmake & make installkeepalived install接上一章节:2PART TWO四层负载配置A服务等一系列高级配置SERVICE配置C负载均衡转发模式及调度算法。转发模式B普通版LVS和Ali-LVS都可以分手工配置和基于keepalived的配置,两者选择其一即可。下面大概说明手工

11、配置的主要步骤和keepalived配置文件主要配置项的说明。负载配置D主要对常用的部署模式做简单的介绍,因LVS的模式和算法比较多,本章主要选取DR模式和RR算法作为举例。部署模式SERVICE配置cd ./keepalivedcp /usr/local/sbin/keepalived /usr/bin/cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/cp /usr/local/etc/rc.d/init.d/keepalived /etc/init.d/ipvsadm installcd ./keepalived/keepaliv

12、ed/libipvs-2.6/makecd ./././ipvsadm/make & make install负载配置网络及系统参数设置DS配置 首先在Director Server上绑定一个虚拟IP(也叫VIP),此IP用于对外提供服务。直接设置参考如下步骤,根据机器的实际,需要对参数做相应的调整在出口网卡绑定了一个虚拟设备ethx:0;设置VIP: ifconfig ethx:0 VIP broadcast VIP netmask 55 up; 然后给虚拟设备ethx:0指定一条路由,执行如下指令:route add -host VIP dev ethx:0Keepalived配置以主备的

13、方式说明keepalived的配置(/home/mysql/keepalived/etc/keepalived/keepalived.conf):主节点配置如下:global_defs router_id LVSvrrp_instance VI_1 state MASTER #注: BACKUP将根据优先级决定主或从;MASTER指定为主;SLAVE指定为从.若一方为MASTER,另一方为SLAVE,则表示双机热备(即一主一从). interface bond0 #当前服务器网卡virtual_router_id 51 #确保和server2相同,同网内不同集群此项必须不同,否则发生冲突 pr

14、iority 100 #此处server2上设置为50advert_int 1 nopreempt #不抢占,只在priority高的server1上设置,server2上此项注释掉authentication auth_type PASSauth_pass 1111virtual_ipaddress 00virtual_server 00 3306 delay_loop 2 #每个2秒检查一次real_server状态 lb_algo wrr#LVS算法lb_kind DR #LVS转发模式persistence_timeout 60#会话保持时间protocol TCP real_serv

15、er 00 3306 weight 3 TCP_CHECK connect_timeout 10#连接超时时间nb_get_retry 3 #重连次数delay_before_retry 3#重连间隔时间connect_port 3306#健康检查端口备节点配置如下:global_defs router_id LVSvrrp_instance VI_1 state BACKUP #注: BACKUP将根据优先级决定主或从;MASTER指定为主;SLAVE指定为从.若一方为MASTER,另一方为SLAVE,则表示双机热备(即一主一从). interface eth1virtual_router_

16、id 51 #确保和server2相同,同网内不同集群此项必须不同,否则发生冲突 priority 50 #此处server2上设置为50advert_int 1 !nopreempt #不抢占,只在priority高的server1上设置,server2上此项注释掉authentication auth_type PASSauth_pass 1111virtual_ipaddress 00virtual_server 00 3306 delay_loop 2 lb_algo wrrlb_kind DR persistence_timeout 60protocol TCP real_serve

17、r 01 3306 #server2上此处改为01(即server2本机ip)weight 3 notify_down /etc/keepalived/mysql.shTCP_CHECK connect_timeout 10nb_get_retry 3 delay_before_retry 3connect_port 3306检查service keepalived start|reloadip addr|grep 00delay_loop 2#每个2秒检查一次real_server状态 lb_algo wrr#LVS算法,共八种lb_kind DR #LVS转发模式,共四种:DR/NAT/T

18、UNNEL/FNATpersistence_timeout 60#会话保持时间protocol TCP 【关键参数详解】virtual_server模块weight 3 #权重TCP_CHECK #该模块为健康检查设置connect_timeout 10#连接超时时间nb_get_retry 3 #重连次数delay_before_retry 3#重连间隔时间connect_port 3306#健康检查端口 real_server模块RS配置回环设备上绑定了一个虚拟IP地址,ifconfig lo:0 00 netmask 55 up增加路由Director Server上的虚拟IP保持互通,

19、route add -host 00 dev lo:0禁止了本机的ARP请求。echo 1 /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 /proc/sys/net/ipv4/conf/lo/arp_announceecho 1 /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 /proc/sys/net/ipv4/conf/all/arp_announcesysctl p以DR模式为例:【方法1】#!/bin/bash VIP=50 case $1 in start) ifconfig lo:0 $VIP ne

20、tmask 55 broadcast $VIP route add -host $VIP dev lo:0 echo 1 /proc/sys/net/ipv4/conf/lo/arp_ignore echo 2 /proc/sys/net/ipv4/conf/lo/arp_announce echo 1 /proc/sys/net/ipv4/conf/all/arp_ignore echo 2 /proc/sys/net/ipv4/conf/all/arp_announce sysctl -p /dev/null 2&1 echo RealServer Start OK ; stop) ifc

21、onfig lo:0 down route del $VIP /dev/null 2&1 echo 0 /proc/sys/net/ipv4/conf/lo/arp_ignore echo 0 /proc/sys/net/ipv4/conf/lo/arp_announce echo 0 /proc/sys/net/ipv4/conf/all/arp_ignore echo 0 /proc/sys/net/ipv4/conf/all/arp_announce echo RealServer Stoped ; *) echo Usage: $0 start|stop exit 1 esac exi

22、t 0【方法2】使用rs.sh脚本网络参数调优net.ipv4.ip_forward = 0net.ipv4.conf.default.rp_filter = 1net.ipv4.conf.default.accept_source_route = 0kernel.sysrq = 0kernel.core_uses_pid = 1net.ipv4.tcp_syncookies = 1net.bridge.bridge-nf-call-ip6tables = 0net.bridge.bridge-nf-call-iptables = 0net.bridge.bridge-nf-call-arpt

23、ables = 0kernel.msgmnb = 65536kernel.msgmax = 65536kernel.shmmax = 68719476736kernel.shmall = net.ipv4.tcp_syncookies = 1net.ipv4.tcp_tw_reuse = 1anet.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_fin_timeout = 30net.ipv4.tcp_keepalive_time = 1200net.ipv4.tcp_max_syn_backlog = 50000net.ipv4.tcp_max_tw_buckets

24、 = 50000net.ipv4.ip_local_port_range = 10240 61000根据机器配置不同参数略有差别,参数示例:vi /etc/sysctl.conf转发模式DR模式DS配置直接设置【DirectServer配置】 配置VIPifconfig eth0:0 VIP broadcast VIP netmask 55 up注:eth0:0可根据实际出口网卡的名称设置 配置DirectorServer网卡参数echo 1 /proc/sys/net/ipv4/ip_forward注:当系统有多网卡,并有网卡1转网卡2,实现网卡数据转发时,开启此参数,否则,无需开启。配置转

25、发规则ipvsadm -a -t $VIP:$RPORT -r $RIP1:$RPORT -g-a:新增一条转发规则-t:基于TCP协议-r:RR算法-g:DR模式(直接路由模式)参数说明:Keepalived配置global_defs router_id LVSvrrp_instance VI_1 state MASTER #注: BACKUP将根据优先级决定主或从;MASTER指定为主;SLAVE指定为从.若一方为MASTER,另一方为SLAVE,则表示双机热备(即一主一从). interface etho #当前服务器网卡virtual_router_id 51 #确保和server2相

26、同,同网内不同集群此项必须不同,否则发生冲突 priority 100 #此处server2上设置为50advert_int 1 nopreempt #不抢占,只在priority高的server1上设置,server2上此项注释掉authentication auth_type PASSauth_pass 1111virtual_ipaddress 00 #VIPvirtual_server 00 3306 #转发规则delay_loop 2 #每个2秒检查一次real_server状态 lb_algo wrr#LVS算法lb_kind DR #LVS转发模式persistence_time

27、out 60#会话保持时间protocol TCP #转发协议类型,有tcp和udp两种real_server 00 3306 weight 3 TCP_CHECK #TCP_CHECK和UDP_CHECKconnect_timeout 10#连接超时时间nb_get_retry 3 #重连次数delay_before_retry 3#重连间隔时间connect_port 3306#健康检查端口【Keepalived对应配置】RS配置echo 1 /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 /proc/sys/net/ipv4/conf/lo/arp

28、_announceecho 1 /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 /proc/sys/net/ipv4/conf/all/arp_announceifconfiglo:0VIP netmask55uprouteadd-host1VIPdevlo:0【RealServer配置】 配置DirectorServer网卡参数 配置回环地址转发模式FULLNAT模式DS配置【安装系统和工具】# 参见lvs-fullnat-synproxy.tar中的README,包括 LVS kernel和keepalived等的编译方法;【内核启动参数】在ker

29、nel一行中,添加“nohz=off ”注:如果不关闭nohz,大压力下CPU0可能会消耗过高,压力不均匀;【Sysctl配置】路径:/etc/sysctl.conf# configure for lvs dev_max_backlog = 500000路径:/etc/rc.local关闭网卡LRO和GRO# ethtool -K eth0 gro off# ethtool -K eth0 lro off【配置网卡参数】路径:/etc/rc.local关闭irqbalance# service irqbalance stop# chkconfig -level 2345 irqbalance

30、off【关闭系统参数】路径:/etc/rc.localLocal address绑定到内网(下联)网卡上ip addr add /32 dev eth1ip addr add /32 dev eth1ip addr add /32 dev eth1ip addr add /32 dev eth1ip addr add /32 dev eth1此步骤不配置,默认使用本机IP。【LocalAddress配置】启动:service keepalived start更新:service keepalived reload停止:service keepalived stop【Keepalived.con

31、f】Keepalived的配置包含2个文件:说明:一个集群内的所有LVS配置文件基本相同,区别的地方见红色区域主配置文件keepalived.conf路径:/etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs # notification_email # # # notification_email_from # smtp_server # smtp_connect_timeout 40local_address_group laddr_g1 ! include virtual server

32、configure fileinclude server.conf业务配置文件 “业务名.conf”路径:/etc/keepalived/ server.confvirtual_server_group server 80 /vip1 80 /vip2vrrp_instance VI_1 state MASTER/BACKUP interface eth0 virtual_router_id 200 priority 150/90 advert_int 1 authentication auth_type PASS auth_pass 123456 virtual_ipaddress /* h

33、ealthcheck for L7 */ real_server 80 weight 100 inhibit_on_failure HTTP_GET url path /index.html status_code 200 connect_timeout 3 nb_get_retry 2 delay_before_retry 5 virtual_server group server delay_loop 7lb_algo rrlb_kind FNATprotocol TCPsyn_proxyladdr_group_name laddr_g1?/* healthcheck for L4 */r

34、eal_server 80 weight 100inhibit_on_failure TCP_CHECK connect_timeout 5 【绑定网卡中断】# set_irq_affinity eth0 #脚本参见附录,该脚本是ixgbe/igb driver网卡RS配置命令:# modprobe toa# vim /etc/rc.local添加 modproble toa【安装系统】# 参见lvs-fullnat-synproxy.tar中的README,其中有TOA(RS内核)的patch;【加载TOA模块】转发模式NAT模式直接设置ifconfig eth0:0 VIP broadca

35、st VIP netmask 55 up注:eth0:0可根据实际出口网卡的名称设置echo 1 /proc/sys/net/ipv4/ip_forward注:当系统有多网卡,并有网卡1转网卡2,实现网卡数据转发时,开启此参数,否则,无需开启。ipvsadm -a -t $VIP:$RPORT -r $RIP1:$RPORT -m参数说明:-a:新增一条转发规则-t:基于TCP协议-r:RR算法-m:NAT模式(直接路由模式)【DirectServer配置】 配置VIP 配置转发规则 配置DirectorServer网卡参数global_defs router_id LVSvrrp_insta

36、nce VI_1 state MASTER #注: BACKUP将根据优先级决定主或从;MASTER指定为主;SLAVE指定为从.若一方为MASTER,另一方为SLAVE,则表示双机热备(即一主一从). interface etho #当前服务器网卡virtual_router_id 51 #确保和server2相同,同网内不同集群此项必须不同,否则发生冲突 priority 100 #此处server2上设置为50advert_int 1 nopreempt #不抢占,只在priority高的server1上设置,server2上此项注释掉authentication auth_type P

37、ASSauth_pass 1111virtual_ipaddress 00virtual_server 00 3306 delay_loop 2 #每个2秒检查一次real_server状态 lb_algo wrr#LVS算法lb_kind NAT #LVS转发模式persistence_timeout 60#会话保持时间protocol TCP #转发协议类型,有tcp和udp两种real_server 00 3306 weight 3 TCP_CHECK #TCP_CHECK和UDP_CHECKconnect_timeout 10#连接超时时间nb_get_retry 3 #重连次数del

38、ay_before_retry 3#重连间隔时间connect_port 3306#健康检查端口Keepalived配置【Keepalived对应配置】部署模式主备模式主备模式的情况下,只需要一个对外的VIP即可,使用Keepalived作为高可用工具,LVS的安装可以参考上面的章节,下面对配置的过程和算法梳理一下。1、安装LVS2、在主备机安装Keepalived3、配置Keepalived4、启动global_defs router_id LVSvrrp_instance VI_1 state MASTER #注: BACKUP将根据优先级决定主或从;MASTER指定为主;SLAVE指定为

39、从.若一方为MASTER,另一方为SLAVE,则表示双机热备(即一主一从). interface etho #当前服务器网卡virtual_router_id 51 #确保和server2相同,同网内不同集群此项必须不同,否则发生冲突 priority 100 #此处备节点上设置为50advert_int 1 nopreempt #不抢占,只在priority高的server1上设置,server2上此项注释掉authentication auth_type PASSauth_pass 1111virtual_ipaddress 23 #VIP地址virtual_server 23 3306

40、#对于lvs的转发规则delay_loop 2 #每个2秒检查一次real_server状态 lb_algo wrr#LVS算法lb_kind DR #LVS转发模式persistence_timeout 60#会话保持时间protocol TCP #转发协议类型,有tcp和udp两种real_server 8 3306 weight 3 TCP_CHECK #TCP_CHECK和UDP_CHECKconnect_timeout 10#连接超时时间nb_get_retry 3 #重连次数delay_before_retry 3#重连间隔时间connect_port 3306#健康检查端口,对于

41、转发规则端口【Keepalived配置参考】主节点:global_defs router_id LVSvrrp_instance VI_1 state BACKUP#注: BACKUP将根据优先级决定主或从;MASTER指定为主;SLAVE指定为从.若一方为MASTER,另一方为SLAVE,则表示双机热备(即一主一从). interface etho #当前服务器网卡virtual_router_id 51 #确保和主节点相同,同网内不同集群此项必须不同,否则发生冲突 priority 50 #此处备节点上设置为50advert_int 1 #nopreempt #不抢占,只在priority

42、高的节点上设置,备节点上此项注释掉authentication auth_type PASSauth_pass 1111virtual_ipaddress 23#VIP地址virtual_server 23 3306 #对于lvs的转发规则delay_loop 2 #每个2秒检查一次real_server状态 lb_algo wrr#LVS算法lb_kind DR #LVS转发模式persistence_timeout 60#会话保持时间protocol TCP #转发协议类型,有tcp和udp两种real_server 8 3306 weight 3 TCP_CHECK #TCP_CHECK

43、和UDP_CHECKconnect_timeout 10#连接超时时间nb_get_retry 3 #重连次数delay_before_retry 3#重连间隔时间connect_port 3306#健康检查端口,对于转发规则端口备节点:部署模式主主模式主主模式的情况下,需要两个对外的VIP即可,每台DS都有1个主VIP和一个备VIP,使用Keepalived作为高可用工具,LVS的安装可以参考上面的章节,下面对配置的过程和算法梳理一下。1、安装LVS2、在主备机安装Keepalived3、配置Keepalived4、启动#123 is mastervrrp_instance VI_1 sta

44、te MASTER #更改这个配置backup or master interface bond0 virtual_router_id 51 #注意这个ID与上一组的ID不同 priority 100 #更改这个配置100 or 50 advert_int 1 nopreempt authentication auth_type PASS auth_pass 1111 virtual_ipaddress 23 virtual_server 23 9090 delay_loop 6 lb_algo wrr lb_kind DR persistence_timeout 60 protocol TC

45、P real_server 8 9090 notify_down /etc/keepalived/down.sh weight 1 TCP_CHECK connect_timeout 10 nb_get_retry delay_before_retry connect_port 9090 real_server 9 9090 notify_down /etc/keepalived/down.sh weight 1 TCP_CHECK connect_timeout 10nb_get_retry 3delay_before_retry 3connect_port 9090 global_defs

46、 router_id CTG-HAvrrp_sync_group VGM1 group VI_1 vrrp_sync_group VGM2 group VI_2 #124 is slavevrrp_instance VI_2 state BACKUP #更改这个配置backup or master interface bond0 virtual_router_id 52 #注意这个ID与上一组的ID不同 priority 50 #更改这个配置100 or 50 advert_int 1 nopreempt authentication auth_type PASS auth_pass 1111

47、 virtual_ipaddress 24 virtual_server 24 9090 delay_loop 6 lb_algo wrr lb_kind DR persistence_timeout 60 protocol TCP real_server 8 9090 notify_down /etc/keepalived/down.sh weight 1 TCP_CHECK connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 9090 real_server 9 9090 notify_down /etc/

48、keepalived/down.sh weight 1 TCP_CHECK connect_timeout 10nb_get_retry 3 delay_before_retry 3connect_port 9090 global_defs router_id CTG-HAvrrp_sync_group VGM1 group VI_1 vrrp_sync_group VGM2 group VI_2 #123 is slavevrrp_instance VI_1 state BACKUP #更改这个配置backup or master interface bond0 virtual_router

49、_id 51 #注意这个ID与上一组的ID不同 priority 50 #更改这个配置100 or 50 advert_int 1 nopreempt authentication auth_type PASS auth_pass 1111 virtual_ipaddress 23 virtual_server 23 9090 delay_loop 6 lb_algo wrr lb_kind DR persistence_timeout 60 protocol TCP real_server 8 9090 notify_down /etc/keepalived/down.sh weight 1

50、 TCP_CHECK connect_timeout 10 nb_get_retry delay_before_retry connect_port 9090 real_server 9 9090 notify_down /etc/keepalived/down.sh weight 1 TCP_CHECK connect_timeout 10nb_get_retry 3delay_before_retry 3connect_port 9090 主节点2:#124 is mastervrrp_instance VI_2 state MASTER #更改这个配置backup or master interface bond0 virtual_router_id 52 #注意这个ID与上一组的ID不同 priority 100 #更改这个配置100 or 50 advert_i

温馨提示

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

评论

0/150

提交评论