2017-08-23
fuel 完全离线配置
完全离线适用于部署在内网,无Internet的环境当中,且需要升级fuel版本的情况。理论上,我的办法适用所有版本。
以下所有操作全部在fuel节点上。
 
1. 首先把离线repo做出来.
mkdir /var/www/nailgun/mirrors/
 
如果有已经存在的离线mirrors,则打包拷贝到/var/www/nailgun/mirrors/下
链接: https://pan.baidu.com/s/1kUEvOaz 密码: vdns
(无需关心离线包的新旧,一会儿都会更新。)
tar -cvf /mirrors.tar mirrors/ 打包已有的离线源。第一次搭建请无视此条。
tar -xvf mirrors.tar
 
将里面的内容,拷贝到/var/www/nailgun/mirrors/下。如果解压出来后带有mirrors目录,则合并。
修改源地址的配置文件
将官方repo地址,替换为阿里云的地址
vim /usr/share/fuel-mirror/ubuntu.yaml
 
ubuntu_baseurl: &ubuntu_baseurl http://archive.ubuntu.com/ubuntu
改为
ubuntu_baseurl: &ubuntu_baseurl http://mirrors.aliyun.com/ubuntu
 
运行命令 fuel-createmirror 开始制作本地源
fuel-createmirror
(这里就会更新所有mirrors目录下的安装包。)
到此离线reop制作完成,仅服务于fuel平台搭建完成后,部署openstack时,各节点的系统与openstack相关包。
 
2. 制作升级fuel用的离线repo。
把fuel升级的包和repodata通过可以上Internet的机器下载下来.放到/var/www/nailgun/fuel-update/下
url可以根据实际情况修改版本号,我使用的是9.0,升级到9.1.
分别将mos-mirrors-os.txt , mos-mirrors-security.txt , mos-mirrors-updates.txt . 三个文件中的链接所提供的Packages/ 和 repodata/ 使用 wget -nd -r -l1 --no-parent 命令下载到本地. 例如:
wget -nd -r -l1 --no-parent http://mirror.seed-us1.fuel-infra.org/mos-repos/centos/mos9.0-centos7/security/x86_64/repodata/
wget -nd -r -l1 --no-parent http://mirror.seed-us1.fuel-infra.org/mos-repos/centos/mos9.0-centos7/security/x86_64/Packages/
下载之前在fuel-update下创建对应的文件夹.进入文件夹执行以上命令。
如:
mkdir -p /var/www/nailgun/fuel-update/mos-os/x86_64/Packages/
mkdir -p /var/www/nailgun/fuel-update/mos-os/x86_64/repodata/
 
也可以使用其他能制作repo镜像的工具。只要能下载下来就可以。
 
3. 应用fuel升级离线repo。
编辑所有mos的repo文件: 将baseurl更改为实际的路径,例子如下:
[mos$fuelver-base]
name=mos$fuelver-base
baseurl=file:///var/www/nailgun/fuel-update/mos-os/x86_64/
enabled=
gpgcheck=
skip_if_unavailable=
4. 编辑/usr/share/fuel-mirror/ubuntu.yaml 根据实际情况更改mos repo地址
vim /usr/share/fuel-mirror/ubuntu.yaml
ubuntu_baseurl: &ubuntu_baseurl http://10.20.0.2:8080/mirrors/ubuntu
mos_baseurl: &mos_baseurl http://10.20.0.2:8080/mirrors/mos-repos/ubuntu/$mos_version
5. 升级fuel主节点和制作bootstrap
yum clean all
yum install python-cudet
 
5.1 修改制作bootstrap的配置文件
 
vim /etc/fuel-bootstrap-cli/fuel_bootstrap_cli.yaml
将里面的repo地址.全部改成离线的.
 
#可选:更改hashed_root_password
生成一个加密的密码。替换[your password]字段。

openssl passwd - -salt 'random-phrase-here' '[your password]'
hashed_root_password: "$1$random-p$aRoBt5ZfG8C20JAfBvU760"
(加密后的密码为passw0rd)
此步仅用来使bootstarp可直接登陆,无需通过fuel主节点登陆。对部署无影响,仅用来方便排错。
 
5.2 更改完之后拷贝一份,备用。

cp /etc/fuel-bootstrap-cli/fuel_bootstrap_cli.yaml /etc/fuel-bootstrap-cli/fuel_bootstrap_cli.yaml.bak
注意:在升级fuel的过程中,系统会自动的创建bootstrap,如果不更改这个文件,在不联网的情况下,会导致升级卡住,可能导致失败.
然而在升级过程中,fuel会再次覆盖重置此文件,所以我们要在升级过程中保证此文件在被覆盖后可以手动的修改回来,所以备份一份随时准备恢复回去. 恢复的时机就是再fuel升级完rabbitmq之后,就可以把备份的文件拷贝回去了.这样就不会出现更改完fuel_bootstrap_cli.yaml后,升级时又重置回去的问题了。
 
5.3 运行命令升级fuel到新版本。
update-prepare update master
[your password]

fuel 9.0完全离线配置+升级fule 9.1+bootstrap制作的更多相关文章

  1. 【转】:Oracle Linux6.9下安装Oracle 11.2.0.4.0及psu补丁升级

    为方便截图,本文操作都在vmware虚拟机上完成. 目录: 1.操作系统安装 2.数据库安装 3.PSU补丁升级卸载   part1 操作系统安装 Oracle (Enterprise) Linux ...

  2. 烂泥:zabbix3.0安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 这个月又快过完了,最近也比较忙,没时间写文章,今天挤点时间把zabbix3.0安装与配置 ...

  3. mysql 5.0.46安装配置

    http://os.chinaunix.net/a2008/0801/986/000000986346.shtml RPM包和源码包存放位置 /usr/local/src 源码包编译安装位置(pref ...

  4. win10+vs2015+opencv3.0 x86/x64配置(debug+release)

    最近做一些图像识别的项目,用到了opencv,opencv3.1没有x86版本,所以只能用opencv3.0来完成,下面介绍一下在window10下vs2015 配置opencv3.0的过程(x86和 ...

  5. CentOS7.0安装与配置Tomcat-7

    解决权限不够 #chmod a+x filename 安装说明 安装环境:CentOS-7.0.1406安装方式:源码安装 软件:apache-tomcat-7.0.29.tar.gz 下载地址:ht ...

  6. Tomcat6.0数据库连接池配置

    http://blog.163.com/magicc_love/blog/static/185853662201111101130969/ oracle驱动包Tomcat 6.0配置oracle数据库 ...

  7. cocos2d-x3.0 windows 环境配置

    cocos2d-x3.0 windows 环境配置 参考Oo泡泡糖oO的CSDN博文 :http://blog.csdn.net/u010296979/article/details/24273393 ...

  8. Xamarin For Visual Studio 3.0.54.0 完整离线破解版

    Xamarin For Visual Studio 3.0.54.0 完整离线破解版 Xamarin For Visual Studio就是原本的Xamarin For Android 以及 Xama ...

  9. uWSGI参考资料(1.0版本的配置选项列表)

    Reference: http://blog.csdn.net/kevin6216/article/details/15378617 uWSGI参考资料(1.0版本的配置选项列表) 下面的内容包含了大 ...

随机推荐

  1. java源码解析之String类(二)

    上一节主要介绍了String类的一些构造方法,主要分为四类 无参构造器:String(),创建一个空字符串"",区别于null字符串,""已经初始化,null并 ...

  2. 【微信小程序】记录

    学习新东西时,大体都遵循一样的道理,由总入深. 以下整理一下学习小程序的过程.虽然现在做的东西还有许多问题,比如说数据超过一定数量时循环效率低,或者是多次跳转页面后会变卡等问题.这些问题只解决了部分, ...

  3. redis安装与php安装redis模块

    一.安装redis 1.下载 wget https://github.com/antirez/redis/archive/2.8.23.tar.gz 2.解压缩 tar -zxvf 2.8.23.ta ...

  4. 为什么现在这么多人开始学习Python?

    近几年Python编程语言在国内引起不小的轰动,有超越JAVA之势,本来在美国这个编程语言就是最火的,应用的非常非常的广泛,而Python的整体语言难度来讲又比JAVA简单的很多.尤其在运维的应用中非 ...

  5. 字节跳动Java研发面试99题(含答案):JVM+Spring+MySQL+线程池+锁

    JVM的内存结构 根据 JVM 规范,JVM 内存共分为虚拟机栈.堆.方法区.程序计数器.本地方法栈五个部分. 1. Java虚拟机栈:线程私有:每个方法在执行的时候会创建一个栈帧,存储了局部变量表, ...

  6. Programming In Lua 第七章

    1, 2, 3, 第三点需要讲解下:for循环中,allwords函数是工厂函数,只调用一次.for循环的每次遍历,都会调用工厂函数返回的闭包函数.这样就能遍历一个文件的每一行的每一个单词. 4, 我 ...

  7. 不懂数据库索引的底层原理?那是因为你心里没点b树

    本文在个人技术博客不同步发布,详情可用力戳 亦可扫描屏幕右侧二维码关注个人公众号,公众号内有个人联系方式,等你来撩...   前几天下班回到家后正在处理一个白天没解决的bug,厕所突然传来对象的声音: ...

  8. oralce中的dual详解 转 http://blog.sina.com.cn/s/blog_a5a24bcb0100zeay.html

    dual是属于sys的只有一个X varchar2(1)列查询虚拟列不会产生逻辑IO========================================================== ...

  9. c#基础四

    写入一个XML文件 using System; using System.Collections.Generic; using System.Linq; using System.Text; usin ...

  10. POJ 3301:Texas Trip(计算几何+三分)

    http://poj.org/problem?id=3301 题意:在二维平面上有n个点,每个点有一个坐标,问需要的正方形最小面积是多少可以覆盖所有的点. 思路:从第二个样例可以看出,将正方形旋转45 ...