Centos7安装完成后克隆其他子节点

首先在VMware中:右击 虚拟机controller-->设置-->添加-->网络适配器,然后做如下设置:

在VMware中操作

点击:克隆-->下一步-->虚拟机中的当前状态-->创建完整克隆-->下一步(克隆controller、compuet、storage)

总体硬件架构:

添加虚拟网络

步骤:打开VMware-->点击编辑-->虚拟网络编辑器-->更改设置-->添加网络(备用)

添加成功后可以修改网段也可以不改,我这里改为10.0.0.0网段

最终效果:

Controller

Compute

Storage

Linux修改主机名

  1. 命令方式修改

[root@ Core ~]# hostnamectl set-hostname compute

[root@Core ~]# hostname compute

[root@Core ~]# exit     重新登录发现主机名修改成功了!

  1. 修改配置文件

[root@Core ~]# echo "storage" > /etc/hostname

[root@Core ~]# hostname storage

[root@Core ~]# exit    重新登录发现主机名修改成功了!

最终要确保重启后主机名不重复,且有以下三台主机:

controller compute storage 

Linux静态IP地址配置

首先在VMware菜单中点击编辑-->虚拟网卡编辑器,查看NAT网段(子网掩码、网关、起止IP地址)

下图是可以连接外网的网卡信息:

下图是只能内部连接的网卡信息,我设置了两个网段,在实验中这个网段用不到:

  1. 用nmcli命令配置IP地址(建议选用第一种方式配置)

配置第一块网卡用于连接外网:

[root@controller ~]# nmcli connection show

NAME   UUID                                  TYPE      DEVICE

ens33  3a90c11e-a36f-401e-ba9d-e7961cea63ca  ethernet  ens33

[root@controller ~]# nmcli connection modify ens33 ipv4.method manual \

> ipv4.addresses 192.168.181.10/24 ipv4.gateway 192.168.181.2 \

> ipv4.dns 8.8.8.8 autoconnect yes

验证:

[root@controller ~]# nmcli connection up ens33

[root@controller ~]# ifconfig

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

inet 192.168.181.10  netmask 255.255.255.0  broadcast 192.168.181.255

[root@controller ~]# ping -c 3 g.cn

PING g.cn (203.208.50.63) 56(84) bytes of data.

64 bytes from g.cn (203.208.50.63): icmp_seq=1 ttl=128 time=40.8 ms

64 bytes from g.cn (203.208.50.63): icmp_seq=2 ttl=128 time=41.6 ms

64 bytes from g.cn (203.208.50.63): icmp_seq=3 ttl=128 time=41.6 ms

配置第二块网卡用于连接内网:

[root@controller ~]# nmcli connection add con-name ens37 ifname ens37 type ethernet ipv4.method manual ipv4.addresses 10.0.0.10/24 autoconnect yes

[root@controller ~]# nmcli connection up ens37

最终要确保重启后IP和主机名一一对应:

外网IP(ens33)            内网IP(ens37)

controller 192.168.181.10              10.0.0.10

compute  192.168.181.20              10.0.0.20

storage                              10.0.0.30

配置controller、compute的第三块网卡,不获取IP

[root@controller ~]# nmcli connection add con-name ens38 ifname ens38 type ethernet ipv4.method manual ipv4.addresses 192.168.181.41/24 autoconnect

[root@controller ~]# sed -i '2,3d;5,13d' /etc/sysconfig/network-scripts/ifcfg-ens38

  1. 修改配置文件的方式修改IP地址

[root@controller ~]# sed -i 's/dhcp/static/' /etc/sysconfig/network-scripts/ifcfg-ens33

[root@controller ~]# sed -i '$a IPADDR="192.168.181.10"' /etc/sysconfig/network-scripts/ifcfg-ens33

[root@controller ~]# sed -i '$a PREFIX="24"' /etc/sysconfig/network-scripts/ifcfg-ens33

[root@controller ~]# sed -i '$a GATEWAY="192.168.181.2"' /etc/sysconfig/network-scripts/ifcfg-ens33

[root@controller ~]# sed -i '$a DNS1="114.114.114.114"' /etc/sysconfig/network-scripts/ifcfg-ens33

[root@controller ~]# systemctl restart network

验证:

[root@controller ~]# ifconfig

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

inet 192.168.181.10  netmask 255.255.255.0  broadcast 192.168.181.255

[root@controller ~]# ping -c 3 g.cn

PING g.cn (203.208.50.55) 56(84) bytes of data.

64 bytes from g.cn (203.208.50.55): icmp_seq=1 ttl=128 time=46.9 ms

64 bytes from g.cn (203.208.50.55): icmp_seq=2 ttl=128 time=46.8 ms

要确保每个节点都可以ping通g.cn

总统网络架构:

配置本地域名解析

  1. 在控制节点上配置本地域名解析

[root@controller ~]# sed -i '3,100d' /etc/hosts

[root@controller ~]# sed -i 's/^:/#/' /etc/hosts

[root@controller ~]# echo "10.0.0.10  controller" >> /etc/hosts

[root@controller ~]# echo "10.0.0.20  compute" >> /etc/hosts

[root@controller ~]# echo "10.0.0.30  storage" >> /etc/hosts

[root@controller ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

10.0.0.10  controller

10.0.0.20  compute

10.0.0.30  storage

验证结果:

[root@controller ~]# ping compute

PING controller (192.168.181.10) 56(84) bytes of data.

64 bytes from controller (192.168.181.10): icmp_seq=1 ttl=64 time=0.036 ms

64 bytes from controller (192.168.181.10): icmp_seq=2 ttl=64 time=0.096 ms

最终各个节点配置IP的目标:

要确保相互之间可以ping通,如:

[root@controller ~]# ping controller

PING controller (192.168.181.10) 56(84) bytes of data.

64 bytes from controller (192.168.181.10): icmp_seq=1 ttl=64 time=5.02 ms

64 bytes from controller (192.168.181.10): icmp_seq=2 ttl=64 time=0.940 ms

  1. 配置免密访问/登录

[root@controller ~]# ssh-keygen   #如果没什么特殊需求一路回车即可

[root@controller ~]# ssh-copy-id compute

Are you sure you want to continue connecting (yes/no)? yes

root@controller's password:     #此处输入compute的密码

验证:

[root@controller ~]# ssh root@compute

Last login: Fri Feb 14 19:00:39 2020

[root@controller ~]# exit   #exit返回到原来节点

对storage做相同操作

  1. 发送hosts文件到其他三个节点(controller、compute、storage)

[root@controller ~]# scp /etc/hosts root@controller:/etc/hosts

hosts                             100%  241    74.4KB/s   00:00

关闭SELinux

  1. 临时关闭selinux (4个节点做相同操作)

[root@controller ~]# getenforce   #查看当前状态

Enforcing

[root@controller ~]# setenforce 0  #关闭selinux

[root@controller ~]# getenforce   #查看状态

Permissive

  1. 永久关闭selinux(1,2可只做2)

[root@controller ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

[root@controller ~]# reboot    #永久关闭需要重启才能生效

关闭防火墙

四台机器都做相同操作:

[root@controller ~]# systemctl stop firewalld.service   #临时关闭

[root@controller ~]# systemctl disable firewalld.service   #关闭开机自启

搭建OpenStack的yum源

  1. 备份旧的yum源,删除原yum源

[root@controller ~]# tar -zcf /etc/yum.repos.d/yum.repo.bak.gz /etc/yum.repos.d/*

[root@controller ~]# rm -rf /etc/yum.repos.d/CentOS-*

  1. 构建本地OpenStack 的yum源(与3二选一)

借鉴于:https://blog.51cto.com/12114052/2383171

  1. 构建在线OpenStack的yum源

阿里各类yum源地址:https://developer.aliyun.com/mirror/

构建阿里云epel源,centos源

[root@controller yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

[root@controller yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

构建系统光盘自带的yum源

[root@controller yum.repos.d]# sed -i '$a /dev/cdrom /mnt/ iso9660 defaults 0 0' /etc/fstab

[root@controller yum.repos.d]# mount -a

[root@controller yum.repos.d]# tee /etc/yum.repos.d/CentOS-7.repo <<-'EOF'

> [centos]

> name=centos7

> baseurl=file:///mnt/

> enable=1

> gpgcheck=0

> EOF

[root@controller yum.repos.d]# yum clean all

[root@controller yum.repos.d]# yum repolist

4.在三个节点上都做相同的配置(controller、compute、storage)

在此本人选择构建在线OpenStack的yum源,即重复1,3步骤,以下代码可以复制执行

echo "nameserver 8.8.8.8

nameserver 119.29.29.29

nameserver 114.114.114.114" > /etc/resolv.conf

cd /etc/yum.repos.d/

tar -zcf yum.repo.tar.gz *

rm -rf /etc/yum.repos.d/CentOS-*

wget -O /etc/yum.repos.d/CentOS-epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

sed -i '$a /dev/cdrom /mnt/ iso9660 defaults 0 0' /etc/fstab

mount -a

tee /etc/yum.repos.d/CentOS-7.repo <<-'EOF'

[centos]

name=centos7

baseurl=file:///mnt/

enable=1

gpgcheck=0

EOF

yum -y install centos-release-ceph-jewel centos-release-qemu-ev

wget -O /opt/centos-release-openstack-ocata-1-2.el7.noarch.rpm https://mirrors.aliyun.com/centos-vault/altarch/7.6.1810/extras/ppc64le/Packages/centos-release-openstack-ocata-1-2.el7.noarch.rpm?spm=a2c6h.13651111.0.0.25962f70kIQliu&file=centos-release-openstack-ocata-1-2.el7.noarch.rpm

wget -O /opt/rdo-release-ocata-3.noarch.rpm https://repos.fedorapeople.org/repos/openstack/EOL/openstack-ocata/rdo-release-ocata-3.noarch.rpm

rpm -ivh /opt/centos-release-openstack-ocata-1-2.el7.noarch.rpm

rpm -ivh /opt/rdo-release-ocata-3.noarch.rpm

echo "[openstack-ocata]

name=ocata

baseurl=https://buildlogs.cdn.centos.org/centos/7/cloud/x86_64/openstack-ocata/

enable=1

gpgcheck=0" >> /etc/yum.repos.d/CentOS-7.repo

yum clean all

yum repolist

yum makecache
ls

服务部署架构:

搭建OpenStack私有云准备工作的更多相关文章

  1. Centos 7 搭建OpenStack 私有云——(1)基础环境配置

    1.简介: OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个开源的云计算管理 ...

  2. linux下使用URLOS搭建nextcloud私有云盘系统

    Nextcloud是一个免费专业的私有云存储网盘开源项目,可以让你简单快速地在个人/公司电脑.服务器甚至是树莓派等设备上架设一套属于自己或团队专属的云同步网盘,从而实现跨平台跨设备文件同步.共享.版本 ...

  3. 超千个节点OpenStack私有云案例(1):CERN 5000+ 计算节点私有云

    CERN:欧洲核子研究组织 本文根据以下几篇文章整理而来: https://www.openstack.org/summit/tokyo-2015/videos/presentation/unveil ...

  4. 四种方案:将OpenStack私有云部署到Hadoop MapReduce环境中

    摘要:OpenStack与Hadoop被誉为继Linux之后最有可能获得巨大成功的开源项目.这二者如何结合成为更猛的新方案?业内给出两种答案:Hadoop跑在OpenStack上或OpenStack部 ...

  5. openstack私有云布署实践【12.2 网络Neutron-controller节点配置(办公网环境)】

    网络这一块推荐使用的是 Neutron--LinuxBirdge的Ha高可用,此高可用方案对Public作用不是很大,Public只用到DHCP,而Private则会用到L3 Agent,则此方案是有 ...

  6. openstack私有云布署实践【12.1 网络Neutron-controller节点配置(科兴环境)】

    网络这一块推荐使用的是 Neutron--LinuxBirdge的Ha高可用,此高可用方案对Public作用不是很大,Public只用到DHCP,而Private则会用到L3 Agent,则此方案是有 ...

  7. 数据安全存放,全民搭建kodexplorer私有云存储

    数据安全存放可以说越来的重要,新闻上也经常报道出关于个人信息泄露的事件,不仅泄露,还有一些进行个人隐私买卖,之前报道出facebook便是如此.数字信息存放好比存钱一样,存在别人那里总会不放心.不如自 ...

  8. 【OpenStack】OpenStack系列17之OpenStack私有云设计一

    [软件系统] 1.操作系统(Minimal最小化安装): CentOS-6.6-x86_64,CentOS 6最后一个版本,官方建议版本. 相对于6.5版本: 强化对 SCSI 设备的处理,有助应付某 ...

  9. openstack私有云布署实践【16.3 Windows Server2008 R2 只有C盘分区镜像制作】

    之所以要只有C盘分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入   参考http://www.iyunv.com/thread-45149-1-1.html的灵感   ...

随机推荐

  1. perf4j @Profiled常用写法

    以下内容大部分摘抄自网络上信息. 1.默认写法 @Profiled 日志语句形如: 2009-09-07 14:37:23,734 [main] INFO org.perf4j.TimingLogge ...

  2. CocoaPods 安装和使用 - darcy_tang 的博客

    最近换了新机器,重新搭建了开发环境,其中当然包括 CocoaPods. 装完顺便更新下 CocoaPods 安装文档. 正文 安装 CocoaPods 是用 ruby 实现的,要想使用它首先需要有 r ...

  3. async包 ES6 async/await的区别

    最基本的async 包 ApCollection.find({}).toArray(function (err, aps) { var num = 0; async.whilst( function ...

  4. DIP|PCN|CoevDB|PID|Y2H|RosettaDock Serve|元基因组学|微生物多样性

    生命组学: 比较真核生物有关呼吸链的gene是比较核外编码基因,因为与呼吸有关的功能在线粒体上,线粒体位于核外.想要查看两种基因是否具有相互作用,可以对不同物种的编码ATP6 和ATP8的直系同源基因 ...

  5. Torque:轻应用背后的大蓄势 微软语音技术厚积薄发​

    Torque,为中国用户而来 此前,"微软车库"公开发布了一系列小而美的产品,它们全部由具有"极客创新"精神的微软员工在工作之外的时间构思和开发.Torque就 ...

  6. mvn相关介绍和命令

    1.前言 Maven,发音是[`meivin],"专家"的意思.它是一个很好的项目管理工具,很早就进入了我的必备工具行列,但是这次为了把project1项目完全迁移并应用maven ...

  7. 吴裕雄--天生自然python学习笔记:Python3 模块

    Python3 模块 在前面的几个章节中我们脚本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了. 为此 Python 提供了一个办 ...

  8. 吴裕雄--天生自然python学习笔记:Python3 函数

    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创建函数,这 ...

  9. spring security之Remember Me

    spring-security.xml配置 环境: spring版本:5.0.7.RELEASE spring-security.xml引入: http://www.springframework.o ...

  10. Spring Dispatcher-servlet.xml配置

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...