![在RedhatEnterprise5上安装配置XEN[多图详解].doc_第1页](http://file.renrendoc.com/FileRoot1/2019-2/3/f370c5f4-34c3-4e3f-be22-a4dd3beb77d7/f370c5f4-34c3-4e3f-be22-a4dd3beb77d71.gif)
![在RedhatEnterprise5上安装配置XEN[多图详解].doc_第2页](http://file.renrendoc.com/FileRoot1/2019-2/3/f370c5f4-34c3-4e3f-be22-a4dd3beb77d7/f370c5f4-34c3-4e3f-be22-a4dd3beb77d72.gif)
![在RedhatEnterprise5上安装配置XEN[多图详解].doc_第3页](http://file.renrendoc.com/FileRoot1/2019-2/3/f370c5f4-34c3-4e3f-be22-a4dd3beb77d7/f370c5f4-34c3-4e3f-be22-a4dd3beb77d73.gif)
![在RedhatEnterprise5上安装配置XEN[多图详解].doc_第4页](http://file.renrendoc.com/FileRoot1/2019-2/3/f370c5f4-34c3-4e3f-be22-a4dd3beb77d7/f370c5f4-34c3-4e3f-be22-a4dd3beb77d74.gif)
![在RedhatEnterprise5上安装配置XEN[多图详解].doc_第5页](http://file.renrendoc.com/FileRoot1/2019-2/3/f370c5f4-34c3-4e3f-be22-a4dd3beb77d7/f370c5f4-34c3-4e3f-be22-a4dd3beb77d75.gif)
已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
在Redhat Enterprise 5上安装配置XEN简介Xen是一个基于虚拟硬件监控器技术的虚拟化软件。Xen运行在一个宿主linux系统上,提供同时引导启动多个linux实例的能力。每个由Xen生成的虚拟机,被称为domain。新创建的domain需要为其安装一个操作系统,方可引导并使用。以下是几种虚拟化软件的对比:项目Virtual MachinePara VirtualizedOS Virtualized虚拟层面硬件虚拟机准虚拟化操作系统虚拟化虚拟原理虚拟硬件监控层模拟多个虚拟机运行并行虚拟化同时启动多个虚拟的子系统将操作系统划分为多个容器构成虚拟环境代表产品EMC VMware微软Virtual ServerXenSWsoft VirtuozzoSUN Container运行的系统内核实例底层物理系统运行一个内核,每个虚拟机各自运行运行一个标准内核底层系统使用一个修改过的内核,所有虚拟机运行经过修改的特别内核(如过CPU支持虚拟指令集,则虚拟机可使用标准内核所有虚拟环境一个内核,由底层系统提供性能低一般高虚拟机间隔离隔离隔离隔离物理节点和虚拟机间隔离隔离隔离隔离资源分配颗粒度粗粗非常细软件可管理性高一般非常高安装Redhat Enterprise Linux 自5.0版本(以下简称AS5)起,内核版本提升到了2.6.18系列,正式提供了对Xen虚拟化技术的支持。在以往的Linux版本中,安装Xen需要编译内核(Domain0/DomainU等)等,并进行有关配置,安装过程比较复杂。而在Xen上安装新的虚拟机操作系统(即创建新Domain)更是让新手无从下手。从AS5起,系统级集成让这一切有了明显改善,更加简单易用。首先用默认安装方式安好一个干净的AS5系统,推荐安装X图形环境,一般使用GNOME即可。AS5提供了基于图形的Xen管理工具,所以安装X图形环境会让使用Xen更加简便。当然,如果对Xen很熟悉,可以不安装或者安装但是不启动X图形环境,全部在命令行下边操作Xen。使用默认安装方式安装操作系统完毕后,从操作系统的光盘中寻找如下RPM并上传到服务器上,用于Xen的安装:光盘Server目录kernel-xenxen-libgnome-python2-gnomekeyring光盘VT目录gnome-applet-vm-0.1.2-1.el5.i386.rpmlibvirt-0.1.8-15.el5.i386.rpmlibvirt-devel-0.1.8-15.el5.i386.rpmlibvirt-python-0.1.8-15.el5.i386.rpmpython-virtinst-0.99.0-2.el5.noarch.rpmvirt-manager-0.2.6-7.el5.i386.rpmVirtualization-en-US-5.0.0-7.noarch.rpmVirtualization-zh-CN-5.0.0-7.noarch.rpmxen-3.0.3-25.el5.i386.rpmxen-devel-3.0.3-25.el5.i386.rpm在第五张安装光盘的VT目录中还有许多其他文件,主要是Xen图形管理工具的语言包文件,可以不用都安装上。上边列出的只是主要的RPM包,如果在安装过程中报告还需要其他的RPM,则从光盘中寻找并安装即可。首先安装Kernel的RPM包,使用rpm -ivh 命令安装。rootlocalhost # rpm -ivh kernel-xen-2.6.18-8.el5.i686.rpmwarning: kernel-xen-2.6.18-8.el5.i686.rpm: Header V3 DSA signature: NOKEY, key ID 37017186Preparing. # 100%1:kernel-xen # 100%rootlocalhost # rpm -ivh xen-libs-3.0.3-25.el5.i386.rpmwarning: xen-libs-3.0.3-25.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186Preparing. # 100%1:xen-libs # 100%rootlocalhost #接下来修改默认的Kernel启动顺序。编辑/etc/grub.conf,找到“default=1”这行,把数字改成“0” 。“0”表示启动第一个内核,即Xen内核。“1”表示启动第二个内核,即操作系统AS5原来的普通内核。如下图中红色的标记。rootlocalhost # vi /etc/grub.conf# grub.conf generated by anaconda# Note that you do not have to rerun grub after making changes to this file# NOTICE: You have a /boot partition. This means that# all kernel and initrd paths are relative to /boot/, eg.# root (hd0,0)# kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00# initrd /initrd-version.img#boot=/dev/hdadefault=1timeout=5splashimage=(hd0,0)/grub/splash.xpm.gzhiddenmenutitle Red Hat Enterprise Linux Server (2.6.18-8.el5xen)root (hd0,0)kernel /xen.gz-2.6.18-8.el5module /vmlinuz-2.6.18-8.el5xen ro root=/dev/VolGroup00/LogVol00 rhgb quietmodule /initrd-2.6.18-8.el5xen.imgtitle Red Hat Enterprise Linux Server (2.6.18-8.el5)root (hd0,0)kernel /vmlinuz-2.6.18-8.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quietinitrd /initrd-2.6.18-8.el5.img修改完毕后重新启动系统。重启系统完成后,再安装其他的RPM。rootlocalhost /xen# rpm -ivh *.rpmwarning: gnome-applet-vm-0.1.2-1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186Preparing. # 100%1:Virtualization-en-US # 9%2:gnome-python2-gnomekeyr# 18%3:Virtualization-zh-CN # 27%4:xen-devel # 36%5:libvirt # 45%6:xen # 55%7:python-virtinst # 64%8:libvirt-python # 73%9:virt-manager # 82%10:gnome-applet-vm # 91%11:libvirt-devel # 100%rootlocalhost /xen#安装完成。这里可以不重启系统。当且仅当更新内核的时候,才需要重启。而安装Xen的其他组件和管理工具是不需要重启的。这里也可以看出Linux系统架构设计的优势绝大部分情况下都不用重启系统。现在启动Xen自己的后台服务“Xend”并将其设置为随机自动启动。rootlocalhost /xen# /etc/init.d/xend startStarting xend: OK rootlocalhost /xen# chkconfig -add xendrootlocalhost /xen# chkconfig -level 345 xend onrootlocalhost /xen#配置Xen可以通过图形方式配置,也可以通过字符方式配置。字符方式使用命令xm,可以直接键入xm查看输出的命令参数信息。rootlocalhost /xen# xmUsage: xm argsControl, list, and manipulate Xen guest instances.Common xm commands:console Attach to s console.create Create a domain based on .destroy Terminate a domain immediately.dump-core Dump core for a specific domain.help Display this message.list List information about all/some domains.mem-set Set the current memory usage for a domain.migrate Migrate a domain to another machine.pause Pause execution of a domain.reboot Reboot a domain.restore Restore a domain from a saved state.save Save a domain state to restore later.shutdown Shutdown a domain.top Monitor a host and the domains in real time.unpause Unpause a paused domain.uptime Print uptime for a domain.vcpu-set Set the number of active VCPUs for allowed forthe domain.can either be the Domain Name or Id.For more help on xm see the xm(1) man page.For more help on xm create see the xmdomain.cfg(5) man page.For a complete list of subcommands run xm help.rootlocalhost /xen#通过执行vm命令输出的这里可以看到,xm命令行工具可执行的操作包括登录、启动、停止、暂停、备份、恢复、重启、迁移、内存设置、CPU设置等。具体的操作会在后边的章节中提到。AS5对Xen提供的集成中包含了图形工具,可以从菜单进入,如图。也可以在X图形环境下的命令行窗口中,用命令启动这些工具。现在执行virt-manager启动管理工具。首选提示要管理的Xen节点是什么。Virt-manager管理工具支持管理本机Xen,还可以管理其他服务器上的Xen程序。这样就提供了一种远程应用的场景,即运行Xen的服务器可以完全不启动X图形环境,而是在远程运行客户端管理Xen。本例中由于是本地安装的Xen并在服务器的本地终端上启动了X图形环境,因此选择Local Xen host即可。进入到virt-manager的界面,默认会显示一个ID为0的节点,又叫做Domain0,当前状态是Running。这个节点就是安装了AS5的物理服务器,通过管理界面可以看到物理节点拥有的CPU和内存数量。在管理界面的下方还有“New” 、“Details” 、“Open”等几个按钮,点击其中的New即可来安装新的domain了。使用图形界面在Xen上安装AS5作为新的domain运行在Xen内,几乎所有的Linux发行版都可以作为domain运行。为了演示的方便并易于理解,这里还使用AS5来作为新的domain运行了。创建并安装一个新的domain有两种方式:使用字符界面,使用图形界面。首先讲述使用图形界面来创建新的domain。这种操作方式是和EMC VMware、微软 Virtual Server等其他虚拟化软件最相近的,因此先介绍这种方式。安装向导首先打开virt-manager管理器,点击下方的New按钮。启动创建新domain的向导程序。点击Forward按钮继续。输入要创建的domain的名字,例如domain1,这个名字可以任意选择。半虚拟化与全虚拟化选择虚拟化的类型:Para-Virtualized VS Full Virtualized,即半虚拟化与全虚拟化。所谓半虚拟化的意思是,被虚拟的系统(又称为Guest OS,在Xen中就是用户的domain)必须是经过修改的特殊系统,使用特别的内核来运行。而如果想让被虚拟的domain使用标准内核来运行,则必须选择Full-Virtualized 。这是Xen和VMware等虚拟机技术的主要区别,即domain在半虚拟化场景下,必须安装修改过内核的特别造作系统。Full-Virtualized全虚拟化支持,可以允许domain使用一个标准的未经任何修改的系统来至今引导,甚至包括在Linux上去引导一个Windows系统起来。这个功能需要依赖于CPU指令集的支持,Intel CPU提供VT指令集,AMD CPU提供Pacific指令集支持。如果正在使用的服务器CPU不支持虚拟化指令集,则Full-Virtualized这个选项是灰色的,即不能启用。也就意味着,在当前节点上,只能在虚拟domain中运行经过修改的linux系统,而不能运行Windows系统了。接下来继续操作,创建domain向导提示选择安装源。制作安装源Xen中安装domain的方式比较特别,必须将安装文件放在NFS文件服务或HTTP文件服务器上来安装,安装过程可以是无人值守(调用kickstart)或者是人工安装。这点和VMware等有很大的区别。EMC VMware和微软Virtual Server都提供了图形工具用于虚拟机的安装,安装时候可以用ISO光盘镜像文件作为安装源来引导系统,也可以直接调用物理光驱来安装,为虚拟机安装操作系统就像给普通PC机安装系统一样简单。而Xen在domain中安装系统就很复杂,必须通过网络安装,安装源文件要调用NFS或者HTTP镜像来实现。应该说,在AS5上已经对有关domain安装已经做出了很大的改进,以往的Xen版本,都只能通过命令行配合复制文件的方式来安装,domain中只能安装Gentoo、Slackware等纯字符下配置的linux。对于domain安装支持,AS5已经做的很不错了。现在我们就来制作一个HTTP安装镜像。 首先将AS5的安装光盘的ISO文件复制到/root/目录下,例如如下的样子:rootlocalhost # lscd1.iso cd2.iso cd3.iso cd4.iso cd5.isorootlocalhost #将cd1.iso挂载到/mnt/cdrom目录,读取里边的内容:rootlocalhost # mkdir /mnt/cdromrootlocalhost # mount o loop cd1.iso /mnt/cdrom为了制作HTTP安装镜像,需要假设一个HTTP服务器。这里就不在详细讲述apache的配置了。假设apache已经安装好,并使用系统默认的/var/www/html作为web服务的根目录。复制cd1.iso中的三个目录image、isolinux、Server到/var/www/html目录下。复制过程中由于Server目录包含了数百MB的RPM文件,复制过程可能稍慢。rootlocalhost # cp r /mnt/cdrom/images /var/www/htmlrootlocalhost # cp r /mnt/cdrom/isolinux /var/www/htmlrootlocalhost # cp r /mnt/cdrom/Server /var/www/html 复制cd1.iso的内容完成后,现在更换到cd2.iso文件。rootlocalhost # umount /mnt/cdromrootlocalhost # mount o loop cd2.iso /mnt/cdrom挂载cd2.iso完成后,复制cd2.iso上的Server目录里边的文件到/var/www/html/Server目录。从第二张CD到第五张CD,只要复制Server目录下的所有文件即可。不用复制其他内容了。rootlocalhost # cp r /mnt/cdrom/Server/* /var/www/html/Server同理,将cd3.iso、cd4.iso、cd5.iso的Server目录中的文件都复制到/var/www/html/Server目录。复制完成后,安装镜像就做好了。请确认一下这个HTTP镜像可以被从其他位置访问,比如防火墙打开了响应端口,文件和目录具有正确的权限等。使用Kickstart无人值守脚本自动安装系统在刚才的选择安装位置的选项界面,还能看到一个kickstart URL的选项。这个选项是做什么用的呢?可以看到kickstart的配置选项框。Kickstart是Redhat Linux所提供的无人值守自动安装功能。众所周知,在安装Linux过程中要选择大量选项,例如时区、键盘、IP地址、安装软件包、分区等几十个选项,共几大类。为了加快安装过程,免去复杂的参数输入,可以预先写好一个kickstart脚本,脚本内定义了安装过程中每个选项预先输入的参数,即可进行无人值守自动安装。Kickstart脚本通常需要人工编辑。但是如果不熟悉kickstart的原理,如何制作kickstart脚本?AS5也提供了图形工具用于简单快速生成一个kickstart脚本。点击AS5的菜单,可以从“System Tools”下边找到相关的工具。打开Kickstart的图形编辑工具后,里边的选项看起来是不是非常熟悉?是的,这些选项都是安装Linux时候必须人工选择的那几十个选项。如果事先用Kickstart工具定义好了脚本,就可以无人值守安装了。本文中的重点是Xen,所以关于Kickstart不在过多讲述。为了简单起见,这里不使用kickstart,而是用传统方式人工安装。现在回到前文的输入安装源和Kickstart脚本的界面,在安装源的位置输入“00/” 这个地址是我们刚才建立好的安装镜像。配置Kickstart的位置留空,不填写任何参数。完成后点击“Forward”按钮进入下一步。配置domain资源参数接下来配置domain的资源参数。这些参数主要包括磁盘、内存、网络等。Xen对磁盘的调用有两种方式:常规物理分区与单个虚拟磁盘文件。如果选择了常规物理分区方式,则需要提供一个干净的分区或者设备给xen,如/dev/hdc2 。但是往往服务器上只有一块硬盘,或者没有空闲的分区,那么可以选择“Simple File”方式,即单个虚拟磁盘文件的方式。在这种方式下,一个domain的所有文件系统都将被存在在一个文件内,就好像一张光盘内的数十个目录被压缩到一个iso文件内,当读写的时候,xen会挂载这个虚拟磁盘读写里边的数据。在这个domain以外的底层系统看来,整个磁盘就是一个普通文件。本文中选择了使用单个虚拟磁盘文件的方式。手工输入“/xen/test”,即创建文件/xen/test来作为虚拟磁盘。为了让domain很好的运行AS5,我们将磁盘空间设置的大一些,例如8GB空间。注意这里还有一个“allocat entire virtual disk now”的选项,这个选项的作用是,在创建domain的时候,虽然domain内部是空白的,但是直接划分一个8GB的空文件留给domain。如果不选择这个选项,磁盘不会预先分配8GB的空间,而是随着空间使用的增加而逐渐增大,用满8GB则不在占用。选择预先分配的好处是domain工作的性能比较好,缺点也很明显,domain里边可能就几百MB的文件,但也占用了8GB空间。选择不预先分配的方式,好处就在于在domain内文件很少的时候,非常节约磁盘空间。本文中没有选择预先分配。接下来设置内存和CPU的分配。内存分配有两个选项:最大内存和初始化内存。本中的测试机配置不高,因此我们只分配最大160MB的内存给这个domain。并且设置“startup memory”为128MB。即刚启动时候只占用128MB内存,最大占用160MB内存。下边的CPU选项,选择只分配一个CPU给domain(本文中测试机只有1个CPU)。设置完成,检查以下刚才的参数,按“Finish”按键就可以开始安装了。安装程序开始检查参数是否正确,安装源能否被调用到,磁盘空间是否足够,内存是否足够,并启动domain的控制台。自动打开domain1的控制台,并进行linux系统的引导。从图中可以看出,现在打开的是domain console控制台。这个控制台和VMware、Virtual Server的控制台是非常相似的,也具有运行、暂停等功能。例如按下“Pause”按钮,会暂停domain的运行。现在进行对domain的安装。在domain中装系统,和物理机上操作一样。下边就是标准的redhat linux 安装过程,本文这里略过AS5图形模式具体安装过程。安装完成之后,选择重启的按钮。这是domain console的控制台窗口就会自动关闭,domain的安装也随之完成。启动domain刚才安装好系统的domain,默认不是启动的状态的,而是停止状态,现在需要手工去启动它。执行xm create来启动它。rootlocalhost # xm create test1 Using config file /etc/xen/test1. Going to boot Red Hat Enterprise Linux Server (2.6.18-8.el5xen) kernel: /vmlinuz-2.6.18-8.el5xen initrd: /initrd-2.6.18-8.el5xen.img Started domain test1 rootlocalhost #启动完成后,可以使用 xm list 命令看到。rootlocalhost # xm list Name ID Mem(MiB) VCPUs State Time(s) Domain-0 0 334 1 r- 114.9 test1 1 159 1 -b- 58.0 rootlocalhost #在图形界面上,使用Virtual Machine Manager 也能看出来。使用字符界面在Xen上安装AS5作为新的domain运行在很多条件下,可能服务器不具备启动X图形环境的能力,因此需要通过字符界面进行配置。为了演示方便,本文中使用putty作为ssh客户端连接到服务器,并在字符环境下安装新的domain。 字符界面向导程序在命令行下直接运行virt-install程序,即可启动字符界面下的创建domain向导。 向导会依次提示domain的各参数配置,按照上文的参数,输入即可创建domain。命令行安装在字符界面下直接输入virt-install -n test2 -r 128 -vcpus=1 -f /xen/test2 -s 8 -p -l 01 -nographics 创建并安装domain中的操作系统。参数意义如下:-n test2,名称-r 128,分配128MB内存给domain-vcpu=1,分配一个虚拟CPU-f /xen/test2,指定虚拟磁盘文件为/xen/test2-s 8,磁盘size是8GB-p,使用para半虚拟化模式(因为本测试机CPU不支持VT技术)-l 01,指定安装镜像的位置-nographics,不启动图形模式,只启动字符模式创建domain时候的参数,可根据配置需要灵活变更。准备好安装源后,即可开始安装domain。在命令行窗口中键入命令。Domain被创建,开始Linux的引导过程。此时可以用屏幕上看到linux正在从网络安装源启动。安装引导完成,进入字符模式下的安装程序,选择要使用的语言。为了获得更好的字符兼容性,这里选择英文。设置网络模式的支持,并配置IP地址。设置IP地址、子网掩码、网关、DNS服务器等参数。进入安装主程序。设置磁盘分区等参数。选择安装软件包。开始复制文件。复制文件完成后,重启domain。安装完成,domain自动重启中。至此,通过字符界面,完成了在domain中安装AS5的过程。启动domain在命令行下执行xm create,即可启动domain。例如执行如下命令,即可将刚才安装好系统的domain引导起来。rootlocalhost # xm create test1Using config file /etc/xen/test1.Going to boot Red Hat Enterprise Linux Server (2.6.18-8.el5xen)kernel: /vmlinuz-2.6.18-8.el5xeninitrd: /initrd-2.6.18-8.el5xen.imgStarted domain test1rootlocalhost #Domain配置与登录Domain配置文件登录到物理机上,列出/etc/xen目录下的内容,其中的test、test1、test2三个文件,就是我们刚才创建的三个domain的配置文件。rootlocalhost # ls -l /etc/xen/total 124drwxr-xr-x 2 root root 4096 Feb 8 2007 auto-rw-r-r- 1 root root 325 Aug 26 20:15 domain1-rw-r-r- 1 root root 326 Aug 24 01:46 dsf-rwxr-xr-x 1 root root 164 Feb 8 2007 qemu-ifupdrwxr-xr-x 2 root root 4096 Aug 23 23:49 scripts-rw-r-r- 1 root root 325 Aug 24 01:43 test-rw-r-r- 1 root root 324 Aug 24 02:21 test1-rw-r-r- 1 root root 294 Aug 30 22:38 test2-rw-r-r- 1 root root 4880 Feb 8 2007 xend-config.sxp-rw-r-r- 1 root root 1256 Feb 8 2007 xend-pci-permissive.sxp-rw-r-r- 1 root root 4129 Feb 8 2007 xend-pci-quirks.sxp-rw-r-r- 1 root root 546
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 1183-1:2025 EN Plastics - Methods for determining the density of non-cellular plastics - Part 1: Immersion method,liquid pycnometer method and titration method
- 2025年二级注册建筑师之法律法规经济与施工模考模拟试题(全优)
- 【凯里(黔东南)】2025年贵州凯里市事业单位第二轮公开招聘工作人员181人笔试历年典型考题及考点剖析附带答案详解
- 【通化】2025年上半年吉林通化市事业单位公开招聘应征入伍高校毕业生24人笔试历年典型考题及考点剖析附带答案详解
- 第五章食品感官分析第一节食品感官分析的定义与特性第二节食品
- 2025年安徽省应急管理厅直属事业单位公开招聘工作人员笔试历年典型考题及考点剖析附带答案详解
- 第六章分子的结构与性质无机化学多媒体电子教案74课件
- 冰冻可乐教学课件下载
- 优异英语教学课件
- 口腔癌围手术期管理
- 上市专项工作组管理办法
- 2024华师一附中自招考试数学试题
- 2022年莱芜技师学院工作人员招聘考试真题
- 从事工程咨询业务工作年限证明
- 《北京市住房租赁合同》示范文本(BF-2023-0603)
- 呼吸科危重症的诊断及治疗
- GB/T 11693-1994船用法兰焊接单面座板
- 提高手术室垃圾分类正确率PDCA
- GB 16806-1997消防联动控制设备通用技术条件
- 320T履带吊安装方案 9
- 清洁间歇导尿重点技术评分重点标准
评论
0/150
提交评论