openstack

openstack基础架构

openstack_第1张图片
image
openstack_第2张图片
image
openstack_第3张图片
image

为什么要用 Openstack

kvm宿主机 2000台
查看每一个宿主机有多少台虚拟机?
查看每一个宿主机还剩多少资源?
查看每一台宿主机,每一个虚拟机的ip地址? 

excel 资产管理  cmdb
kvm管理平台,数据库工具 Openstack
信息:宿主机,总配置,剩余的总配置
虚拟机的信息,配置信息,ip地址,操作系统

带计费功能的kvm管理平台,openstack ceilometer计费 ecs IAAS层
自动化管理kvm宿主机,云主机定制化操作

服务器, 20核心 1T内存 96T
资源浪费,linux环境特别乱,,kvm虚拟机

使用脚本自动化部署openstack M版

需要的脚本软件下载链接 提取码: v4nf

部署openstack
克隆一台openstack模板机:
all-in-one
4G内存,开启虚拟化,挂载centos7.6的光盘

openstack_第4张图片
image
openstack_第5张图片
image
openstack_第6张图片
image
openstack_第7张图片
image

保证磁盘启动成功

openstack_第8张图片
image

修改网卡配置文件 IP 为10.0.0.11

openstack_第9张图片
image
image

上传选中的环境软件

openstack_第10张图片
image

解压openstack_rpm.tar.gz的压缩包

openstack_第11张图片
image

执行脚本

image

脚本执行完成后访问提示的网站

openstack_第12张图片
image

域为 default
用户名为admin
密码为ADMIN_PASS

openstack_第13张图片
image

创建一台实例

openstack_第14张图片
image
openstack_第15张图片
image
openstack_第16张图片
image
openstack_第17张图片
image

启动实例

openstack_第18张图片
image
openstack_第19张图片
image
openstack_第20张图片
image
image
openstack_第21张图片
image

可以上网

image

创建项目

openstack_第22张图片
image
openstack_第23张图片
image
openstack_第24张图片
image
openstack_第25张图片
image

测试是否可以连接

openstack_第26张图片
image

连接成功

openstack_第27张图片
image

添加规则

openstack_第28张图片
image
openstack_第29张图片
image

手动添加镜像

openstack_第30张图片
image

增加一个计算节点

按上面的添加步骤添加一台IP为10.0.0.12的主机

上传需要的文件和压缩包

openstack_第31张图片
image

解压到/opt/下

openstack_第32张图片
image

修改脚本文件

openstack_第33张图片
image

执行脚本

image
openstack_第34张图片
image.png

维护openstack平台的考虑因素

#1 安装部署

#2 上传镜像
centos7
centos6
ubuntu
debian
windows server R2

中国家科技大学的源
http://mirrors.ustc.edu.cn/centos-cloud/centos/7/images/

3 给开发开通账户,跳转默认资源配额,脚本创建用户
shell脚本

4.增加计算节点
a.给物理服务器装系统,cobbler无人安装操作系统
b.ansible批量操作
c.测试

5.监控,高可用
zabbix
mysql高可用
rabbitmq高可用(消息队列)

OpenStack常用命令手册

主机常用命令

查询类

网络接口查询

查询网络配置 cat /etc/sysconfig/network-scripts/ifcfg-ens160
1

主机ip信息查询

查看主机网卡 ifconfig

查看主机名 cat /etc/hostname

查看主机名对应的IP信息 cat /etc/hosts
12345

编辑类

网络接口编辑

编辑网络配置 vim /etc/sysconfig/network-scripts/ifcfg-ens160
1

主机ip信息编辑

查看主机名对应的IP信息 vim /etc/hosts
1

认证服务常用命令

查询类

Apache http服务状态查询

命令语句 systemctl status httpd.service
1

Apache http 服务日志查询

命令语句 cd /etc/httpd/logs tail 文件名
选择日志文件
12

OpenStack域列表查询

命令语句 openstack domain list
注意 ID:每个域的唯一ID; Name:域的名称; Enabled:是否启用 Description:对域的描述。
12

OpenStack 服务列表查询

命令语句 openstack service list
注解: ID:服务唯一ID; Name:服务名称; Type:服务类型。
12

OpenStack 节点列表查询

命令语句 openstack endpoint list
注解:Service Name:服务名称; Service Type:服务类型; Interface:连接对象; URL:服务所在IP:端口号/版本号。
12

编辑类

创建域

命令语法 openstack domain create --description”对创建域的描述” 域名
创建域样例 openstack domain create --description “An Example Domain” example
12

创建服务

命令语法 openstack service create --name 服务名 --description “对服务的描述” 类型
创建服务样例 openstack service create --name glance --description “OpenStack Image” image
12

创建api端点

#命令语法 
openstack endpoint create --region RegionOne 服务类型 连接对象 http://ip地址:端口号

#创建api
端点样例 openstack endpoint create --region RegionOne \

image public http://172.26.128.126:9292
openstack endpoint create --region RegionOne
image internal http://172.26.128.126:9292
openstack endpoint create --region RegionOne
image admin http://172.26.128.126:9292

#创建成功显示
注意:创建一个服务api控制端点需要创建三个连接对象,在这里为public、internal
、admin。
123456789101112131415

镜像服务常用命令

查询类

镜像服务查询

命令语句 systemctl status openstack-glance-api.service openstack-glance-registry.service
服务注解:
【1】openstack-glance-api.service glance-api是整个glance的入口,负责接受用户的各种请求
【2】openstack-glance-registry.service 一个glance的镜像仓库服务,负责和后台数据库进行交互。
1234

镜像服务列表查询

命令语句 openstack image list

注解
ID:镜像文件的唯一ID ;Name:自定义的镜像名称;Status:是否可用 active表示可用。
1234

查看某个具体的镜像

命令语句 openstack image show image_name
1

查看安全组

命令语句 openstack group list
1

编辑类

上传镜像

#命令语法 
openstack image create “自定义镜像名” --file 镜像文件名称 --disk-format 格式化类型 --container-format bare --public

#样例
第一步:下载镜像文件
wget http://download.cirros-cloud.net/0.3.4/cirros-0.5.1-x86_64-disk.img
第二步:上传镜像文件
openstack image create “test1” --file cirros-0.5.1-x86_64-disk.img --disk-format qcow2 --container-format bare --public
注:格式化类型有raw、qcow2、vmdk等
123456789

增加安全组

命令语句 openstack group create group_name --description “”
1

计算服务常用命令

查询类

查看计算服务整体运行状态

#命令语法 
systemctl status openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service libvirtd.service openstack-nova-compute.service

#服务注解:
【1】openstack-nova-api.service nova-api是整个nova的入口,负责接受和响应终端用户有关虚拟机呵呵云硬盘盘的请求。
【2】openstack-nova-consoleauth.service 守护进程,由用户的console控制台代理提供授权tokens,两种模式nova-novncproxy和nova-xvpnvcproxy
【3】openstack-nova-scheduler.service 负责调度虚拟机在哪个物理宿主机上部署,接受消息队列指令并执行。
【4】openstack-nova-conductor.service nova-conductor模式,介于nova-computer和database之间,设计目的在于消除直接nova-computer直接访问云数据库。
【5】openstack-novncproxy.service 守护进程,提供了VNC连接访问正在运行的实例的代表,基于novnc客户浏览器
【6】openstack-nova-compute.service 两个职责,其一,是守护进程,负责基于各种虚拟化技术Hypervisior实现创建和终止虚拟机;其二,整合了计算资源CPU,存储,网络三类资源部署管理虚拟机,实现计算能力的交付。
12345678910

查询nova服务的命令

命令语句 openstack compute service list
1

查询nova组件的更新检查

命令语句 nova-status upgrade check
1

编辑类

维护编辑nova配置

命令语句 vim /etc/nova/nova.conf
1

网络服务常用命令

查询类

查看网络服务状态

#命令语句 
systemctl status neutron-server.service neutron-linuxbridge-agent.service neutron-dhcp-agent.service neutron-metadata-agent.service

#服务注解:
【1】neutron-server.service 用于接受apI请求创建网络,子网,路由器等。
neutron-linuxbridge-agent.service 负责三个任务,第一,报告状态;第二,处理RPC API;第三,实现neutron中定义的网络拓扑。
【2】neutron-dhcp-agent.service 用于创建和管理虚拟DHCP Server。
【3】neutron-metadata-agent.service neutron-metadata-agent运行在网络节点上,作为中间人是instance可以访问请求nova-api-metadata。
12345678

查询网络信息

命令语句 openstack network list
1

查看端口信息

命令语句 openstack port list
1

编辑类

维护编辑neutron配置

命令语法 vim /etc/neutron/neutron.conf
1

维护编辑ml2配置

命令语句 vim /etc/neutron/plugins/ml2/ml2_conf.ini

#解析:
openstack中使用的ml2模块是用来管理Layer2,Modular Layer 2 是一个可以同时管理多种Layer2技术的框架。
1234

维护编辑linuxbridge_agent配置

命令语句 vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini

解析:linuxbridge_agent相当于物理机与dhcp server 之间的媒介
123

维护编辑dhcp_agent配置

命令语句 vim /etc/neutron/dhcp_agent.ini

#解析:
为各个租户网络提供DHCP服务,部署在网络节点上,各个插件也是使用这一个代理。
1234

维护编辑metadata_agent配置

命令语句 vim /etc/neutron/metadata_agent.ini

#解析: 
Metadata_agent用于连接Nova Metadata服务和网络在namespace中的虚机的,其中,Nova Metadata存储了Metadata和 user data。
1234

块存储常用命令

查询类

查看块存储服务及依赖服务状态

命令语句 systemctl status openstack-cinder-volume.service target.service openstack-cinder-api.service openstack-cinder-scheduler.service

#服务注解
【1】openstack-cinder-volume.service 通过相关驱动程序架构直接与块存储服务进行交互。
【2】 openstack-cinder-api.service 进入Cinder的HTTP接口。
【3】openstack-cinder-scheduler.service 根据预定的策略选择合适的cinder-volume节点来处理用户的请求。
123456

查看块存储服务组件信息

命令语句 cinder service-list
1

编辑类

维护编辑cinder配置

命令语句 vim /etc/cinder/cinder.conf
1

虚拟机管理常用命令

查询类

查看opens tack环境主机列表

命令语句 openstack host list
1

查看某台主机资源情况

命令语句 openstack host show compute04
1

查看虚拟机列表

命令语句 openstack server list
1

查看虚拟机详情

命令语句 openstack server show 虚机名

#样例 
openstack server show test06
1234

编辑类

创建虚拟机

启动一个虚拟机必要的信息是镜像,规格,网络。从前面学习到的image操作中找到镜像,从flavor操作中找到合适的规格,从网络操作中找到网络。

创建虚机步骤如下

#第一步:
命令语句 openstack network list
输出结果
注解:在输出结果中,需要记下你所构建的网络的“ID”(编号)。之后你创建虚机时,要用到这个编号。

#第二步:
命令语句 openstack flavor list
输出结果
注解:此命令用于查询你想创建的虚拟机的类型

#第三步:
命令语句 openstack image list
输出结果
注解:选择虚机的镜像文件

#第四步:
命令语句 openstack security group list
输出结果
注解:选择虚机所要使用的安全组的类型。

#第五步:
命令语句 openstack server create --image 镜像名 --flavor flavor规格名 –security-groups 安全组名 --nic net-id=网络ID 虚机名

样例: 
openstack server create --image centos7.4-cloud --flavor vm-ram-01 --nic net-id=e7f65cb4-1896-46b9-ae09-2fa141f1757c test06
输出结果
创建成功后,使用opensatck server list
123456789101112131415161718192021222324252627

虚拟机暂停

命令语句 openstack server pause 虚机名
样例 openstack server pause vm-szy-03
注解:可使用openstack server list 查看虚机状态
123

虚拟机启动

命令语句 openstack server unpause 虚机名
样例 openstack server unpause vm-szy-03
12

虚拟机重启

命令语句 openstack server reboot 虚机名
样例 openstack server reboot vm-szy-03

注意:
nova reboot是软重启虚拟机
nova reboot --hard 是硬重启虚拟机
nova reset-state 是重置虚拟机状态
1234567

虚拟机删除

命令语句 openstack server delete 虚机名
样例 openstack server delete vm-szy-03
12

项目、用户、角色管理

项目管理

查询类

项目列表查询

命令语句 openstack project list
ID:项目的唯一ID; Name:项目名称。
12

项目详情查询

命令语句 openstack project show 项目名
样例 openstack project show service
12

查询某一项目下的所有用户

命令语句 openstack user list --project=项目名
样例 openstack user list --projected=service
12

编辑类

创建项目

命令语法 openstack project create --domain 域名 --description”对创建项目的描述” 项目名

#创建项目样例 
openstack project create --domain default --description "Service Project" service
1234

更新项目名称

命令语法 openstack project set ID/name --name project-new
样例 openstack project set demo –name test
12

删除项目

命令语法 openstack project delete project-name
样例 openstack project delete demo
12

用户管理

查询类

用户列表查询

命令语句 openstack user list
ID:用户的唯一ID; Name:用户名称。
12

查询用户详情

命令语法 opensatck user show 用户名
样例 openstack user show demo
12

查询某一用户与项目、角色的关系

命令语法 openstack role assignment list --user=用户名
样例 openstack role assignment list --user=nova

#注解:
使用openstack assignment list 查询处的role、user、project显示都为唯一ID值,可以配合openstack role/user/project list 来使用。
12345

编辑类

创建用户

命令语法 openstack user create --domain 域名 --password-prompt 用户名

#创建用户样例 
openstack user create --domain default --password-prompt demo
User Password:123
Repeat User Password:123
123456

启用用户

命令语法 openstack user set user_name --enable
样例 openstack user set demo --enable
12

禁止用户

命令语法 openstack user set user_name --disable
样例 openstack user set demo --disable
12

更新用户名

命令语法 openstack user set user_name --name username_new
样例 openstack user set demo –name test02
12

删除用户

命令语法 openstack user delete user_name
样例 openstack user delete demo
12

角色管理

查询类

角色列表查询

命令语句 openstack role list
ID:角色的唯一ID; Name:角色的名称
12

角色详情查询

命令语法 opensatck role show 角色名
样例 openstack role show admin
12

编辑类

创建角色

命令语法 openstack role create 角色名
样例 openstack role create user
12

将项目和用户加入到角色中

命令语法 openstack role add --project 项目名 --user 用户名 角色名
样例 openstack role add --project hzab --user hq woker
12

将role移除项目和用户

命令语法 openstack role remove --user 用户名 --project 项目名 角色名
样例 Openstack role remove --user=hzab --project=admin hsjn

你可能感兴趣的:(openstack)