PPTV分布式装机系统课件.pptx

上传人(卖家):三亚风情 文档编号:3371664 上传时间:2022-08-24 格式:PPTX 页数:44 大小:387.37KB
下载 相关 举报
PPTV分布式装机系统课件.pptx_第1页
第1页 / 共44页
PPTV分布式装机系统课件.pptx_第2页
第2页 / 共44页
PPTV分布式装机系统课件.pptx_第3页
第3页 / 共44页
PPTV分布式装机系统课件.pptx_第4页
第4页 / 共44页
PPTV分布式装机系统课件.pptx_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、AgendavPPTV分布式装机系统介绍实际面临的问题解决方案系统部署系统组件介绍v系统实现Cobbler 配置文件同步Cobbler 自动部署v应用实例Cobbler Quick-StartCobbler 动态ks fileCobbler Tipsv二次开发实际面临的问题v服务器系统安装处于半手工状态,有些isp机房甚至需要现场通过光盘安装,耗费大量人力和时间v非标准化的系统安装,导致业务部署时遇到这样那样的奇怪问题v系统安装是瓶颈,由于以上问题导致业务需要快速部署时,无机器可用的现象实际面临的问题v众多机房,由于网络互通互联的问题,只在核心机房架设kickstart server完全无法解

2、决问题;如采用分布式架构,每个机房部署一台kickstart server;如何统一配置,安装模板以及安装源等v业务众多,每个业务对应静态安装模板,不便于管理v对于某些机房没有可以独立使用机器,在业务机如何复用的问题解决方案vCobbler 开源项目;基于kickstart,方便快速的网络安装操作系统vGit 分布式版本控制;静态配置文件的同步vDjango 框架;动态配置文件的同步vRsyncd;安装源同步v编译Cobbler依赖服务apache,python并打包;解决复用的问题v使用ControlTie自动部署 系统部署系统部署vBGP机房搭建一台Cobbler Master;该服务器管

3、理系统的配置,安装模板以及cobbler部署包;并同时作为该机房的cobbler server提供安装服务v所有核心机房部署Cobbler Secondary;作为本机房的安装服务器并提供安装源同步v其他机房的Cobbler,由ControlTie自动部署,可以复用业务机器系统组件系统组件vCobbler 主要服务,提供kickstart servervGit Repository 静态配置文件同步源 vGit git客户端,用于同步源上的配置文件vDjango调用cobbler API,同步动态配置文件vNginx发布Git repository&Django applicationvRsy

4、nc用于安装源同步vPython包含cobbler依赖模块的pythonvApache发布cobbler安装源系统实现vCobblerCobbler 介绍Cobbler modelsCobbler 动态KSv配置文件同步Git 静态配置文件同步Django 动态配置文件同步配置文件同步脚本vCobbler 自动部署Cobbler部署包ControlTie部署Cobblerv基于kickstart,linux系统网络快速安装v按不同对象组合动态生成kickstart template,通过ksmeta,snippets实现vKoan方便实现重装系统,安装虚拟机v统一管理dhcp,tftp,dns

5、这些网络安装依赖的服务v支持大部分主流linux发行版本,RHEL,Debian,Suse,Ubuntu,Fedora etc.Cobbler ModelsCobbler ModelsvDistro 定义安装源,kernel,initrdvProfile 定义KS file等信息,可以认为该对象是对应一个业务的templatevSystem 定义系统信息,比如hostname,ip地址等信息Cobbler 动态KSvKS file 使用snippet模块化,便于管理v通过cobbler models中不同参数,动态生成标准化的ks filevCheetah实现模板中变量替换,以及逻辑的运算;其

6、中的伪代码通过python编译器解析Git 静态配置文件同步v所谓静态配置文件是指每台cobbler server上基本一致的配置文件,比如kickstart files,snippets 等vCobbler Master上建立git repositoryvCobbler部署时通过git clone同步kickstarts,snippets,triggers 这些静态配置文件vCrontab定期从Master那里git pull回最新的配置Gitv目前流行的版本控制工具v分布式版本控制软件v对比集中式,分布式提供离线版本控制v为应用提供配置文件的版本控制&分布式同步方式配置文件部署Git cl

7、one生成生成kickstart,snippets,triggers这些配置文件,并和这些配置文件,并和git repository上的同步上的同步.test-x/var/lib/cobbler&cd/var/lib/cobbler/|echo-ne cobbler directory doesnt exist!nexit 0rm-rf kickstartsrm-rf snippetsrm-rf triggersgit clone http:/cobbler-git/kickstarts.gitgit clone http:/cobbler-git/snippets.gitgit clone

8、http:/cobbler-git/triggers.git.同步脚本使用git pull命令从git repository拉取配置更新echo-ne Kickstarts sync cd$CB_DATA_PATH/kickstartsgit pull&echo-ne OKn|echo-ne FAILEDnecho-ne Snippets sync cd$CB_DATA_PATH/snippetsgit pull&echo-ne OKn|echo-ne FAILEDnecho-ne Triggers sync cd$CB_DATA_PATH/triggersgit pull&echo-ne O

9、Kn|echo-ne FAILEDnDjango 动态配置文件同步v所谓动态配置文件是指由于不同cobbler配置,而产生的配置文件;比如每台cobbler上的profile对象,由所在cobbler server的distro对象决定v通过django调用cobbler apiv使用nginx发布django 应用,可通过http远程调用vCrontab定期调用,通过传入参数,获取配置文件列表并同步Profile对象查询接口.from cobbler.api import BootAPI#cobbler api#传入传入distro参数,返回参数,返回profile配置文件列表配置文件列表d

10、ef profile_list(request,distro):cb_api=BootAPI()profiles=cb_api.find_profile(return_list=True,distro=distro)data=for profile in profiles:profile_url=%s/%s.json%(settings.PROFILES_URL,profile.name)data.append(profile_url)return HttpResponse(|.join(data),text/html).同步脚本.DISTROS=$(cobbler distro list)#

11、取得此取得此cobbler的所有的所有distro对象对象for distro in$DISTROSdo PROFILES=$(curl http:/profile_list/$distro/2/dev/null|tr|)#访问访问Profile对象查询接口对象查询接口 for profile in$PROFILES do echo-ne Download$profile tt wget-q$profile&echo-ne OKn|echo-ne FAILEDn donedone.Cobbler 自动部署vCobbler 部署包vControlTie Task Cobbler 部署Cobble

12、r 配置Cobbler 安装源同步Cobbler 部署包v自动部署时包含cobbler源码以及依赖模块,服务的包vCobbler源码vApache2.2.21 编译时必须包含wsgi_module模块vPython2.7vCheetah,yaml,pykickstart 相应python模块CT-Cobbler 部署步骤v设置相应环境变量,系统设置(关闭iptables,selinux,yum设置)v通过yum安装所需服务的rpm包v下载 cobbler部署包,并在本机进行编译安装v同步配置文件v部署完成CT Cobbler 部署#install required rpmsyum instal

13、l createrepo dhcp curl-devel tftp-server yum-utils mkisofs git-y#fetch cobbler packagecd/tmpwget http:/packages/cobbler_proxy-2.2.0.tar.bz2-output-document=cobbler_proxy-2.2.0.tar.bz2#cobbler installationcd/home/toolstar jxvf/tmp/cobbler_proxy-2.2.0.tar.bz2cd/home/tools/package;rpm-ihv*.rpmcd/home/t

14、ools/cobbler-2.2.0;make;make install;grep tools/etc/ld.so.conf|sed-i a/home/tools/python/lib/etc/ld.so.conf&echo-ne CT Cobbler设置v对于cobbler参数进行设置 Cobbler server,next_servervdhcp 参数设置;v这些参数通过ControlTie传入CT Cobbler设置.COBBLER_SETTING=/etc/cobbler/settingsDHCP_SETTING=/etc/cobbler/dhcp.template#Cobbler s

15、ettingssed-i/server:/cserver:$option.server_ip$COBBLER_SETTINGsed-i/next_server:/cnext_server:$option.server_ip$COBBLER_SETTING#DHCP settingssed-i/subnet.*/csubnet$id netmask$mask$DHCP_SETTINGsed-i/option domain-name-servers/coption domain-name-servers 8.8.8.8;$DHCP_SETTINGsed-i/option subnet-mask/c

16、option subnet-mask$mask;$DHCP_SETTINGsed-i/range dynamic-bootp/crange dynamic-bootp$option.pool_range;$DHCP_SETTINGsed-i/option routers/coption routers$option.gateway;$DHCP_SETTING.CT 安装源同步v选择ISP和所需同步的系统版本CT 安装源同步if$option.isp=C1 then case$option.release in 5.4)echo-ne sync 5.4 from T1 n cobbler imp

17、ort-path=rsync:/RHEL5.4-name=RHEL_Server_5.4_PPLive-arch=x86_64 ;5.8)echo-ne sync 5.8 from T1 n cobbler import-path=rsync:/RHEL5.8-name=RHEL_Server_5.8_PPLive-arch=x86_64 ;esac应用实例vCobbler Quick-Start物理机安装物理机重装虚拟机安装vCobbler 动态ks file实例YUM configuration snippetvCobbler tipsMachine without OSvAccess i

18、drac interface with web browser J2EE installedvStart remote consolevReboot or startup machine via idracvPress“F12”to enter PXE mode when machine bootingvChoose 1 profile you want to apply on this machine in cobbler menuvStarting unattended installationvConfigure network interface on the machine when

19、 installation finishedCobbler MenuMachine with OS1.Use koan to reinstallyum install koan y2.Create a new system on cobbler servercobbler system add-name=JA03469D1201-profile=cob_5.4_base-ip-address=-gateway=-static=true-subnet=255.255.0.03.Execute koan on this machine to replace itself koan-server=-

20、system=JA03469D1201-replace-selfXen Virtual-machine installationCobbler server:1.首先在cmdb中通过IP确认宿主机资产编号,然后生成虚拟机资产编号,并在cobbler server生成system信息。以这台机器为例,宿主机为,资产编号JA03469D1201,由于该机器为D1,故该虚拟机资产编号为JA03469D1201-1,cobbler system name和资产编号一致。2.在cobbler server输入如下命令,添加systemcobbler system add-name=JA03469D120

21、1-1-profile=vs_5.4-ip-address=-gateway=-static=true subnet=255.255.255.03.安装koanYum install koan yXen Virtual-machine installation4.在宿主机上,执行命令安装虚拟机koan-server=-virt-system=JA03469D1201-1-virt-name=D1-virt-path=/dev/sdb-virt-bridge=xenbr0 -=nogfxvserver:cobbler servervvirt-system:system name you appe

22、nded beforevvirt-name:xen virtual server namevvirt-path:disk device vvirt-bridge:network bridge动态ks file 实例RHEL5.4 KS file-distro:RHEL5.4 profile:vs_5.4#SNIPPET yum_configuration$SNIPPET(pptv/yum_configuration)RHEL5.8 KS file-distro:RHEL5.8 profile:vs_5.8#SNIPPET yum_configuration$SNIPPET(pptv/yum_c

23、onfiguration)Snippet/yum_confiuration#set distro=$getVar(distro_name,)定义distro变量,该变量值为该机器所属distro的name#if 5.4 in$distro判断是否distro为5.4,为真则写入相应配置#Start of YUM Configuration#End of YUM Configurationcat /etc/yum.repos.d/PPLive.repo /etc/yum.repos.d/PPLive.repo /etc/yum.repos.d/PPLive.repo EOFRHEL 6.2 YU

24、M sourceEOF#End of 6.2 YUM Configuration#end if生成ks filev访问Cobbler Server的相应URL,可以验证生成的ks filevProfile:/cblr/svc/op/ks/profile/vSystem:/cblr/svc/op/ks/system/Cobbler tips dhcp设置subnet 10.x.0.0 netmask 255.255.0.0 pool allow members of pxe;allow members of etherboot;allow members of anaconda;option r

25、outers 10.x.1.1;option domain-name-servers 8.8.8.8;option subnet-mask 255.255.0.0;range dynamic-bootp 10.x.250.2 10.x.250.100;filename /pxelinux.0;default-lease-time 600;max-lease-time 600;next-server x.x.x.x;Base OS kernel options#kernel options that should be present in every cobbler installation.

26、#kernel options can also be applied at the distro/profile/system#level.kernel_options:ksdevice:bootif dhcpclass:Anaconda#对应dchp中的tag设置 lang:en_US text:sshd:vnc:vncpassword:cobblervnc noipv6:二次开发vCobbler APIvCobbler xmlrpc远程调用vPPTV 虚拟机自动安装应用Cobbler APIv通过Cobbler.api 模块可以操作cobbler里所有对象v研究cli.py这个命令接口模块,可以很快了解API的使用Cobbler xmlrpc远程调用v默认cobbler xmlrpc服务绑定在localhost:25151v通过修改utils.py模块,可以绑定在外部借口,远程进行cobbler对象的操作v也可通过方向代理工具,转发至该端口;对外开放该服务PPTV 虚拟机自动安装应用The End

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(PPTV分布式装机系统课件.pptx)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|