CN111338650B - 一种便携式的Livecd中web应用部署方法 - Google Patents
一种便携式的Livecd中web应用部署方法 Download PDFInfo
- Publication number
- CN111338650B CN111338650B CN202010102643.2A CN202010102643A CN111338650B CN 111338650 B CN111338650 B CN 111338650B CN 202010102643 A CN202010102643 A CN 202010102643A CN 111338650 B CN111338650 B CN 111338650B
- Authority
- CN
- China
- Prior art keywords
- livecd
- web application
- disk
- service
- portable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000004519 manufacturing process Methods 0.000 claims abstract description 13
- 238000013515 script Methods 0.000 claims description 13
- 238000013500 data storage Methods 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 4
- 238000009434 installation Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000007711 solidification Methods 0.000 description 2
- 230000008023 solidification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000000754 repressing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
- G06F9/44584—Portable applications, i.e. making applications self-contained, e.g. U3 standard
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种便携式的Livecd中web应用部署方法,包括五个步骤,具体步骤为:步骤一,制作基本的Livecd镜像;步骤二,在Livecd中安装web应用的组件;步骤三,编写/etc/rc.local的文件内容;步骤四,重制Livecd的iso;步骤五,制作启动U盘。该方法达到了web应用的快速部署及高可用,用户可根据提示的ip地址进行web应用的访问,做到了U盘web应用的即插即用,极大提高了部署效率。
Description
技术领域
本发明涉及互联网部署技术领域,具体为一种便携式的Livecd中web应用部署方法。
背景技术
Web应用程序是一种可以通过Web访问的应用程序,Web应用部署时,需要将web应用的相关组件包括java运行环境、java程序、数据库、中间件等安装部署至服务器的操作系统上。
针对现有技术中的部署方式,仍然存在以下明显不足:
一方面,web应用部署完成后不能移动,只能在当前部署的服务器之上使用,如果其他现场需要使用该web应用,需要再次在服务器上进行web应用部署,过程繁琐。
另一方面,应用Livecd的web应用部署时,LiveCD自启动U盘是将操作系统预装到U盘里面,开机自启动,启动完成后会将U盘中预置的文件系统拷贝至内存中,启动后的操作系统完全运行在内存中,运行过程中的数据无法保留,通过LiveCD运行电脑后的所有操作及更改,并不能进行保存,而下一次启动LiveCD得到的依然是一个崭新的系统。
因此,针对以上问题,急需对现有技术进行改革。
发明内容
针对现有技术的不足,本发明提供了一种便携式的Livecd中web应用部署方法,提高了部署效率。
为实现以上目的,本发明通过以下技术方案予以实现:一种便携式的Livecd中web应用部署方法,包括五个步骤,具体步骤如下:
步骤一、制作基本的Livecd镜像,方案如下:
(a)制作环境安装livecd-creator,配置本地repo源;
(b)编写livecd-creator中用到的kickstart的ks.cfg文件;
(c)使用livecd-creator生成定制化的livecd的iso文件,命令如下:
livecd-creator–v–config ks.cfg–cache=/home/cache–tmpdir=/home/tmp–fslabel=CentOS-Livecd。
步骤二、在Livecd中安装web应用的组件,方案如下:
(a)挂载该Livecd的ISO镜像,解压Livecd的文件系统squashfs.img;
(b)拷贝必备组件的安装包或者配置好yum源;
(c)Chroot至解压的文件系统中,使用rpm或者yum安装web应用的必备组件。
步骤三、编写/etc/rc.local的文件内容,方案如下:
(a)启动Web应用各项组件的服务启动脚本,包括mysql、redis、后端java服务、前端nodejs服务的启动,启动完成后进行状态检查,确保各项服务运行正常。
(b)IP的自动获取:
获取方式一:若U盘所在服务器存在DHCP服务器,则启动网络服务使用DHCP自动分配IP;
获取方式二:在U盘指定目录位置手动写入IP的配置,U盘livecd启动后,挂载U盘去指定位置读取IP配置,写入内存OS中的网络配置文件中,重启网络服务,完成指定IP的配置。
(c)Mysql数据初始化:
当服务是第一次运行时,启动mysql服务,执行预制好的数据库初始化脚本,实现mysql数据库初始化,并将服务运行时的数据库存储文件备份至U盘的指定位置,实现MySQL数据的固化。
当服务非第一次运行时,检测U盘的指定位置是否有数据存储文件,如果有,就表明该应用非第一次运行,此时拷贝该数据存储文件至内存os中替换内存os中的mysql数据存储文件,实现mysql中原有数据的恢复,达到保存用户之前操作数据的目的。
步骤四、重制Livecd的iso,方案如下:
(a)退出chroot环境,重新压制squashfs.img文件;
(b)替换原有Livecd中的squashfs.img文件,使用genisoimage进行ISO的重新制作;
步骤五、制作启动U盘,方案如下:
使用刻录工具将ISO镜像刻录至U盘,完成便携式可移动的包含web应用的启动U盘制作。
与现有技术相比,本发明的有益效果是:
本发明公开了一种便携式的Livecd中web应用部署方法,该方法通过制作基本的Livecd镜像,解压Livecd镜像中的文件系统,并在Livecd的文件系统中利用chroot环境安装web应用的必备基本组件,将web应用部署于Livecd中,介质U盘插入服务器并从U盘引导启动后,在文件系统中实现web应用服务自启动、IP的自动配置、mysql数据库的数据库初始化及原有数据恢复的操作,达到web应用的快速部署及高可用,用户可根据提示的ip地址进行web应用的访问,做到了U盘web应用的即插即用,极大提高了部署效率。
附图说明
图1为本发明U盘文件结构图;
图2为本发明U盘启动流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先,本发明所涉及的名词解释如下:
LiveCD,即可以直接引导为可用Linux系统的CD,在本文中指可直接引导的Linux环境;
Web,Web应用程序是一种可以通过Web访问的应用程序,程序的最大好处是用户很容易访问应用程序,用户只需要有浏览器即可,不需要再安装其他软件;
Mysql,是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一;
Chroot,全拼是Change Root,也就是改变程序执行时所参考的根目录位置;
/etc/rc.local文件,是linux系统中的一个开机启动文件。当该文件具有可执行权限时,linux系统开机后会自动去执行该文件中的命令;
Kickstart,一种无人值守的安装方式。它的工作原理是在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个名为ks.cfg的文件;
Squashfs.img,是Livecd的文件系统压缩文件,解压可获取Livecd的整个文件系统。
请参阅图1-2,本发明提供一种技术方案:一种便携式的Livecd中web应用部署方法,包括五个步骤,具体步骤如下:
步骤一、制作基本的Livecd镜像:
首先制作环境安装livecd-creator,且配置本地repo源,将编写livecd-creator中用到的kickstart的ks.cfg文件使用livecd-creator生成定制化的livecd的iso文件,且在制作基本的Livecd镜像时,使用livecd-creator可ks配置文件生成定制化的Livecd,livecd-creator生成定制化的livecd的iso文件使用的命令如下:
livecd-creator–v–config ks.cfg–cache=/home/cache–tmpdir=/home/tmp–fslabel=CentOS-Livecd。
步骤二、在Livecd中安装web应用的组件:
在Livecd的文件系统中利用chroot环境安装web应用的必备基本组件,且基本组件包括:java的运行环境jdk、关系型数据库、缓存数据库、后端服务和前端服务,本文中使用mysql为关系型数据库、以redis为缓存数据库、以nodejs为前端服务,且以springboot为后端服务,其中,该后端服务内置有中间件jar包;
在安装Web应用组件时,首先挂载Livecd的ISO镜像,并解压Livecd的文件系统squashfs.img,然后拷贝必备组件的安装包或者配置好yum源,最后Chroot至解压的文件系统中,使用rpm或者yum安装web应用的必备组件,在Livecd中安装web应用组件时,解压在制作基本的Livecd镜像时生成的Livecd的iso文件中的文件系统squashfs.img,并以chroot的方式在该文件系统中安装web应用的必备组件,安装的Web应用组件用于在文件系统的/etc/rc.local中实现web应用服务自启动、IP的自动配置、mysql数据库的数据库初始化及原有数据恢复的操作,达到web应用的快速部署及高可用。
步骤三、编写/etc/rc.local的文件内容:
首先,启动Web应用各项组件中包括mysql、redis、后端java服务、前端nodejs服务的启动脚本,并且启动完成后进行状态检查,确保各项服务运行正常,然后获取IP,IP的获取有两种方式:
获取方式一:若U盘所在服务器存在DHCP服务器,则启动网络服务使用DHCP自动分配IP;
获取方式二:在U盘指定目录位置手动写入IP的配置,U盘livecd启动后,挂载U盘去指定位置读取IP配置,写入内存OS中的网络配置文件中,重启网络服务,完成指定IP的配置;
最后对Mysql数据进行初始化操作,当服务是第一次运行时,启动mysql服务,执行预制好的数据库初始化脚本,实现mysql数据库初始化,并将服务运行时的数据库存储文件备份至U盘的指定位置,实现MySQL数据的固化;当服务非第一次运行时,检测U盘的指定位置是否有数据存储文件,如果有数据存储文件,就表明该应用非第一次运行,此时拷贝该数据存储文件至内存os中替换内存os中的mysql数据存储文件,实现mysql中原有数据的恢复,达到保存用户之前操作数据的目的;
并且在编写/etc/rc.local的文件内容时,在Livecd的文件系统的/etc/rc.local脚本中预先写入Livecd的os启动后的执行脚本,脚本实现启动U盘的识别及可读写挂载和重启后的mysql数据库还原操作,并启动mysql的监控进程,监控进程监控mysql的数据库变动,并定时将mysql的数据备份至U盘的指定存储路径,U盘重启后通过/etc/rc.local脚本中的mysql数据还原操作实现mysql的数据持久化;
步骤四、重制Livecd的iso:
重制Livecd的iso时,首先将步骤二中对Livecd文件系统的操作保存压缩至新的squashfs.img中,替换原有Livecd中的文件系统,生成新的Livecd,然后需要退出chroot环境,重新压制squashfs.img文件,并且将原有Livecd中的squashfs.img文件替换为重新压制的squashfs.img文件,再使用genisoimage进行ISO的重新制作;具体命令如下:
genisoimage–v-cache-inodes–joliet-long–R–J–T–V“Centos-Livecd”–o/tmp/Centos-Livecd.iso–c isolinux/boot.cat–b isolinux/isolinux.bin–no-emul-boot–boot-load-size 4–boot-info-table–eltorito-alt-boot–bisolinux/efiboot.img–no-emul-boot。
步骤五、制作启动U盘:
使用刻录工具将ISO镜像刻录至U盘,完成便携式可移动的包含web应用的启动U盘制作,在制作启动U盘时,使用刻录工具将生成的Livecd的ISO刻录至U盘,并在U盘中划分mysql的数据备份空间,配置web应用的ip配置文件ip.cfg。
最终将部署好web应用的Livecd刻录至U盘后,将U盘插入服务器并选择从U盘启动,启动完成后即可完成web应用的部署,用户可直接访问Livecd中提示的访问地址进行web应用的登录访问操作,即插即用,极大的节省了web应用的部署时间。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种便携式的Livecd中web应用部署方法,其特征在于:所述的方法包括以下步骤:
步骤一,制作基本的Livecd镜像;
步骤二,在Livecd中安装web应用的组件;
步骤三,编写/etc/rc.local的文件内容,所述步骤包括:
启动Web应用各项组件的服务启动脚本;
IP的自动获取;
Mysql数据初始化;
所述编写/etc/rc.local的文件内容时,在U盘指定目录位置手动写入IP的配置,IP自动获取时,若U盘所在服务器存在DHCP服务器,则使用DHCP自动分配IP,在Mysql数据初始化中,当服务是第一次运行时,则启动mysql服务,执行预制好的数据库初始化脚本将服务运行时的数据库存储文件备份至U盘的指定位置,当服务非第一次运行时,将U盘中的数据存储文件替换原有内存os中的mysql数据存储文件;
步骤四,重制Livecd的iso;
步骤五,将ISO镜像刻录至U盘,制作启动U盘。
2.根据权利要求1所述的一种便携式的Livecd中web应用部署方法,其特征在于:所述制作基本的Livecd镜像时,使用livecd-creator可ks配置文件生成定制化的Livecd。
3.根据权利要求1所述的一种便携式的Livecd中web应用部署方法,其特征在于:在Livecd中安装web应用组件时,解压Livecd的iso文件中的文件系统squashfs.img,并以chroot的方式安装web应用的必备组件。
4.根据权利要求1或3所述的一种便携式的Livecd中web应用部署方法,其特征在于:所述Livecd中安装的web应用组件,包括:
java的运行环境jdk、关系型数据库、缓存数据库、后端服务和前端服务。
5.根据权利要求1所述的一种便携式的Livecd中web应用部署方法,其特征在于:所述重制Livecd的iso时,将Livecd文件系统的操作保存压缩至新的squashfs.img中,并替换原有Livecd中的文件系统,生成新的Livecd。
6.根据权利要求1所述的一种便携式的Livecd中web应用部署方法,其特征在于:所述制作启动U盘时,使用刻录工具将生成的Livecd的ISO刻录至U盘,并在U盘中划分mysql的数据备份空间,配置web应用的ip配置文件ip.cfg。
7.根据权利要求1所述的一种便携式的Livecd中web应用部署方法,其特征在于:所述编写/etc/rc.local的文件内容时,在Livecd的文件系统的/etc/rc.local脚本中预先写入Livecd的os启动后的执行脚本。
8.根据权利要求1所述的一种便携式的Livecd中web应用部署方法,其特征在于:IP自动获取时,若U盘所在服务器存在DHCP服务器,则使用DHCP自动分配IP。
9.根据权利要求1所述的一种便携式的Livecd中web应用部署方法,其特征在于:在Mysql数据初始化中,当服务是第一次运行时,则启动mysql服务,执行预制好的数据库初始化脚本;
当服务非第一次运行时,将U盘中的数据存储文件替换原有内存os中的mysql数据存储文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010102643.2A CN111338650B (zh) | 2020-02-19 | 2020-02-19 | 一种便携式的Livecd中web应用部署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010102643.2A CN111338650B (zh) | 2020-02-19 | 2020-02-19 | 一种便携式的Livecd中web应用部署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111338650A CN111338650A (zh) | 2020-06-26 |
CN111338650B true CN111338650B (zh) | 2022-07-22 |
Family
ID=71184416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010102643.2A Active CN111338650B (zh) | 2020-02-19 | 2020-02-19 | 一种便携式的Livecd中web应用部署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111338650B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114063912B (zh) * | 2021-10-31 | 2024-04-16 | 郑州云海信息技术有限公司 | 一种raid配置的方法、系统、设备及存储介质 |
CN116662079B (zh) * | 2023-07-31 | 2023-09-29 | 明阳时创(北京)科技有限公司 | 一种快速备份与复原ubuntu操作系统的方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927172A (zh) * | 2014-04-15 | 2014-07-16 | 浪潮电子信息产业股份有限公司 | 一种安全u盘的服务器检测工具实现方法 |
US20150067862A1 (en) * | 2013-08-30 | 2015-03-05 | Bank Of America Corporation | Malware analysis methods and systems |
CN109799996A (zh) * | 2017-11-16 | 2019-05-24 | 中标软件有限公司 | 一种安装程序自动安装多种安装源的方法 |
-
2020
- 2020-02-19 CN CN202010102643.2A patent/CN111338650B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150067862A1 (en) * | 2013-08-30 | 2015-03-05 | Bank Of America Corporation | Malware analysis methods and systems |
CN103927172A (zh) * | 2014-04-15 | 2014-07-16 | 浪潮电子信息产业股份有限公司 | 一种安全u盘的服务器检测工具实现方法 |
CN109799996A (zh) * | 2017-11-16 | 2019-05-24 | 中标软件有限公司 | 一种安装程序自动安装多种安装源的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111338650A (zh) | 2020-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107870769B (zh) | 操作系统的安装方法及装置 | |
US9471365B2 (en) | Techniques for performing virtual machine software upgrades using virtual disk swapping | |
US9081639B2 (en) | System and method for remotely re-imaging a computer system | |
US9804855B1 (en) | Modification of temporary file system for booting on target hardware | |
CN111338650B (zh) | 一种便携式的Livecd中web应用部署方法 | |
WO2014180290A1 (zh) | 云计算环境下的无状态化虚拟机及其应用 | |
CN103746833A (zh) | 基于pxe的raid自动配置方法和系统 | |
KR20100110652A (ko) | 메모리 장치 및 메모리 장치의 펌웨어 업데이트 방법 | |
CN110716845B (zh) | 一种Android系统的日志信息读取的方法 | |
CN102135893A (zh) | 将操作系统集成到bios芯片及启动服务器上操作系统的方法 | |
CN102141923B (zh) | 内存文件系统加载方法及装置 | |
CN107463467B (zh) | 一种可快速还原虚拟化平台的方法及系统 | |
US20150149756A1 (en) | System and method for setting up a bootable storage device using image | |
CN112764766B (zh) | 一种k8s集群与存储的对接方法、装置、设备及存储介质 | |
US7818557B2 (en) | Method for re-imaging a computer system | |
US20160062754A1 (en) | Coordinating Application Deployment with a Platform Tier | |
CN110275719B (zh) | 基于国产cpu和操作系统的云物理主机操作系统部署方法 | |
CN116049207A (zh) | 应用程序sql脚本处理方法、装置、处理器及电子设备 | |
US9619340B1 (en) | Disaster recovery on dissimilar hardware | |
CN113641394A (zh) | 一种多操作系统设备的差分升级方法 | |
CN115994003A (zh) | 操作系统中共享对象的处理方法及处理装置 | |
CN114510375A (zh) | 一种Flash芯片数据区域动态共享系统及方法 | |
CN111290765B (zh) | 一种固件快速烧录方法、系统及存储介质 | |
CN112732562A (zh) | 一种计算机的测试方法、系统及相关装置 | |
CN111813337A (zh) | 一种基于Kickstart安装系统的RAID自动配置方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |