当前位置:   article > 正文

OpenStack运维题_在 controller 节点上部署 chrony 服务器,允许其他节点同步时间,启动服务并设置为

在 controller 节点上部署 chrony 服务器,允许其他节点同步时间,启动服务并设置为

OpenStack例题:

一、配置YUM源

注意:如果web登录Dashboard仪表盘出错了请联系管理员刷新,使用https://协议登录成功,可能跟ssl有关。

例题一、repo编写

在配置httpd.conf文件时,需要修改主目录为opt,这样在网站上打开时才会显示opt目录中的文件

修改以下两处:

<Directory "/opt">

DocumentRoot "/opt"

使用提供的http服务地址,在http服务下,存在centos7.5和iaas的网络yum源,使用该http源作为安装iaas平台的网络源。分别设置controller节点和compute节点的yum源文件http.repo。

  1. [root@controller yum.repos.d]#cat http.repo
  2. ​[centos]
  3. ​name=centos
  4. ​baseurl=http://IP地址/centos #该IP是提供的http服务地址,练习改成自己的
  5. ​gpgcheck=0
  6. ​enabled=1
  7. ​[iaas]
  8. ​name=iaas
  9. ​baseurl=http://IP地址/iaas #该IP是提供的http服务地址,练习改成自己的
  10. ​gpgcheck=0
  11. ​enabled=1
二、时间同步配置
例题一、配置时间同步

在controller节点上部署chrony服务器,允许其他节点同步时间,启动服务并设置为开机启动;在compute节点上指定

controller节点为上游NTP服务器,重启服务并设为开机启动。

  1. [root@controller /]# yum install -y chrony && systemctl enable chronyd
  2. [root@controller /]# vi /etc/chrony.conf
  3. allow 192.168.0.0/16 #根据自身IP段进行配置,意为允许广播到的网络范围
  4. local stratum 10
  5. [root@controller /]# systemctl start chronyd
  6. [root@compute /]# yum install -y chrony && systemctl enable chronyd
  7. [root@compute /]# vi /etc/chrony.conf
  8. server controller节点IP iburst
注意:修改时区-如果时间不是CST时区可以修改回来

注意域名解析服务器,因为是通过主机名解析不是直接通过IP地址,如果域名解析没有配置好,那么时间同步不会成功,CST:中央标准时区。UTC:世界协调时间。我国为CST+8的时间标准。

  1. [root@controller /]# date
  2. 2018年 03月 02日 星期五 14:09:45 CST
  3. [root@controller /]# tzselect #设置时区
  4. 时区的设置文件:/etc/timezone
  5. 时间相关文件:/etc/localtime
  6. 时间相关的文件:/usr/share/zoneinfo/Asia 这里边放着亚洲主要城市的时间
  7. 设置时间 rm -rf /etc/localtime
  8. ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
三、数据库操作
例题一、数据库创建插入数据

登录数据库服务,创建库test,并在库test中创建表company(表结构如(id int not null primary key,name varchar(50),addr varchar(255))所示),在表company中插入一条数据(1,"alibaba","china")。

  1. [root@controller /]#mysql -uroot -p000000
  2. ​mysql> create database test;
  3. ​mysql> \u test
  4. ​mysql> create table company(
  5. ​->id int not null primary key,
  6. ​->name varchar(50),
  7. ​->addr varchar(255)
  8. ​->);
  9. ​mysql> insert into company values(1,'alibaba','china');
例题二、RabbitMQ用户创建设置权限

使用RabbitMQ服务的相关命令创建用户chinaskill,密码为chinapd,并赋予该用户administrator权限。

  1. [root@controller /]#rabbitmqctl add_user chinaskill chinapd
  2. [root@controller /]#rabbitmqctl set_user_tags chinaskill administrator
  3. [root@controller /]#rabbitmqctl set_permissions chinaskill ".*" ".*" ".*"

启动RabbitMQ Web服务检验

  1. [root@controller /]#rabbitmq-plugins enable rabbitmq-management
  2. 浏览器输入http://192.168.100.10:15672使用chinaskill登录
例题三:主从数据库

主从数据库配置:

  1. 1、安装数据库mariadb-server(多节点操作):
  2. [root@node-1 /]# yum install -y mariadb-server
  3. [root@node-2 /]# yum install -y mariadb-server
  4. [root@node-3 /]# yum install -y mariadb-server
  5. 2、主数据库修改配置文件:
  6. [root@node-1 /]# vi /etc/my.cnf
  7. [mysqld]
  8. server-id=1 #各服务器确保ID唯一性
  9. log-bin=mysql-bin #log-bin不指定默认datadir指向的目录,mysql-bin也是头文件名
  10. 3、各节点初始化数据库:
  11. [root@node-1 /]# mysql_install_db --user=mysql
  12. [root@node-2 /]# mysql_install_db --user=mysql
  13. [root@node-3 /]# mysql_install_db --user=mysql
  14. 4、从数据库修改配置文件:
  15. [root@node-2 /]# vi /etc/my.cnf
  16. [mysqld]
  17. server-id=2
  18. [root@node-3 /]# vi /etc/my.cnf
  19. [mysqld]
  20. server-id=3
  21. 5、启动各节点的数据库,设置开机自启:
  22. [root@node-1 /]# systemctl start mariadb && systemctl enable mariadb
  23. [root@node-2 /]# systemctl start mariadb && systemctl enable mariadb
  24. [root@node-3 /]# systemctl start mariadb && systemctl enable mariadb
  25. 6、创建主从连接账号与授权:
  26. [root@node-1 /]# create user '用户名slave'@'%' identified by '密码';
  27. [root@node-1 /]# grant replication slave on *.* to 'slave'@'%';
  28. #grant 允许 #replication 同步复制 # slave从权限为*.*全部 账号为'slave'@'主机名'
  29. [root@node-1 /]# flush privileges;
  30. [root@node-1 /]# show master status;
  31. #查看masterlog文件和pos偏移量
  32. 7、从数据库连接:
  33. [root@node-2 /]# change master to master_host='IP',master_user='slave',master_password='密码',master_log_file='mysql-logXXX',master_log_pos='570';
  34. [root@node-2 /]# show slave status\G
  35. #查看详细信息
四、heat模板
例题一、heat-template编写

使用自己搭建的openstack云平台,在/root目录下编写模板server.yaml,创建名为“m1.flavor”、 ID 为 1234、内存为1024MB、硬盘为20GB、vcpu数量为 1的云主机类型。

  1. [root@controller /]#vi /root/server.yaml
  2. heat_template_version: 2013-05-23 #模板版本
  3. resources: #资源,不可少
  4. m1: #名字随便起
  5. type: OS::Nova::Flavor #不可少,使用Flavor代表要创建的是主机类型,可以在web中查看所有模板
  6. properties: #参数,不可少
  7. ram: 1024
  8. name: m1.flavor
  9. flavorid: 1234
  10. disk: 20
  11. vcpus: 1
  12. [root@controller /]#openstack stack create -f yaml -t /root/server.yaml stack2
  13. *openstack stack create命令执行yaml文件
  14. *-f指定类型为yaml,可以不写
  15. *-t指定模板为/root/server.yaml文件
  16. *stack2为给堆栈起一个名字,自己定义

或者使用以下表达方式:

  1. heat_template_version: '2013-05-23'
  2. resources:
  3. m1:
  4. properties: {disk: 20, flavorid: 1234, name: m1.flavor, ram: 1024, vcpus: 1}
  5. type: OS::Nova::Flavor
  6. *yaml写法:每个冒号“:”符号后必须有空格
  7. *大小写敏感
  8. *使用缩进表示层级关系,缩进不能用tab只能是空格,缩进空格数目不重要,只要相同等级元素左对齐
五、Cinder使用
例题一、使用cinder命令创建云硬盘

注意:若执行命令报ERROR: You must provide ······,请执行source /etc/keystone/admin-openrc.sh

  1. 一、先创建lvm卷类型
  2. ​[root@controller /]#cinder type-create lvm
  3. ​二、创建名为blockvolume大小为2G的云硬盘
  4. ​[root@controller /]#cinder create --volume-type lvm --display-name blockvolume 2
  5. ​三、云硬盘扩容
  6. ​[root@controller /]#lvdisplay /dev/mapper/cinder--volumes-volume--e8fa3391--867c--4fe0--84db--042498969a83
  7. ​*查看卷名称和详细信息
  8. ​[root@controller /]#cinder list
  9. ​*查看cinder卷名称
  10. ​[root@controller /]#cinder extend blockvolume 3
  11. ​*扩展到3G
六、快照管理
例题一、cinder创建快照并导出

使用自己搭建的openstack云平台,将云主机VM1保存为qcow2格式的快照并保存到controller节点/root/cloudsave目录下,保存名字为csccvm.qcow2。

  1. 在web中创建快照生成镜像
  2. glance image-list 查看生成的镜像
  3. glance image-download --file /root/cloudsave/csccvm.qcow2 239cb73a-f05a-46fd-affe-a28a50341168(imageID) --progress

OpenStacka运维题:

例题一、创建镜像

使用自己搭建的openstack云平台,使用http:// /cirros-0.3.4-x86_64-disk.img镜像,使用命令创建一个名为cirros的镜像。

  1. [root@controller /]#openstack image create --disk-format qcow2 --container-format bare --file /opt/iaas/images/CentOS_7.2_x86_64.qcow2 cirros --public --project admin
  2. *--disk-format 硬盘格式qcow2
  3. *--container-format 容器格式为bare
  4. *--public 公有镜像
  5. *--project 项目为admin
  6. *--file 后跟文件(镜像)地址
例题二、swift创建容器

在控制节点和计算节点上分别使用iaas-install-swift-controller.sh和iaas-install-swift-compute.sh脚本安装Swift服务并创建test容器。

  1. [root@controller /]# iaas-install-swift-controller.sh
  2. [root@controller /]# swift post test
  3. *使用swift post后跟容器名
例题三、实例类型管理

在OpenStack私有云平台上,使用命令创建一个名为Fmin,ID为1,内存为1024 MB,磁盘为10 GB,vcpu数量为1的云主机类型。

  1. [root@controller /opt/iaas/iaas-repo]# nova flavor-create Fmin 1 1024 10 1
  2. 格式:nova flavor-create <Name> <ID> <RAW><Disk> <vCPUs>
例题四、网络管理

在openstack私有云平台上,使用命令创建云主机外部网络extnet,子网extsubnet,虚拟机浮动 IP 网段为172.18.x.0/24(其中x是考位号), 网关为172.18.x.1,网络使用vlan模式。

  1. (1)首先创建外部网络
  2. [root@controller /opt/iaas/iaas-repo]# openstack network create --project admin --provider-network-type vlan --provider-physical-network provider --external extnet
  3. (2)创建外部网络子网
  4. [root@controller /opt/iaas/iaas-repo]# openstack subnet create --network extnet --subnet-range 172.18.X.0/24 --gateway 172.18.X.1 --allocation-pool start=172.18.X.10,end=172.18.X.200 --dhcp extsubnet
例题五、网络管理

在openstack私有云平台上,通过使用命令创建云主机内网intnet,子网intsubnet,虚拟机子网 IP 网段为10.10.x.0/24(其中x是考位号),网关为10.10.x.1。

  1. (1)首先创建内部网络
  2. [root@controller /opt/iaas/iaas-repo]# openstack network create --internal intnet
  3. (2)创建内部网络子网
  4. [root@controller /opt/iaas/iaas-repo]# openstack subnet create --subnet-range 10.10.x.0/24 --gateway 10.10.x.1 --dhcp --network intnet intsubnet
例题六、网络管理

添加名为 ext-router 的路由器,配置路由接口地址,完成内网子网intsubnet和外部网络extnet的连通。

  1. [root@controller /opt/iaas/iaas-repo]# openstack router create ext-router
  2. [root@controller /opt/iaas/iaas-repo]# openstack router add subnet ext-subnet intsubnet
  3. [root@controller /opt/iaas/iaas-repo]# openstack router set --enbale --enable-snat --external-gateway extnet ext-router
例题七、创建实例

在openstack私有云平台上,基于“cirros” 镜像、1vCPU/1G /10G 的flavor、 intsubnet的网络,绑定浮动IP,使用命令创建一台虚拟机VM1,启动VM1,并使用PC机能远程登录到VM1。

  1. [root@controller /opt/iaas/iaas-repo]# openstack flavor create --ram 1024 --disk 10 --vcpus 1 flavor
  2. [root@controller /opt/iaas/iaas-repo]# nova boot --flavor flavor --image cirros --nic net-name=intnet --security-groups default VM1
  3. (1) 创建浮动IP地址
  4. [root@controller /opt/iaas/iaas-repo]# neutron floatingip-create extent
  5. [root@controller /opt/iaas/iaas-repo]# neutron floatingip-list
  6. (2)绑定浮动IP
  7. [root@controller /opt/iaas/iaas-repo]# neutron floatingip-list
  8. [root@controller /opt/iaas/iaas-repo]# neutron port-list
  9. [root@controller /opt/iaas/iaas-repo]# neutron floatingip-associate --fixed-ip-address 10.10.x.3 9fb1f908-167c-4f48-9113-1d061136eff1(floatingip的ID) 2c773859-32cb-47f3-80c2-79432bd8e6e3(内网prot的ID)
  10. 连接上去需要修改安全组规则,如果可以使用图形化界面可以到Web删除
  11. [root@controller /opt/iaas/iaas-repo]#Openstack help security
  12. [root@controller /opt/iaas/iaas-repo]#Openstack security group list
  13. [root@controller /opt/iaas/iaas-repo]#Opensatck security group rule list
  14. [root@controller /opt/iaas/iaas-repo]#Openstack security group rule delete ID
  15. [root@controller /opt/iaas/iaas-repo]#Openstack help security group rule create
  16. [root@controller /opt/iaas/iaas-repo]#Openstack security group rule create --egress --ethertype IPv4 安全组ID 放行所有IPv4流量出去
  17. [root@controller /opt/iaas/iaas-repo]#Openstack security group rule create --ingress --ethertype IPv4 安全组ID 放行所有IPv4流量进入
  18. [root@controller /opt/iaas/iaas-repo]#Openstack security group rule create --ingress --protocol icmp 安全组ID 允许ICMP流量进去
  19. [root@controller /opt/iaas/iaas-repo]#Openstack security group rule create --egress --protocol icmp/udp 安全组ID 允许ICMP出口
例题八、卷管理

在openstack私有云平台上,创建一个名为“lvm”的卷类型,创建1块卷类型为lvm的40G云盘,并附加到虚拟机VM1上。

  1. [root@controller /opt/iaas/iaas-repo]# openstack volume type create lvm
  2. [root@controller /opt/iaas/iaas-repo]# openstack volume create --type lvm --size 40 v1
  3. [root@controller /opt/iaas/iaas-repo]# openstack server add volume VM1 v1
例题九、RAID磁盘阵列

在虚拟机VM1上,使用附加的云盘,划分为4个10G的分区,创建一个raid 5,其中1个分区作为热备。

  1. [root@controller /opt/iaas/iaas-repo]# fdisk /dev/vdb #输入m可以查看fdisk帮助,创建4个分区
  2. [root@controller /opt/iaas/iaas-repo]# Mdadm -Cv /dev/md5 -l 5 -n 3 -x 1 /dev/vdb{1,2,3,4}
  3. 或者使用一下命令指定热备盘:
  4. [root@controller /opt/iaas/iaas-repo]# Mdadm -Cv /dev/md5 -l 5 -n 3 /dev/vdb{1,2,3} --spare-devices=1 /dev/vdb4
例题十、Shell脚本释放实例

在Controller节点中编写/root/openstack/deletevm.sh的shell脚本,释放虚拟机VM1,执行脚本完成实例释放。

  1. [root@controller /opt/iaas/iaas-repo]# source /etc/keystone/admin-openrc.sh
  2. [root@controller /opt/iaas/iaas-repo]# vi /root/openstack/deletevm.sh
  3. openstack server stop vm1
  4. openstack server delete vm1
  5. [root@controller /opt/iaas/iaas-repo]# chmod 755 /root/openstack/deletevm.sh #给脚本执行权限
  6. [root@controller /root/openstack]# ./deletevm.sh #执行脚本
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/70518
推荐阅读
相关标签
  

闽ICP备14008679号