centos7安装配置openstack-kilo(详细部署实施版)

合集下载

openstack开发文档

openstack开发文档

openstack开发文档编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(openstack开发文档)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为openstack开发文档的全部内容。

OpenStack Kilo install2015年12月29日目录一、实验拓扑架构4二、基础系统的安装6三、安装完之后的处理103.1、本地yum的制作103。

2网络yun的准备113.3其它相关操作11四、建立集群134.1配置各节点134.2验证各网络15五、集群环境的基本配置175.1控制节点服务器175。

2其它节点175.3管理结点的基础包安装18六、Keystone身份认证服务206.1安装和配置206。

2校验keystone服务266.3创建openstack的用户脚本28七、Glnace镜像服务297。

1keystone的添加297。

2安装与配置307.3验证服务33八、块存储服务358.1keystone服务的添加358。

2服务的安装与配置37A、Controller结点的配置37B、存储结点的安装与配置398。

3验证服务42九、对象存储服务449。

1keystone服务的添加449。

2安装与配置44A、管理节点的安装与配置44B、存储节点的安装与配置45C、管理节点的操作509。

3验证服务50十、nova的服务5110。

1keystone服务的添加5110。

2安装与配置51A、管理节点操作51B、计算结点操作5310。

3验证服务54十一、neutron服务5611。

1keystone的添加5611。

2安装与配置56A、管理节点的安装配置56B、网络节点的配置(同管理节点合并)59C、计算结点的配置6211.3服务验证6411.4网络验证65十二、Horizon6612。

centos7服务器搭建7日杀(7daystodie)服务器,配置,存档,迁移方法(踩坑总结)

centos7服务器搭建7日杀(7daystodie)服务器,配置,存档,迁移方法(踩坑总结)

centos7服务器搭建7⽇杀(7daystodie)服务器,配置,存档,迁移⽅法(踩坑总结)最近搞了软路由, 不搞点事情不舒服. 正好周末和朋友玩7⽇杀, 搭个服务器玩玩.⽹络环境准备.1. 公⽹ip的机器or2. ⾃家⽹络, 找电信要了公⽹ip && 光猫使⽤桥接由路由拨号 && 路由器需要⽀持ddns && 路由器⽀持端⼝映射机器⼀个⼰喜欢的linux发⾏版(本记录使⽤centos7为例)安装过程:1. 安装steamlink所需要的lib包yum install glibc.i686 libstdc++.i686 -y2. 选⼀个steamlink的安装⽬录, 这⾥我装到 /home/ ,下载并解压cd /home/ && wget https:///client/installer/steamcmd_linux.tar.gztar xf steamcmd_linux.tar.gzcd steamcmd/3. 登录steamlink./steamcmd.sh登录账号前先设置7⽇杀安装⽬录, 这⾥我直接装在当前⽬录的 7d2d 新⽬录(/home/steamcmd/7d2d)force_install_dir ./7d2dlogin 你的steam账号输⼊密码和令牌登录成功4. 下载游戏app_update 2944205. 编辑服务器信息进⼊7⽇杀程序⽬录 cd 7d2d编辑服务器配置vim serverconfig.xml这⾥重点关注⼏个字段:ServerName 你服务器在公⽹显⽰的名字ServerPassword 连接密码ServerPort 服务器端⼝, 注意这个端⼝填的是tcp端⼝,假设是默认的26900. 但七⽇杀同时还需要⽤到这个端⼝号+3范围内的udp端⼝(我这udp监听的是26902), 配置⽂件这⾥只填tcp的端⼝号就好ServerVisibility 服务器可见性 2公开, 1朋友可见(但服务器没有朋友,所以和0效果⼀样), 0不列出TelnetEnabled telnet开关,强烈建议开着⽅便调试连通性GameWorld 这⾥填的值注意如果是随机地图就填 RWG , 如果不是随机地图⽽是系统预设好的,则使⽤系统预设地图名 ,名字就是7⽇杀安装⽬录/Data/Worlds ⾥的地图名WorldGenSeed 地图⽣成种⼦注意这⾥有坑如果是从外部迁移存档并且使⽤的是随机⽣成的地图, 这个种⼦必须和创建时⼀致. 因为他是通过这个种⼦和地图⼤⼩来计算出地图名的, 计算出的地图名的结果需要和你迁移过来的⽣成地图⼀致WorldGenSize 地图⼤⼩ 2048的倍数, 最⼤在16384以内,对应到游戏创建时的4km-14km 注意如果是从外部迁移存档并且使⽤的是随机⽣成的地图, 这个种⼦必须和创建时⼀致,原因同上(关于迁移, 下⾯会说)GameName 游戏名, 如果是迁移的, 也必须⼀致(关于迁移, 下⾯会说)其他配置根据⾃⼰喜好参考官⽅⽂档修改 https:///wiki/7_Days_to_Die_Dedicated_Server6. 启动服务器启动服务器, 因为 startserver.sh 会阻塞当前ssh窗⼝, 建议使⽤ nohup 和&结合, 新建⼀个脚本 startup.sh专门⽤来启动服务器,把⽇志输出到⽂件⾥.这样就可以随意关闭控制台了vim startup.sh#!/bin/shnohup ./startserver.sh -configfile=serverconfig.xml > stdout.log &保存退出, 设置运⾏权限chmod 777 startup.sh 启动服务器./startup.shtop ⼀下看看7DaysToDieServe 进程有没有开始在努⼒跑, 如果是那就正确了.tailf stdout.log 可以观察服务器⽇志输出.关闭服务器进程可执⾏pkill 7Days看服务器是否正确的监听了tcp和udp端⼝netstat -anop | grep 7Day如果端⼝没改过是默认的26900, 那么启动好后执⾏这个命令可以看到tcp端⼝监听,同时还会看到监听 26902 udp端⼝测试tcp端⼝连通性telnet 127.0.0.1 26900如果通,会看到下⾯消息Trying 127.0.0.1...Connected to 127.0.0.1.Escape character is '^]'.GameType:7DTD;GameMode:Survival;GameName:哎呀哟;ServerDescription:XXXXX 专⽤;ServerWebsiteURL:;IP:XXXXXXX;LevelName:Mahude Valley;GameHost.........测试udp端⼝连通性nc -vuz 127.0.0.1 26902如果通,会看到下⾯消息Ncat: Version 7.50 ( https:///ncat )Ncat: Connected to 127.0.0.1:26902.Ncat: UDP packet sent successfullyNcat: 1 bytes sent, 1 bytes received in 2.03 seconds.7. 外⽹处理如果是在外⽹ip的机器上, 直接设置防⽕墙和iptables开放26900-26903端⼝即可如果是⾃家⽹络, 需要在路由器上设置ddns, 路由器上设置端⼝映射外⽹的 tcp 26900, udp 26901-26903 映射到7⽇杀所在服上的相同端⼝, 这部分不同路由器操作不⼀样, 不记录步骤了. ⾃家⽹络不建议设置DMZ主机! 整台机全部端⼝暴露到公⽹会有安全风险.连通性测试, 和第6步后⾯⼀样, 只是把127.0.0.1 换成公⽹ip或是你设置的ddns域名8. 存档和⽬录结构win存档位置 C:\Users\⽤户名\AppData\Roaming\7DaysToDie\Saves\[GameWrold]\[GameName]win随机⽣成地图位置 C:\Users\⽤户名\AppData\Roaming\7DaysToDie\GeneratedWorlds\[GameWrold]linux存档位置 /root/.local/share/7DaysToDie/Saves/[GameWrold]/[GameName]linux随机⽣成地图位置 /root/.local/share/7DaysToDie/GeneratedWorlds/[GameWrold]注意 GameWrold 如果是预设地图, 则是游戏⽬录⾥Data/Worlds 对应的名字⽐如PREGEN02,PREGEN6k , 如果是随机⽣成地图则是⽣成的地图名字, ⽐如Voluya Territory, Mahude Valley 这种名字9. 迁移:如果是预设地图, 直接迁移 save\[GameWrold]\[GameName] 到服务器的 save\[GameWrold]\[GameName] , 然后编辑服务器serverconfig.xml的 GameWorld和GameName和⽬录对应即可,如果是随机⽣成地图, 需要迁移GeneratedWorlds\[GameWrold] 和 save\[GameWrold]\[GameName] 到服务器对应⽬录, 然后编辑服务器serverconfig.xml的 GameWorld 改为RWG, GameName填⽬录对应的GameName, WorldGenSeed和WorldGenSize需要和创建时⼀致. 改完后启动时注意观察⽇志输出, 如果看到 GamePref.GameWorld 这⾏和你迁移的GameWorld名字⼀样说明就对了, 说明服务器计算出的地图名和你迁移的GameWorld名称⼀致,就会使⽤你已经创建好的随机⽣成地图和存档, 这⾥有点坑不知道为什么这么设计..。

Linux学习之CentOS(一)----在VMware虚拟机中安装CentOS7(图文教程)

Linux学习之CentOS(一)----在VMware虚拟机中安装CentOS7(图文教程)

Linux学习之CentOS(⼀)----在VMware虚拟机中安装CentOS7(图⽂教程)⼀、 VMware简介:VMware是⼀个虚拟PC的软件,可以在现有的操纵系统上虚拟出⼀个新的硬件环境,相当于模拟出⼀台新的PC,以此来实现在⼀台机器上真正同时运⾏两个独⽴的操作系统。

VMware的主要特点:1. 不需要区分或重新开机就能在同⼀台PC上使⽤两种以上的操作系统;2. 本机系统可以与虚拟机系统⽹络通信;3. 可以设定并且随时修改虚拟机操作系统的硬件环境。

⼆、CentOS简介:CentOS(Community ENTerprise Operating System)是Linux发⾏版之⼀,它是来⾃于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译⽽成。

由于出⾃同样的源代码,因此有些要求⾼度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使⽤。

两者的不同,在于CentOS并不包含封闭源代码软件。

三、CentOS的安装:虚拟机版本:VMware Workstation_10.0.3Linux系统版本:CentOS_7(64位)物理机版本:Win 7旗舰版注:本⼈为初学者,在虚拟机上安装CentOS,⽅便同时在Win7上操作以及和物理机进⾏通信;等操作熟练之后可以装双系统。

1、虚拟机的创建:打开安装好的VMware (如果⼤家安装的VMware是英⽂版的也没关系,对号⼊座即可),选择“⽂件--->新建虚拟机”,如图:这⾥选择“⾃定义”,下⼀步:选择默认,下⼀步:选择“第三项“稍后安装操作系统”,以后安装,⽅便进⾏配置。

下⼀步:(注:上图中,第⼀项是⽤光盘安装,第⼆项是⽤硬盘⾥的ISO镜像安装)上图指的是,打算在虚拟机中模拟⼀个怎样的操作系统,这⾥选择Linux,Version⾥选择CentOS 64位,下⼀步:输⼊虚拟机名称(可以随便起),选择镜像⽂件存放的路径。

CentOS 7 安装分区详解

CentOS 7 安装分区详解

CentOS 7 安装分区详解前言对于新手来说,CentOS 7 的安装可能会有些棘手。

其中一个比较重要的步骤就是分区。

在这篇文章中,我们将详细讲解CentOS 7 的分区安装过程,帮助您更好地完成安装。

准备工作在安装CentOS 7 之前,您需要准备好以下内容:– CentOS 7 安装光盘或USB 启动盘–一台能够运行CentOS 7 的计算机–一个可用的硬盘或分区分区方案在CentOS 7 安装过程中,您需要选择一个分区方案。

通常情况下,有以下几种选择:–自动分区–手动分区– LVM 分区自动分区自动分区是CentOS 7 安装程序提供的默认选项。

如果您选择自动分区,CentOS 7 将会自动为您创建一个根分区和一个交换分区。

这个选项适合大多数用户,特别是那些没有太多经验的新手。

手动分区如果您需要更精细地控制分区,可以选择手动分区。

手动分区允许您自定义分区大小和数量。

您可以创建根分区、/boot 分区、/home 分区、/tmp 分区和/var 分区等。

LVM 分区LVM 分区是一种比较灵活的分区方案。

它允许您在一个物理卷上创建多个逻辑卷。

这样一来,您就可以根据需要动态地调整卷的大小和数量。

分区策略无论您选择哪种分区方案,都需要考虑一些分区策略。

以下是一些值得注意的方面:–根分区应该至少有20 GB 的空间– /boot 分区应该至少有500 MB 的空间– /home 分区用于存储用户数据,应该根据需要分配足够的空间– /tmp 分区用于存储临时文件,应该根据需要分配足够的空间– /var 分区用于存储系统日志和其他可变数据,应该根据需要分配足够的空间–交换分区用于虚拟内存,应该根据需要分配足够的空间。

通常情况下,交换分区的大小应该是系统内存的两倍。

分区步骤无论您选择哪种分区方案和策略,下面是CentOS 7 分区安装的基本步骤:1. 启动CentOS 7 安装程序2. 选择语言和时区3. 选择安装源和软件包4. 选择分区方案5. 选择分区策略6. 完成安装小结CentOS 7 的分区安装可能有些棘手,但只要您按照上述步骤进行,就应该能够成功完成。

CentOS7Docker防火墙的简单配置教程

CentOS7Docker防火墙的简单配置教程

CentOS7Docker防火墙的简单配置教程推荐文章防火墙的工作原理是怎样的热度:硬件防火墙与软件防火墙的区别在哪里各有什么优势热度:centos7中firewall防火墙命令怎么用热度:RHEL7中防火墙的配置和使用方法是什么热度:如何突破各种防火墙的防护热度:防火墙借由监测所有的封包并找出不符规则的内容,可以防范电脑蠕虫或是木马程序的快速蔓延。

这篇文章主要给大家介绍了关于CentOS7 Docker防火墙的简单配置方法,以及总结了docker在centos7下的一些坑,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。

CentOS7 Docker防火墙的简单配置禁用 firewalld 服务systemctl disable firewalldsystemctl stop firewalld安装 iptables 防火墙服务yum install iptables-services创建 iptables 配置脚本cat >> /usr/local/bin/fired.sh <<'EOF'#!/bin/bashiptables -Fiptables -Xiptables -Ziptables -P INPUT DROPiptables -P OUTPUT ACCEPTiptables -P FORWARD ACCEPTiptables -A INPUT -i lo -j ACCEPTiptables -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPTiptables -A INPUT -i eth0 -p icmp --icmp-type 8 -j ACCEPT #iptables -A INPUT -p tcp --dport 80 -i eth0 -m state -state NEW -m recent -update -seconds 60 -hitcount 50 -j DROP #iptables -A OUTPUT -o eth0 -m owner -uid-owner vivek -p tcp --dport 80 -m state -state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 1:1023 --dport 1:1023 --syn -j DROPiptables -A INPUT -p tcp -i eth0 --dport 22 --sport 1024:65534 -j ACCEPTiptables -A INPUT -p tcp --dport 80 --sport 1024:65534 -j ACCEPTiptables -A INPUT -p tcp --dport 2376 --sport 1024:65534 -j ACCEPTiptables -A INPUT -p tcp --dport 3306 --sport 1024:65534 -j ACCEPT# iptables -A POSTROUTING -t nat -s 10.8.0.0/24 -o eth0 -j MASQUERADE# iptables -A FORWARD -i tun+ -j ACCEPT# iptables -A INPUT -s 10.8.0.0/24 -j ACCEPT# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT# iptables -A INPUT -p TCP -i eth0 --dport 10173 --sport 1024:65534 -j ACCEPT# iptables -A INPUT -p UDP -i eth0 --dport 10173 --sport 1024:65534 -j ACCEPTEOFchmod +x /usr/local/bin/fired.sh加入开机启动项cat >> /etc/rc.d/rc.local <# Firewall & Docker/usr/bin/systemctl start iptables.service/usr/local/bin/fired.sh/usr/bin/systemctl start dockerEOFchmod +x /etc/rc.d/rc.local禁用相关服务自启动# 注: Docker 启动时会自动加入一些systemctl disable iptables.servicesystemctl disable dockerdocker在centos7下的一些坑在centos的docker上安装mysql提示chown mod /var/lib/mysql permission denied,通过下面的方法1解决。

虚拟机安装CentOS7

虚拟机安装CentOS7

虚拟机安装CentOS7安装CentOS(Community Enterprise Operating System,中⽂意思是社区企业操作系统)是Linux发⾏版之⼀,它是来⾃于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译⽽成。

由于出⾃同样的源代码,因此有些要求⾼度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使⽤。

两者的不同,在于CentOS完全开源。

由于CentOS作为服务器系统应⽤⽐较⼴泛,所以此处采⽤虚拟机+CentOS系统来模拟服务器环境1.安装VMware2.安装CentOS7a.打开VMware,新建虚拟机b.选择典型模式c.选择稍后安装操作系统d.版本选择CentOS64位e.填写虚拟机名称和存储的位置d.选择拆分成多个⽂件,默认选项和参数就好e.点击⾃定义硬件f.选择新CD/DVD项,在连接选项选择使⽤ISO镜像⽂件,选择CentOS系统镜像⽂件(如果没有镜像⽂件就去官⽹下⼀个),然后关闭点击完成g.此时在左侧“我的计算机”栏列表会添加⼀个刚新增的虚拟机,选择开启此虚拟机h.选择Install CentOS 7选项(⽤键盘上下进⾏选择,⿏标没⽤)i.回车键进⾏确认,等屏幕出现Press .....提⽰然后再按⼀次回车键继续,⼀直等出现图形界⾯j.选择语⾔中⽂-简体中⽂,然后确认k.点击软件选择,进⾏基本环境的选择此时有两种选择,最⼩安装或者GNOME桌⾯安装,最⼩安装表⽰安装完成后,只能⽤命令⾏进⾏操作,类似以前的DOS系统;GNOME桌⾯表⽰安装完成后,有⼀个图形界⾯,我们可以⽤⿏标进⾏操作,此处看个⼈需求,不过⼀般正式环境应该都是最⼩安装,因为占⽤空间⽐较⼩,性能⽐较好。

另外最⼩安装⽐GNOME桌⾯少了某些功能,⽐如不会⾃带安装:vim、wget功能,需要⾃⼰通过yum⼿动进⾏安装,此处我选⽤最⼩安装,点击完成l.点击选择安装位置这⾥暂时不太清楚到底有什么⽤,所以默认就好,然后点击完成就⾏m.开始安装按钮亮起,可以进⾏安装了n.设置root密码、创建⽤户hadoop,设置密码时候可能会提⽰弱密码,可以不⽤管,直接点完成就好,此处root密码设置为1,创建⽤户hadoop密码也为1o.等待安装完成,然后重新启动系统,那么Linux已经安装完成问题:linux虚拟机开机⼀直⿊屏解决⽅案:windows系统下,管理员⽅式打开cmd窗⼝,输⼊netsh winsock reset然后重启电脑⽹络设置虚拟机的虚拟⽹络设置,虚拟⽹络⼤致常⽤的有两种模式桥接模式:物理⽹卡和虚拟⽹卡在拓扑图上处于同等地位,那么物理⽹卡和虚拟⽹卡就相当于处于同⼀个⽹段,虚拟交换机就相当于⼀台现实⽹络中的交换机,所以两个⽹卡的IP地址也要设置为同⼀⽹段NAT模式:NAT模式中,就是让虚拟机借助NAT(⽹络地址转换)功能,通过宿主机器所在的⽹络来访问公⽹。

openstack的安装和部署

openstack的安装和部署

openstack的安装和部署1.什么是云计算1:什么是云计算?云计算是通过虚拟化技术去实现的,它是⼀种按量付费的模式!2:为什么要⽤云计算?⼩公司:1年,20⼈+,500w,招⼀个运维,15k,(10台*1.5w,托管IDC机房,8k/年,带宽 100M,5个公⽹ip, 10k/⽉), 买10台云主机,600*10=6000⼤公司:举⾏活动,加集群,把闲置时间出租,超卖(kvm)16G,kvm,64G(ksm),⾦牌⽤户(200w+/⽉)3:云计算有哪些功能?虚拟机的管理平台(计费)kvm:1000宿主机(agent),虚拟出2w虚拟机,虚拟机的详细情况:硬件资源,ip情况统计?虚拟机管理平台:每台虚拟机的管理,都⽤数据库来统计4:云计算的服务类型IAAS 基础设施即服务 ECS云主机⾃⼰部署环境,⾃⼰管理代码和数据infrastructure as an servicePAAS(docker) 平台即服务提供软件的运⾏环境,java ,python,go, c#,nodejs ⾃⼰管理代码和数据platfrom as an serviceSAAS 软件即服务企业邮箱,cdn,rdssoftware as an serviceopenstack实现的是云计算IAAS,开源的云计算平台,apache 2.0,阿⾥云(飞天云平台)2.openstack (soa架构)云平台(keystone认证服务,glance镜像服务,nova计算服务,neutron⽹络服务,cinder存储服务,horizon web界⾯)每个服务:数据库,消息队列,memcached缓存,时间同步⾸页/index.html秒杀/miaosha/index.html会员:/plus/index.html登录:/login/indexnginx+php +mysql(500张表)SOA(拆业务,把每⼀个功能都拆成⼀个独⽴的web服务,每⼀个独⽴的web服务,⾄少拥有⼀个集群)微服务架构:亿级⽤户开源的微服框架阿⾥开源的dubbospring boot⾃动化代码上线 Jenkins + gitlab ci⾃动化代码质量检查 sonarqube官⽹:openstack 版本A-Z 开头3.虚拟机规划controller:内存3G,cpu开启虚拟化,ip:10.0.0.11compute01:内存1G,cpu开启虚拟化(必开),ip:10.0.0.31host解析,[root@controller ~]# vim /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain610.0.0.11 controller10.0.0.31 computer1[root@controller ~]# scp -rp /etc/hosts 10.0.0.31 /etc/hosts4.配置yum源1.挂载光盘[root@computer1 ~]# mount /dev/cdrom /mntmount: /dev/sr0 is write-protected, mounting read-only[root@controller ~]# mount /dev/cdrom /mntmount: /dev/sr0 is write-protected, mounting read-only#查看(如果有内容代表挂载成功)[root@computer1 ~]# ll /mnttotal 686-rw-rw-r-- 1 root root 14 Nov 26 2018 CentOS_BuildTagdrwxr-xr-x 3 root root 2048 Nov 26 2018 EFI-rw-rw-r-- 1 root root 227 Aug 30 2017 EULA-rw-rw-r-- 1 root root 18009 Dec 10 2015 GPLdrwxr-xr-x 3 root root 2048 Nov 26 2018 imagesdrwxr-xr-x 2 root root 2048 Nov 26 2018 isolinuxdrwxr-xr-x 2 root root 2048 Nov 26 2018 LiveOSdrwxrwxr-x 2 root root 663552 Nov 26 2018 Packagesdrwxrwxr-x 2 root root 4096 Nov 26 2018 repodata-rw-rw-r-- 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7-rw-rw-r-- 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7-r--r--r-- 1 root root 2883 Nov 26 2018 TRANS.TBL[root@controller ~]# scp -rp openstack_rpm.tar.gz 10.0.0.31:/optrz 上传openstack_rpm.tar.gz到/opt,并解压⽣成repo配置⽂件root@controller opt]# vim/etc/yum.repos.d/local.repo[local]name=localbaseurl=file:///mntgpgcheck=0[openstack]name=openstackbaseurl=file:///opt/repogpgcheck=0root@controller opt]#echo 'mount /dev/cdrom /mnt' >>/etc/rc.localroot@controller opt]# chmod +x /etc/rc.d/rc.local[root@controller opt]# scp -rp /etc/yum.repos.d/local.repo 10.0.0.31:/etc/yum.repos.d/local.repo [root@computer1 opt]# vim /etc/yum.repos.d/local.repo[root@computer1 opt]# echo 'mount /dev/cdrom /mnt' >>/etc/rc.local[root@computer1 opt]# chmod +x /etc/rc.d/rc.local#注意:两台都要配2.安装基础服务在所有节点上执⾏:a:时间同步[root@controller opt]# yum install -y chrony[root@computer1 opt]# yum install -y chrony#编辑控制节点配置⽂件[root@controller opt]# vim /etc/chrony.conf1.将 server iburst 改成server iburst另三⾏删掉2.将 #allow 192.168.0.0/1改成allow 10.0.0.0/24#重启服务[root@controller opt]# vim /etc/chrony.confsystemctl restart chronyd#编辑计算节点[root@computer1 opt]# vim /etc/chrony.conf将 server iburst 改成server 10.0.0.11 iburst另三⾏删掉[root@computer1 opt]# systemctl restart chronyd5.安装openstack客户端和openstack-selinux1.在所有节点上执⾏[root@control ~]# yum install python-openstackclient openstack-selinux -y[root@computer1 ~]# yum install python-openstackclient openstack-selinux -y查看官⽅⽂档6.安装数据库以及安全初始化2.仅控制节点执⾏:[root@control ~]# yum install mariadb mariadb-server python2-PyMySQL -y在官⽅⽂档上有https:///mitaka/zh_CN/install-guide-obs/environment-sql-database.html3.创建并编辑 /etc/f.d/f[root@control ~]# cat /etc/f.d/f[mysqld]bind-address = 10.0.0.11 # 值为控制节点的管理⽹络IP地址以使得其它节点可以通过管理⽹络访问数据库default-storage-engine = innodb #默认存储引擎innodb_file_per_table #为每个表独⽴表空间⽂件max_connections = 4096 #最⼤连接数collation-server = utf8_general_ci # 默认字符集character-set-server = utf84.启动mariadb 并加⼊开机⾃启[root@control ~]# systemctl start mariadb[root@control ~]# systemctl enable mariadb5. 为了保证数据库服务的安全性,运⾏[root@control ~]# mysql_secure_installation ⼀定要执⾏要不然后⾯时间同步会有坑脚本。

Centos7网络配置

Centos7网络配置
ens33:表示热插拔插槽上的以太网设备,插槽编号为33
wlp11s0:表示PCI接口的无线以太网设备,PCI总线地址为11插槽编号0
CentOS的网络配置方法
CentOS的网络配置有临时性的配置和持久的配置。 临时的配置是使用ifconfig命令进行配置,立即生 效,但重启后就没了。(在CentoS7中是用的 iproute2的命令工具)
被选中的连接。 Home: 用在家庭网络,只允许被选中的连接。 Internal:适用内部局域网。 Trusted:允许所有的网络连接
区域管理
firewall-cmd --get-zone-of-interface=网卡名 //查看指定接 口所属的区域
为指定区域添加网卡(一个网卡只能属于一个区域) firewall-cmd --zone=work --add-interface=网卡名
重启网卡:nmcli conn down ens33 && nmcli conn up ifname ens33
iproute2其他的命令工具 ip neigh //查看arp表
ip neigh add IP地址 lladdr MAC地址 dev 网卡名 //添加一条静态arp项
ip neigh del IP地址 dev 网卡名 //删除一条静态arp项
ip link show //显示出所有可用的网络接口列表
ip link set down 网卡名 //停用某个网络接口 ip link set up 网卡名 //激活某个网络接口
ip addr或ip addr show //查看所有网络接口的IP地址 ip addr show dev 网卡名 //查看指定网卡IP地址
firewall-cmd --zone=work --remove-service=tftp //移除允许访问的 服务
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

######################################安装service之前#####################1.安装openstack-selinux和SQL数据库RHEL and CentOS enable SELinux by default. Install the openstack-selinux package toautomatically manage security policies for OpenStack services:yum install openstack-selinuxyum install mariadb mariadb-server MySQL-python2.配置mariadb:Create and edit the /etc/my.cnf.d/mariadb_openstack.cnf file[mysqld]bind-address = 192.168.142.13 [mysqld]default-storage-engine = innodbinnodb_file_per_tablecollation-server = utf8_general_ciinit-connect = 'SET NAMES utf8'character-set-server = utf83.重启服务systemctl enable mariadb.servicesystemctl start mariadb.service4.加强mariadb数据库安全,这是root账户密码 mysql_secure_installation5.安装信息队列 yum install rabbitmq-server6.启动和配置rabbitmq服务 systemctl enable rabbitmq-server.service systemctl start rabbitmq-server.service7.在MQ中添加openstack 用户(密码:openstack) rabbitmqctl add_user openstack openstack 为openstack用户配置read,write权限 rabbitmqctl set_permissions openstack ".*" ".*" ".*"###############################################################################################安装配置keystone############################1.安装keystone之前需要新建一个keystone数据库,同时设置初始administrator tokenmysql -u root -p创建database:CREATE DATABASE keystone;设置 keystone database的访问权限:GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'KEYSTONE_DBPASS';GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'KEYSTONE_DBPASS';手动生成administrator token:openssl rand -hex 107f5f1f6b6ab54bad78f62.安装keystone相关的packages,kilo版本不在使用eventlet而是采用mod_wsgi来提供keystone服务.因此在kilo中,keystone服务是不会启动的 yum install openstack-keystone httpd mod_wsgi python-openstackclient memcached python-memcached3.启动Memcached服务 systemctl enable memcached.service systemctl start memcached.service4.配置 /etc/keystone/keystone.conf 文件[DEFAULT]admin_token = 7f5f1f6b6ab54bad78f6verbose = Truedebug = True[database]connection = mysql://keystone:KEYSTONE_DBPASS@ceph3/keystone[memcache]servers = localhost:11211[token]provider = keystone.token.providers.uuid.Providerdriver = keystone.token.persistence.backends.memcache.Token[revoke]driver = keystone.contrib.revoke.backends.sql.Revoke设置命令:sed '/#admin_token = ADMIN/a admin_token = 7f5f1f6b6ab54bad78f6' -i /etc/keystone/keystone.confsed '/#admin_token = ADMIN/a debug = True' -i /etc/keystone/keystone.confsed '/#admin_token = ADMIN/a verbose = True' -i /etc/keystone/keystone.confsed '/#connection = <None>/a connection = mysql://keystone:KEYSTONE_DBPASS@controller/keystone' -i /etc/keystone/keystone.confsed -i '/\[token\]¥/a provider = keystone.token.providers.uuid.Provider' /etc/keystone/keystone.confsed -i '/\[token\]¥/a driver = keystone.token.persistence.backends.memcache.Token' /etc/keystone/keystone.confsed -i '/\[revoke\]¥/a driver = keystone.contrib.revoke.backends.sql.Revoke' /etc/keystone/keystone.conf5.同步keystone数据库 su -s /bin/sh -c "keystone-manage db_sync" keystone #修改keystone.conf文件之后需要重新同步数据库,否则数据库操作失败6. 配置Apache HTTP serverEdit the /etc/httpd/conf/httpd.conf file :ServerName ceph3Create the /etc/httpd/conf.d/wsgi-keystone.conf and edit:Listen 5000Listen 35357<VirtualHost *:5000> WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP} WSGIProcessGroup keystone-public WSGIScriptAlias / /var/www/cgi-bin/keystone/main WSGIApplicationGroup %{GLOBAL} WSGIPassAuthorization On LogLevel info ErrorLogFormat "%{cu}t %M" ErrorLog /var/log/httpd/keystone-error.log CustomLog /var/log/httpd/keystone-access.log combined</VirtualHost><VirtualHost *:35357> WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP} WSGIProcessGroup keystone-admin WSGIScriptAlias / /var/www/cgi-bin/keystone/admin WSGIApplicationGroup %{GLOBAL} WSGIPassAuthorization On LogLevel info ErrorLogFormat "%{cu}t %M" ErrorLog /var/log/httpd/keystone-error.log CustomLog /var/log/httpd/keystone-access.log combined</VirtualHost>7.创建配置keystone WSGI components: mkdir -p /var/www/cgi-bin/keystone curl http://git.openstack.org/cgit/openstack/keystone/plain/httpd/keystone.py?h=stable/kilo|tee /var/www/cgi-bin/keystone/main /var/www/cgi-bin/keystone/admin更改权限:chown -R keystone:keystone /var/www/cgi-bin/keystonechmod 755 /var/www/cgi-bin/keystone/*8.完成安装,启动apache httpdsystemctl enable httpd.servicesystemctl start httpd.service9.创建keystone service,任何与keystone的交互都要token认证,但是此时keystone本身的service还没用建立起来,此时需要手工赋值token和service的URL export OS_TOKEN=7f5f1f6b6ab54bad78f6 export OS_URL=http://ceph3:35357/v2.0创建keystone service: openstack service create --name keystone --description "OpenStack Identity" identity10.创建keystone 的service endpoint openstack endpoint create --publicurl http://ceph3:5000/v2.0 --internalurl http://ceph3:5000/v2.0 --adminurl http://ceph3:35357/v2.0 --region RegionOne identity11.创建admin project  openstack project create --description "Admin Project" admin12.创建admin 用户 openstack user create --password-prompt admin13.创建admin role openstack role create admin14,将admin role添加到admin 项目和用户中 openstack role add --project admin --user admin admin15,创建一个service项目,用于后面包括各个openstack组件的service用户 openstack project create --description "Service Project" service16.创建一个普通项目和用户,该用户不具有admin权限 openstack project create --description "Demo Project" demo openstack user create --password-prompt demo17.为demo用户创建一个user角色 openstack role create user18.将demo角色添加到demo项目和用户中 openstack role add --project demo --user demo user19.编辑admin用户的openrc文件export OS_PROJECT_DOMAIN_ID=defaultexport OS_USER_DOMAIN_ID=defaultexport OS_PROJECT_NAME=adminexport OS_TENANT_NAME=adminexport OS_USERNAME=adminexport OS_PASSWORD=adminexport OS_AUTH_URL=http://ceph3:35357/v320.编辑demo用户的demorc文件export OS_PROJECT_DOMAIN_ID=defaultexport OS_USER_DOMAIN_ID=defaultexport OS_PROJECT_NAME=demoexport OS_TENANT_NAME=demoexport OS_USERNAME=demoexport OS_PASSWORD=demoexport OS_AUTH_URL=http://ceph3:5000/v3######################################################################################安装配置glance####################################3glance暂时使用file backend模式,images存储在 /var/lib/glance/images/目录下1.创建glance数据库并授权访问CREATE DATABASE glance;GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'GLANCE_DBPASS';GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'GLANCE_DBPASS';2.在keystone中创建glance用户openstack user create --password-prompt glance3.为glance用户添加admin角色openstack role add --project service --user glance admin 4.创建glance service entryopenstack service create --name glance --description "openstack image service" image5.创建glance service endpoint openstack endpoint create --publicurl http://ceph3:9292 --internalurl http://ceph3:9292 --adminurl http://ceph3:9292 --region RegionOne image6.安装glance yum install openstack-glance python-glance python-glanceclient7.配置 /etc/glance/glance-api.conf文件[database]connection = mysql://glance:GLANCE_DBPASS@ceph3/glance[keystone_authtoken]auth_uri = http://ceph3:5000auth_url = http://ceph3:35357auth_plugin = passwordproject_domain_id = defaultuser_domain_id = defaultproject_name = serviceusername = glancepassword = glance[paste_deploy]flavor = keystone[glance_store]default_store = filefilesystem_store_datadir = /var/lib/glance/images/[DEFAULT]notification_driver = noopverbose = Truedebug = True配置命令:sed '/\[DEFAULT\]¥/a debug = True' -i glance-api.confsed '/\[DEFAULT\]¥/a verbose = True' -i glance-api.confsed '/\[DEFAULT\]¥/a notification_driver = noop' -i glance-api.confsed '/\[database\]¥/a connection = mysql://glance:GLANCE_DBPASS@ceph3/glance' -i glance-api.confsed '/\[paste_deploy\]¥/a flavor = keystone' -i glance-api.confsed -e '/\[glance_store\]¥/a default_store = file' -e '/\[glance_store\]¥/a filesystem_store_datadir = /var/lib/glance/images/' -i glance-api.confsed '/\[keystone_authtoken\]¥/a auth_uri = http://ceph3:5000\nauth_url = http://ceph3:35357\nauth_plugin = password\nproject_domain_id = default\nuser_domain_id = default\nproject_name = service\nusername = glance\npassword = glance ' -i glance-api.conf8.配置 /etc/glance/glance-registry.conf 文件[database]connection = mysql://glance:GLANCE_DBPASS@ceph3/glance[keystone_authtoken]auth_uri = http://ceph3:5000auth_url = http://ceph3:35357auth_plugin = passwordproject_domain_id = defaultuser_domain_id = defaultproject_name = serviceusername = glancepassword = glance[paste_deploy]flavor = keystone[DEFAULT]notification_driver = noopverbose = Truedebug = True配置命令:sed '/\[DEFAULT\]¥/a debug = True\nverbose = True\nnotification_driver = noop' -i glance-registry.confsed '/\[database\]¥/a connection = mysql://glance:GLANCE_DBPASS@ceph3/glance' -i glance-registry.confsed '/\[paste_deploy\]¥/a flavor = keystone' -i glance-registry.confsed '/\[keystone_authtoken\]¥/a auth_uri = http://ceph3:5000\nauth_url = http://ceph3:35357\nauth_plugin = password\nproject_domain_id = default\nuser_domain_id = default\nproject_name = service\nusername = glance\npassword = glance ' -i glance-registry.conf9.同步数据库 su -s /bin/sh -c "glance-manage db_sync" glance10.启动glance服务 systemctl enable openstack-glance-api.service openstack-glance-registry.service systemctl start openstack-glance-api.service openstack-glance-registry.service11.设置image API版本 echo "export OS_IMAGE_API_VERSION=2" | tee -a openrc demorc12.download cirros image and create image wget -P /tmp/images http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img glance image-create --name "cirros-0.3.4-x86_64" --file /tmp/images/cirros-0.3.4-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility public --progress#########################################################################################################安装配置Nova #############################################1.创建数据库并设置访问权限create database nova;GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';2.创建Nova用户,服务和endpointopenstack user create --password-prompt novaopenstack service create --name nova --description "openstack compute" computeopenstack role add --project service --user nova adminopenstack endpoint create --publicurl http://ceph3:8774/v2/%\(tenant_id\)s --internalurl http://ceph3:8774/v2/%\(tenant_id\)s --adminurl http://ceph3:8774/v2/%\(tenant_id\)s --region RegionOne compute3.安装nova yum install openstack-nova-api openstack-nova-cert openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler python-novaclient4.配置 /etc/nova/nova.conf file[database]connection = mysql://nova:NOVA_DBPASS@ceph3/nova[DEFAULT]rpc_backend = rabbitauth_strategy = keystonemy_ip = 192.168.142.13vncserver_listen = 192.168.142.13vncserver_proxyclient_address = 192.168.142.13verbose = Truedebug = True[oslo_messaging_rabbit]rabbit_host = ceph3rabbit_userid = openstackrabbit_password = openstack[keystone_authtoken]auth_uri = http://ceph3:5000auth_url = http://ceph3:35357auth_plugin = passwordproject_domain_id = defaultuser_domain_id = defaultproject_name = serviceusername = novapassword = nova[glance]host = ceph3[oslo_concurrency]lock_path = /var/lib/nova/tmp配置命令:sed '/\[DEFAULT\]¥/a debug = True\nverbose = True\nrpc_backend = rabbit\nauth_strategy = keystone\nmy_ip = 192.168.142.13\nvncserver_listen = 192.168.142.13\nvncserver_proxyclient_address = 192.168.142.13' -i /etc/nova/nova.conf sed '/\[database\]¥/a connection = mysql://nova:NOVA_DBPASS@ceph3/nova' -i /etc/nova/nova.confsed '/\[keystone_authtoken\]¥/a auth_uri = http://ceph3:5000\nauth_url = http://ceph3:35357\nauth_plugin = password\nproject_domain_id = default\nuser_domain_id = default\nproject_name = service\nusername = nova\npassword = nova ' -i /etc/nova/nova.conf sed '/\[oslo_messaging_rabbit\]¥/a rabbit_host = ceph3\nrabbit_userid = openstack\nrabbit_password = openstack' -i /etc/nova/nova.conf sed '/\[glance\]/a host = ceph3' -i /etc/nova/nova.confsed '/\[oslo_concurrency\]¥/a lock_path = /var/lib/nova/tmp' -i /etc/nova/nova.conf5.同步数据库 su -s /bin/sh -c "nova-manage db sync" nova6.启动服务 systemctl enable openstack-nova-api.service openstack-nova-cert.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service systemctl start openstack-nova-api.service openstack-nova-cert.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service7.安装nova-compute,此处将nova-compute 安装到controller节点上。

相关文档
最新文档