搭建OpenStack私有云准备工作
Centos7安装完成后克隆其他子节点
首先在VMware中:右击 虚拟机controller-->设置-->添加-->网络适配器,然后做如下设置:
在VMware中操作
点击:克隆-->下一步-->虚拟机中的当前状态-->创建完整克隆-->下一步(克隆controller、compuet、storage)
总体硬件架构:
添加虚拟网络
步骤:打开VMware-->点击编辑-->虚拟网络编辑器-->更改设置-->添加网络(备用)
添加成功后可以修改网段也可以不改,我这里改为10.0.0.0网段
最终效果:
Controller
Compute
Storage
Linux修改主机名
- 命令方式修改
[root@ Core ~]# hostnamectl set-hostname compute
[root@Core ~]# hostname compute
[root@Core ~]# exit 重新登录发现主机名修改成功了!
- 修改配置文件
[root@Core ~]# echo "storage" > /etc/hostname
[root@Core ~]# hostname storage
[root@Core ~]# exit 重新登录发现主机名修改成功了!
最终要确保重启后主机名不重复,且有以下三台主机:
controller compute storage
Linux静态IP地址配置
首先在VMware菜单中点击编辑-->虚拟网卡编辑器,查看NAT网段(子网掩码、网关、起止IP地址)
下图是可以连接外网的网卡信息:
下图是只能内部连接的网卡信息,我设置了两个网段,在实验中这个网段用不到:
- 用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
- 修改配置文件的方式修改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
总统网络架构:
配置本地域名解析
- 在控制节点上配置本地域名解析
[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
- 配置免密访问/登录
[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做相同操作
- 发送hosts文件到其他三个节点(controller、compute、storage)
[root@controller ~]# scp /etc/hosts root@controller:/etc/hosts
hosts 100% 241 74.4KB/s 00:00
关闭SELinux
- 临时关闭selinux (4个节点做相同操作)
[root@controller ~]# getenforce #查看当前状态
Enforcing
[root@controller ~]# setenforce 0 #关闭selinux
[root@controller ~]# getenforce #查看状态
Permissive
- 永久关闭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源
- 备份旧的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-*
- 构建本地OpenStack 的yum源(与3二选一)
借鉴于:https://blog.51cto.com/12114052/2383171
- 构建在线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私有云准备工作的更多相关文章
- Centos 7 搭建OpenStack 私有云——(1)基础环境配置
1.简介: OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个开源的云计算管理 ...
- linux下使用URLOS搭建nextcloud私有云盘系统
Nextcloud是一个免费专业的私有云存储网盘开源项目,可以让你简单快速地在个人/公司电脑.服务器甚至是树莓派等设备上架设一套属于自己或团队专属的云同步网盘,从而实现跨平台跨设备文件同步.共享.版本 ...
- 超千个节点OpenStack私有云案例(1):CERN 5000+ 计算节点私有云
CERN:欧洲核子研究组织 本文根据以下几篇文章整理而来: https://www.openstack.org/summit/tokyo-2015/videos/presentation/unveil ...
- 四种方案:将OpenStack私有云部署到Hadoop MapReduce环境中
摘要:OpenStack与Hadoop被誉为继Linux之后最有可能获得巨大成功的开源项目.这二者如何结合成为更猛的新方案?业内给出两种答案:Hadoop跑在OpenStack上或OpenStack部 ...
- openstack私有云布署实践【12.2 网络Neutron-controller节点配置(办公网环境)】
网络这一块推荐使用的是 Neutron--LinuxBirdge的Ha高可用,此高可用方案对Public作用不是很大,Public只用到DHCP,而Private则会用到L3 Agent,则此方案是有 ...
- openstack私有云布署实践【12.1 网络Neutron-controller节点配置(科兴环境)】
网络这一块推荐使用的是 Neutron--LinuxBirdge的Ha高可用,此高可用方案对Public作用不是很大,Public只用到DHCP,而Private则会用到L3 Agent,则此方案是有 ...
- 数据安全存放,全民搭建kodexplorer私有云存储
数据安全存放可以说越来的重要,新闻上也经常报道出关于个人信息泄露的事件,不仅泄露,还有一些进行个人隐私买卖,之前报道出facebook便是如此.数字信息存放好比存钱一样,存在别人那里总会不放心.不如自 ...
- 【OpenStack】OpenStack系列17之OpenStack私有云设计一
[软件系统] 1.操作系统(Minimal最小化安装): CentOS-6.6-x86_64,CentOS 6最后一个版本,官方建议版本. 相对于6.5版本: 强化对 SCSI 设备的处理,有助应付某 ...
- openstack私有云布署实践【16.3 Windows Server2008 R2 只有C盘分区镜像制作】
之所以要只有C盘分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入 参考http://www.iyunv.com/thread-45149-1-1.html的灵感 ...
随机推荐
- 爬虫之使用requests爬取某条标签并生成词云
一.爬虫前准备 1.工具:pychram(python3.7) 2.库:random,requests,fake-useragent,json,re,bs4,matplotlib,worldcloud ...
- Linux下Centos 7如何关闭防火墙?
Linux下的防火墙有两种:Iptables和Firewall(概念以及区别大家可以自行搜索).为什么要关闭防火墙呢?主要是我们都过Linux搭建服务器的时候其他机器访问会被墙掉,例如:Tomcat, ...
- maven工程项目依赖爆红,手动导入依然缺少依赖
1.新建一个工程 2.把依赖添加到新建工程的pom文件 神奇的事情发生了,依赖自动补全!!! 3.点击install 安装一下可能有些依赖会有其他依赖 建议:不要在自己原来的工程上浪费时间,新建工程. ...
- 【XP系统下载U盘装系统】用电脑店超级U盘装XP系统详细图文教程
现在U盘装系统已经越来越流行了,不仅方便而且简单,由于U盘启动盘用的制作工具不同,其中比较流行的有老毛桃.电脑店.大白菜.一键U盘装系统等等,因此安装过程中也有不尽相同的,今天就和大家分享下利用电脑店 ...
- python入门机器学习,3行代码搞定线性回归
本文着重是重新梳理一下线性回归的概念,至于几行代码实现,那个不重要,概念明确了,代码自然水到渠成. “机器学习”对于普通大众来说可能会比较陌生,但是“人工智能”这个词简直是太火了,即便是风云变化的股市 ...
- kNN算法 Demo
项目链接: https://github.com/WES6/kNN
- LLDB奇巧淫技
打印视图层级 这个相信很多人都会了,是ta是ta就是ta recursiveDescription 用法大概就是如下 123 po [self.view recursiveDescription] p ...
- 用Python搭建简单的HTTP服务 · Zhangxu's Blog
分享一个快速用Python搭建简单的HTTP服务的方法. 平时我们可能有需要,传输某个文件到手机,或者工作中某台服务器的电脑. 假如这个手机是个测试手机/服务器,并没有微信QQ之类的软件,而且你也不想 ...
- Android入门(创建、编译、运行、打包、安装)
一.创建Android项目 1.选择Emtpy Activity=>Next 2.配置项目 输入Name(名称) Package.name(包名) Save location(保存位置) Lan ...
- css雪碧图压缩
cssgaga下载地址 链接: https://pan.baidu.com/s/1Q9xH_XzumIc7vTLCZ3tr5A 提取码: stqe CssGaga功能特性 合并import的CSS文件 ...