openstack虚拟化云计算平台详细安装流程报告-单机_第1页
openstack虚拟化云计算平台详细安装流程报告-单机_第2页
openstack虚拟化云计算平台详细安装流程报告-单机_第3页
openstack虚拟化云计算平台详细安装流程报告-单机_第4页
openstack虚拟化云计算平台详细安装流程报告-单机_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

3dOpenstack虚拟化云计算平台详细安装流程报告写在前面的话Openstack到目前为止(201403),已经包含多个稳定版本(A-H),最新的稳定版本是Havana版,我们现在使用的实验版本也是havana版本。由于openstack的版本相互之间差异比较大,组件的安装命令等也略有相同,所以在参考此文档时要注意区别openstack的版本。Openstack的各个组件相互之间是通过网络来进行互联互通,不同的组件理论上都可以部署在不同的节点上,可以通过一些的额外的步骤来提高openstack的可用性。基于我们的实验环境和现实情况,我们选择了官网推荐的最经典的安装方式,因此阅读此文档的读者在阅读文档时,注意我们使用的安装方式不是openstack的唯一安装方式。Openstack架构2.1基础组件服务组件说明备注DashBoardHorizon提供WEB界面ComputerNova计算也就是虚拟机NetworkingNeutron提供给nova网络支持实验环境不需要安装ObjectStorageSwift提供对象存储实验环境不需要安装BlockStorageCinder提供云硬盘给novaIdentitySserviceKeystone提供所有组件的认证ImageServiceGlance提供给nova镜像服务TelemetryServiceCellometer监控cinder,neutron,nova,glance实验环境不需要安装OrchestrationServiceHeat与AWScloud兼容实验环境不需要安装2.2组件对应关系 基础配置硬件配置情况介绍:机器CPU内存硬盘网卡其他虚拟机1单核E5500Intel@2.8G2G20G单网卡2.节点情况介绍:机器节点主机名IP地址操作系统用户名密码情况节点centos0CentOS6.5basicServerroot/rootpassOpenstack/openstack3.网络情况介绍:通过一台单独的交换机进行网络访问,因此网络中有大量可用的10.10.70.XX段地址,可以分配给不同的虚拟机。实验环境的网络速度有限速,所以很多措施是节省网络代码,如果网络条件好,很多步骤可以省略或者替换。4.相关密码统计所属机器用户名密码用户名密码说明Centos的用户密码root/rootpassRoot用户的密码openstack/openstackOpenstack的用户名密码mySQL数据库服务器Root/mysqlrootOpenstack服务密码Nova/novaKeystone/keystoneGlance/glanceCinder/cinderOpenstack数据库密码Nova/novaKeystone/keystoneGlance/glanceCinder/cinder基本的操作系统配置重要提醒重要提醒在进行下面的所有操作时,必须要有root权限,如果root权限不好获取,可以通过sudo命令来获取。在进行下面的所有操作时,必须要有root权限,如果root权限不好获取,可以通过sudo命令来获取。4.1基础网络设置将节点的IP设置成静态的IP地址。修改文件:vi/etc/sysconfig/network-scripts/ifcfg-eth0需要注意的内容如下:DEVICE=eth0网卡的名称HWADDR=00:1E:67:24:E7:31Mac地址的名称TYPE=Ethernet网络类型UUID=c6ee6fd1-467b-4f36-bcdc-307bc678191bONBOOT=yes

这是随系统启动而启动的选项NM_CONTROLLED=no

这是由系统的networkmanager来管理IP地址,设置为NoBOOTPROTO=static

设置网卡获取IP地址方式有static,DHCP,bootp.分别对应静态指定的ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址IPADDR=0如果设置网卡获得ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址NETMASK=

子网掩码GATEWAY=11网关地址ARPCHECK=noDNS1=11设置完成之后,重启网络:servicenetworkrestart重要提醒重要提醒1.1.有些教程中说ifcfg-eth0中的配置网关的GATEWAY关键字是NETWORK,是不对的,实现发现如果设置错误,上不了外网。2.ARPCHECK=no的作用是解决错误:网络重启报错:Bringingupinterfaceeth0:

Determiningifipaddress0isalreadyinusefordeviceeth0...设置节点的网关修改对应网卡的网关的配置文件

vi

/etc/sysconfig/network修改以下内容NETWORKING=yes(表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)

HOSTNAME=centos(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应)

GATEWAY=11(设置本机连接的网关的IP地址。)设置完成之后,重启网络:servicenetworkrestart设置节点的DNS修改对应网卡的DNS的配置文件

vi

/etc/resolv.conf修改一下内容: nameserver

11设置完成之后,重启网络:servicenetworkrestart设置节点的主机名IP对应关系1、修改文件:

vi

/etc/sysconfig/network 设置:HOSTNAME=centos2、修改文件:vietc/hosts在以前的内容上增加: centos0centos重要提醒重要提醒设置节点的主机名和IP对应关系时要注意,每个节点都要配置此项,而且每个节点都要配置整个网络中其他节点的IP和主机名的对应关系。这样做的目的是为了在整个网络中,可以通过主机名来访问其他的机器。设置节点的主机名和IP对应关系时要注意,每个节点都要配置此项,而且每个节点都要配置整个网络中其他节点的IP和主机名的对应关系。这样做的目的是为了在整个网络中,可以通过主机名来访问其他的机器。关闭节点的防火墙以及其他安全策略。重启网络运行以下命令serviceNetworkManagerstopservicenetworkstartchkconfigNetworkManageroffchkconfignetworkon关闭防火墙serviceiptablesstopchkconfigiptablesoffserviceip6tablesstopchkconfigip6tablesoff关闭SELinuxsetenforce0vietc/sysconfig/selinux修改SELINUX=permissive重要提醒重要提醒1.获取当前SELinux运行状态1.获取当前SELinux运行状态#getenforce可能返回结果有三种:Enforcing、Permissive

Disabled。Disabled代表SELinux被禁用,Permissive代表仅记录安全警告但不阻止可疑行为,Enforcing代表记录警告且阻止可疑行为。目前常见发行版中,RHEL和Fedora默认设置为Enforcing,其余的如openSUSE等为Permissive。2.改变SELinux运行状态setenforce[Enforcing|Permissive|1|0]该命令可以立刻改变SELinux运行状态,在Enforcing和Permissive之间切换,结果保持至关机。一个典型的用途是看看到底是不是SELinux导致某个服务或者程序无法运行。若是在setenforce0之后服务或者程序依然无法运行,那么就可以肯定不是SELinux导致的。若是想要永久变更系统SELinux运行环境,可以通过更改配置文件

/etc/sysconfig/selinux

实现。注意当从Disabled切换到Permissive或者Enforcing模式后需要重启计算机并为整个文件系统重新创建安全标签(touch/.autorelabel&&reboot)。4.2时间同步服务器设置 因为是单节点所以可以省略掉4.3MySQL数据库设置 节点安装步骤:运行以下命令,安装mysql服务器和客户端yuminstall-ymysqlmysql-serverMySQL-python启动MySQL服务servicemysqldstartchkconfigmysqldon初始化MYSQL数据库mysql_install_dbmysql_secure_installation 重要提醒重要提醒初始化MYSQL数据库的目的是为了删除mysql自带的测试数据库以及为mysql的root用户增加密码:实验环境的密码为:mysqlroot初始化MYSQL数据库的目的是为了删除mysql自带的测试数据库以及为mysql的root用户增加密码:实验环境的密码为:mysqlroot4.4Openstack基础包下载设置在各个节点中,按照以下步骤安装:yuminstall/repos/openstack/openstack-havana/rdo-release-havana-6.noarch.rpm-yyuminstall/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm-yyuminstallopenstack-utils-yyuminstallopenstack-selinux-yyumupgrade-yreboot重要提醒重要提醒由于网络原因,可能会提示下载失败等问题,这是由于需要远程国外的网站下载资源,如果一旦碰到下载失败的情况,重复执行命令即可,linux会自动连续下载。由于网络原因,可能会提示下载失败等问题,这是由于需要远程国外的网站下载资源,如果一旦碰到下载失败的情况,重复执行命令即可,linux会自动连续下载。Error:Cannotretrievemetalinkforrepository:epel.Pleaseverifyitspathandtryagain修改/etc/yum.repos.d/epel.repo文件,做如下改动#baseurl=/pub/epel/6/$basearchmirrorlist=/metalink?repo=epel-6&arch=$basearch变为baseurl=/pub/epel/6/$basearch#mirrorlist=/metalink?repo=epel-6&arch=$basearch保存文件,再次执行即可5.5消息服务器设置在节点进行消息服务器的安装工作:1.安装消息服务器yuminstallqpid-cpp-servermemcached-y2.修改

/etc/qpidd.conf

文件,将auth的选项设置no,来禁用qpidd的认证。auth=no3.启动消息服务器,并设置为自动启动。serviceqpiddstartchkconfigqpiddon配置用户权限服务IdenitityService5.1用户权限服务的基本概念用户权限服务主要包含两个功能:用户管理:管理用户以及用户的权限。服务目录:通过服务终端提供相应的服务目录。主要涉及的名词有:用户(user):用户指的是使用openstack云服务的使用者,用户具有登录和使用资源的权限,用户隶属于租户。证书(Credentials):有且只有用户自己知道的一组数据,比如:密码,认证令牌等等认证(Authentication):确定一个用户身份的动作。令牌(token):组用来访问资源的随机数字,令牌中包含了访问资源的范围和权限等等。租户(tenant):租户可以被理解为一个项目,团队或组织。你必须指定一个相应的租户(tenant)才可以申请OpenStack服务服务(Service):openstack的组件表现形式,提供了一个或者多个终端,用户可以通过访问终端来资源。

终端(Endpoint):通过网络访问服务的一种方式,通常是URL地址等。角色(Role):角色代表特定的租户中的用户操作权限5.2安装和配置用户权限服务 在节点中完成以下操作:在节点中安装keystone服务包 yuminstallopenstack-keystonepython-keystoneclient-y用户权限服务通过数据库来存储基本信息。因此需要在数据库中修改数据库的位置,本实验中使用了mysql数据,通过以下命令来修改数据库配置信息。 openstack-config--set/etc/keystone/keystone.confsqlconnectionmysql://keystone:keystone@centos/keystone通过openstack-db命令来初始化数据库表,同时创建相应的数据库和用户。 openstack-db--init--servicekeystone--passwordkeystone使用openssl来生成认证令牌,用来使用用户权限服务和openstack的其他服务之间共享数据。ADMIN_TOKEN=$(opensslrand-hex10)echo$ADMIN_TOKENopenstack-config--set/etc/keystone/keystone.confDEFAULTadmin_token$ADMIN_TOKEN 重要提醒重要提醒这个步骤里生成ADMIN_TOKEN,后面需要频繁的使用到,所以此时要记录下来。这个步骤里生成ADMIN_TOKEN,后面需要频繁的使用到,所以此时要记录下来。KeyStone使用了PKI令牌,执行下面的名来安装关键字和证书。keystone-managepki_setup--keystone-userkeystone--keystone-groupkeystonechown-Rkeystone:keystone/etc/keystone/*/var/log/keystone/keystone.log启动keystone的服务并设置为开机自启动。serviceopenstack-keystonestart&&chkconfigopenstack-keystoneon5.3定义用户,租户,角色等 安装完用户权限服务之后,可以增加相应的角色,租户,用户等。设置环境变量exportOS_SERVICE_TOKEN=使用上面生成的ADMIN_TOKENexportOS_SERVICE_ENDPOINT=http://centos:35357/v2.0创建租户keystonetenant-create--name=admin--description="AdminTenant"keystonetenant-create--name=service--description="ServiceTenant"创建用户keystoneuser-create--name=admin--pass=admin--email=admin@创建角色keystonerole-create--name=admin将用户添加到对应的角色中去。keystoneuser-role-add--user=admin--tenant=admin--role=admin重要提醒重要提醒如果keystone服务报错:如果keystone服务报错:Therequestyouhavemaderequiresauthentication.(HTTP401)检查:1.检查环境变量是否设置1.检查AMDIN_PASS是不是没有替换,如果没有替换a.通过keystone

user-password-update

b.通过

openstack-db--drop--servicekeystone删除数据库重建5.4定义服务和端点在openstack中注册服务和终端,注册之前确保前面定义的OS_SERVICE_TOKEN可用。注册服务keystoneservice-create--name=keystone--type=identity--description="KeystoneIdentityService"执行完命令之后,记录下服务产生的ID。注册终端keystoneendpoint-create\--service-id=上面流程中注册服务产生的服务的ID\--publicurl=http://centos:5000/v2.0\--internalurl=http://centos:5000/v2.0\--adminurl=http://centos:35357/v2.0配置镜像服务镜像服务就是openstack用来存储服务器镜像的一个服务。镜像的存储位置可以有几种配置方式,可以通过配置文件/etc/glance/glance-cache.conf配置文件来进行修改。在节点执行以下命令:安装镜像服务。yuminstall-yopenstack-glance在配置文件中修改镜像服务所在的数据库信息。openstack-config--set/etc/glance/glance-api.confDEFAULTsql_connectionmysql://glance:glance@centos/glanceopenstack-config--set/etc/glance/glance-registry.confDEFAULTsql_connectionmysql://glance:glance@centos/glance通过openstack-db来初始化数据库,用户,表。openstack-db--init--serviceglance--passwordglance创建glance用户,并添加到对用的角色上。keystoneuser-create--name=glance--pass=glance--email=glance@keystoneuser-role-add--user=glance--tenant=service--role=admin重要提醒重要提醒运行命令运行命令keystone

user-role-add

--user=glance

--tenant=service

--role=admin后,通过keystoneuser-role-list查看不到glance的相关配置,不是配置错误,可以通过命令:keystone--os-tenant-nameservice--os-usernameglance--os-passwordglanceuser-role-list来查看在配置文件中做一些修改,来保证镜像服务和用户权限服务结合。openstack-config--set/etc/glance/glance-api.confkeystone_authtokenauth_urihttp://centos:5000openstack-config--set/etc/glance/glance-api.confkeystone_authtokenauth_hostcentosopenstack-config--set/etc/glance/glance-api.confkeystone_authtokenadmin_tenant_nameserviceopenstack-config--set/etc/glance/glance-api.confkeystone_authtokenadmin_userglanceopenstack-config--set/etc/glance/glance-api.confkeystone_authtokenadmin_passwordglanceopenstack-config--set/etc/glance/glance-api.confpaste_deployflavorkeystoneopenstack-config--set/etc/glance/glance-registry.confkeystone_authtokenauth_urihttp://centos:5000openstack-config--set/etc/glance/glance-registry.confkeystone_authtokenauth_hostcentosopenstack-config--set/etc/glance/glance-registry.confkeystone_authtokenadmin_tenant_nameserviceopenstack-config--set/etc/glance/glance-registry.confkeystone_authtokenadmin_userglanceopenstack-config--set/etc/glance/glance-registry.confkeystone_authtokenadmin_passwordglanceopenstack-config--set/etc/glance/glance-registry.confpaste_deployflavorkeystone在配置文件中增加认证相关配置。首先复制配置文件到正确的位置cp/usr/share/glance/glance-api-dist-paste.ini/etc/glance/glance-api-paste.inicp/usr/share/glance/glance-registry-dist-paste.ini/etc/glance/glance-registry-paste.ini 编辑这两个配置文件,将以下配置添加到选项:[filter:authtoken]中vi/etc/glance/glance-api-paste.inivi/etc/glance/glance-registry-paste.ini[filter:authtoken]paste.filter_factory=keystoneclient.middleware.auth_token:filter_factoryauth_host=centosadmin_user=glanceadmin_tenant_name=serviceadmin_password=glance注册服务keystoneservice-create--name=glance--type=image--description="GlanceImageService"注册服务终端keystoneendpoint-create\--service-id=上面注册服务时产生的服务ID\--publicurl=http://centos:9292\--internalurl=http://centos:9292\--adminurl=http://centos:9292 启动镜像服务病设置为自动启动serviceopenstack-glance-apistart&&chkconfigopenstack-glance-apionserviceopenstack-glance-registrystart&&chkconfigopenstack-glance-registryon配置计算服务计算服务是云算机器,它是IaaS系统的主要部分,用它来承载和管理云计算系统。7.1安装计算服务安装计算包yuminstall-yopenstack-novapython-novaclient在配置文件中修改数据库存储信息openstack-config--set/etc/nova/nova.confdatabaseconnectionmysql://nova:nova@centos/nova在配置文件中配置消息服务器openstack-config--set/etc/nova/nova.confDEFAULTrpc_backendmon.rpc.impl_qpidopenstack-config--set/etc/nova/nova.confDEFAULTqpid_hostnamecentos使用openstack-db命令来初始化数据库,用户,表openstack-db--init--servicenova--passwordnova在配置文件中配置vnc相关的配置openstack-config--set/etc/nova/nova.confDEFAULTmy_ip0openstack-config--set/etc/nova/nova.confDEFAULTvnc_enabledTrueopenstack-config--set/etc/nova/nova.confDEFAULTvncserver_listen0openstack-config--set/etc/nova/nova.confDEFAULTvncserver_proxyclient_address0openstack-config--set/etc/nova/nova.confDEFAULTnovncproxy_base_urlhttp://centos:6080/vnc_auto.html重要提醒重要提醒my_imy_ip是一个非常重要的参数,一定要配置成外网的IP。官方文档中使用了内网IP,是不对。一定注意。创建用户和角色keystoneuser-create--name=nova--pass=nova--email=nova@keystoneuser-role-add--user=nova--tenant=service--role=admin修改配置信息,使配置文件和身份认证服务结合。openstack-config--set/etc/nova/nova.confDEFAULTauth_strategykeystoneopenstack-config--set/etc/nova/nova.confkeystone_authtokenauth_hostcentosopenstack-config--set/etc/nova/nova.confkeystone_authtokenauth_protocolhttpopenstack-config--set/etc/nova/nova.confkeystone_authtokenauth_port35357openstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_usernovaopenstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_tenant_nameserviceopenstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_passwordnova在配置文件中配置镜像的相关服务openstack-config--set/etc/nova/nova.confDEFAULTglance_hostcentos在配置文件中增加证书,配置文件的[filter:authtoken]选项中增加配置段。vi/etc/nova/api-paste.ini[filter:authtoken]paste.filter_factory=keystoneclient.middleware.auth_token:filter_factoryauth_host=centosauth_port=35357auth_protocol=httpauth_uri=http://centos:5000/v2.0admin_tenant_name=serviceadmin_user=novaadmin_password=nova创建服务keystoneservice-create--name=nova--type=compute--description="NovaComputeservice"创建服务终端keystoneendpoint-create\--service-id=上面注册服务时产生的服务ID\--publicurl=http://centos:8774/v2/%\(tenant_id\)s\--internalurl=http://centos:8774/v2/%\(tenant_id\)s\--adminurl=http://centos:8774/v2/%\(tenant_id\)s启动服务以及服务设置为自动启动。serviceopenstack-nova-apistartserviceopenstack-nova-certstartserviceopenstack-nova-consoleauthstartserviceopenstack-nova-schedulerstartserviceopenstack-nova-conductorstartserviceopenstack-nova-novncproxystartchkconfigopenstack-nova-apionchkconfigopenstack-nova-certonchkconfigopenstack-nova-consoleauthonchkconfigopenstack-nova-scheduleronchkconfigopenstack-nova-conductoronchkconfigopenstack-nova-novncproxyonservicelibvirtdstartservicemessagebusstartchkconfiglibvirtdonchkconfigmessagebusonserviceopenstack-nova-computestartchkconfigopenstack-nova-computeon7.2网络设置在所有的计算节点中运行以下命令:安装网络相关包yuminstall-yopenstack-nova-network在各个计算节点的nova.conf文件中加入网络模块openstack-config--set/etc/nova/nova.confDEFAULTnetwork_managerwork.manager.FlatDHCPManageropenstack-config--set/etc/nova/nova.confDEFAULTfirewall_drivernova.virt.libvirt.firewall.IptablesFirewallDriveropenstack-config--set/etc/nova/nova.confDEFAULTnetwork_size254openstack-config--set/etc/nova/nova.confDEFAULTallow_same_net_trafficFalseopenstack-config--set/etc/nova/nova.confDEFAULTmulti_hostTrueopenstack-config--set/etc/nova/nova.confDEFAULTsend_arp_for_haTrueopenstack-config--set/etc/nova/nova.confDEFAULTshare_dhcp_addressTrueopenstack-config--set/etc/nova/nova.confDEFAULTforce_dhcp_releaseTruepenstack-config--set/etc/nova/nova.confDEFAULTflat_interfaceeth0openstack-config--set/etc/nova/nova.confDEFAULTflat_network_bridgebr100openstack-config--set/etc/nova/nova.confDEFAULTpublic_interfaceeth0重要提醒重要提醒单节点设置时一定要注意不要配置eth0,否则会造成虚拟机无法上网的问题。单节点设置时一定要注意不要配置eth0,否则会造成虚拟机无法上网的问题。安装api服务,使计算节点能够访问虚拟实例。yuminstall-yopenstack-nova-apiserviceopenstack-nova-metadata-apistartchkconfigopenstack-nova-metadata-apion启动服务并注册自动启动serviceopenstack-nova-networkstartchkconfigopenstack-nova-networkon在节点运行命令: novanetwork-createvmnet--fixed-range-v4=/24--bridge=br100--multi-host=T重要提醒重要提醒创建网络的命令必须在控制节点上运行。创建网络的命令必须在控制节点上运行。如果网络后,虚拟机无法上网,不需要考虑IPv6的问题,经过测试没有影响。有资料说,可能跟网卡的混杂模式有关,经过测试没有发现关系。重要提醒重要提醒allow_same_net_trafficallow_same_net_traffic参数资料上说,可以改变虚拟机之间的访问关系,但是经过测试,发现没有关系,同一节点之间的虚拟机可以互相访问,不同节点之间的虚拟机不能互相访问。虚拟机创建后,只能通过虚拟机所在的计算节点(或其他计算节点)进行访问,控制节点无法访问。控制节点如果访问,需要配置浮动IP来设置。可以通过制定:--availability-zonenova:slaver来制定在那个节点上创建虚拟机。如果希望不通过密码进行登录虚拟机,要在不同的机器上上传不同的key。配置面板在节点上运行以下步骤:安装面版的服务。yuminstall-ymemcachedpython-memcachedmod_wsgiopenstack-dashboard修改基础的配置。Vi/etc/openstack-dashboard/local_settings修改[default][Location][CACHES]选项:CACHES={'default':{'BACKEND':'django.core.cache.backends.memcached.MemcachedCache','LOCATION':':11211'}}修改[ALLOWED_HOSTS]选项ALLOWED_HOSTS=['*']修改[OPENSTACK_HOST]选项:OPENSTACK_HOST="centos"OPENSTACK_KEYSTONE_DEFAULT_ROLE="_member_"设置自动启动servicehttpdstartservicememcachedstartchkconfighttpdonchkconfigmemcachedon设置浮动IP通过以上步骤创建的虚拟机只能允许在计算节点访问或者通过台访问,如果需要让局域网内的所有机器访问(也就是70段地址),需要增加一个浮动IP的概念。也就是配一个外网地址到虚拟机的实例中。可以在节点运行以下命令:首先通过命令创建浮动IP池nova-managefloatingcreate0/30查看可用的浮动IP资源nova-managefloatinglist从浮动IP池中获取可用的浮动IPnovafloating-ip-create将浮动IP设置到某个实例中。nova

温馨提示

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

评论

0/150

提交评论