云计算实训(实验5、实验6)

打印 上一主题 下一主题

主题 1003|帖子 1003|积分 3011

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
继上篇云计算实训(实验3、实验4)
(!需要留意的是,上两篇实验1、2、3、4以及这篇及后面的两篇文章,文章中controller202为自取名字,需要按各字的定名方式去修改呦!)
实验5 控制节点安装 Placement 服务
实验目标:掌握搭建Openstack Placement组件。
实验步调:
1、使用root用户登录控制节点(Controller)。输出Hostname,确认所在节点是控制节点。

2、输入‘mysql -u root -p’命令,使用root用户登录MariaDB数据库。创建placement库,placement用户和授权。
  1. mysql -u root -p
复制代码
  1. CREATE DATABASE placement;
  2. GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'localhost' IDENTIFIED BY 'PLACEMENT_DBPASS';
  3. GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'%' IDENTIFIED BY 'PLACEMENT_DBPASS';
  4. exit;
复制代码

3、输入相关命令语句,在Keystone创建placement用户及关联角色。
  1. source /etc/keystone/admin-openrc
  2. openstack user create --domain default --password PLACEMENT_PASS placement
  3. openstack role add --project service --user placement admin
复制代码

4、输入相关命令语句,在Keystone上创建placement Service和endpoint。
  1. openstack service create --name placement --description "Placement API" placement
  2. openstack endpoint create --region RegionOne placement public http://controller202:8778
  3. openstack endpoint create --region RegionOne placement internal http://controller202:8778
  4. openstack endpoint create --region RegionOne placement admin http://controller202:8778
复制代码


   留意!这里的 service 不能重复创建,运行命令openstack service list应该只能查看到1个 placement 的 service,假如有多个可以用 openstack service delete '更换为service ID'命令删除。这里 endpoint 不能重复创建,运行命令openstack endpoint list应该只能查看到3个 placement 的 endpoint,假如有多个可以用 openstack endpoint delete '更换为endpoint ID'命令删除。
   5、输入‘dnf install openstack-placement-api -y’命令语句,安装plancement-api服务相应软件包。
  1. dnf install openstack-placement-api -y
复制代码
6、输入‘cp /etc/placement/placement.conf{,.bak}’命令语句,备份placement配置文件。
  1. cp /etc/placement/placement.conf{,.bak}
复制代码
7、输入相关命令语句扫除配置文件注释。
  1. grep '^[a-Z\[]' /etc/placement/placement.conf.bak > /etc/placement/placement.conf
复制代码
8、输入相关命令语句设置API配置项。
  1. openstack-config --set /etc/placement/placement.conf  placement_database connection mysql+pymysql://placement:PLACEMENT_DBPASS@controller202/placement
  2. openstack-config --set /etc/placement/placement.conf  auth_strategy keystone
  3. openstack-config --set /etc/placement/placement.conf  keystone_authtoken auth_url http://controller202:5000/v3
  4. openstack-config --set /etc/placement/placement.conf  keystone_authtoken memcached_servers controller202:11211
  5. openstack-config --set /etc/placement/placement.conf  keystone_authtoken auth_type password
  6. openstack-config --set /etc/placement/placement.conf  keystone_authtoken project_domain_name Default
  7. openstack-config --set /etc/placement/placement.conf  keystone_authtoken user_domain_name Default
  8. openstack-config --set /etc/placement/placement.conf  keystone_authtoken project_name service
  9. openstack-config --set /etc/placement/placement.conf  keystone_authtoken username placement
  10. openstack-config --set /etc/placement/placement.conf  keystone_authtoken password PLACEMENT_PASS
复制代码
9、输入‘su -s /bin/sh -c "placement-manage db sync" placement’语句同步placement数据库。
  1. su -s /bin/sh -c "placement-manage db sync" placement
复制代码
10、输入‘mysql -u placement -pPLACEMENT_DBPASS’命令进入MariaDB查看是否有表格出现。有表格则数据库同步成功。
  1. mysql -u placement -pPLACEMENT_DBPASS
复制代码
  1. use placement;
  2. show tables;
复制代码

11、输入‘exit’退出MariaDB。

12、输入‘vim /etc/httpd/conf.d/00-placement-api.conf’命令,修改placement在httpd的相关配置,并在</VirtualHost>标签前参加相关内容。
  1. vim /etc/httpd/conf.d/00-placement-api.conf
复制代码
在</VirtualHost>标签前参加相关内容。
  1. <Directory /usr/bin>
  2.     <IfVersion >= 2.4>
  3.         Require all granted
  4.     </IfVersion>
  5.     <IfVersion < 2.4>
  6.         Order allow,deny
  7.         Allow from all
  8.     </IfVersion>
  9. </Directory>
复制代码

13、输入‘systemctl restart httpd’命令,重启httpd服务。
  1. systemctl restart httpd
复制代码
14、输入‘source /etc/keystone/admin-openrc 和openstack service list |grep -E "ID|placement" ’命令,查询placement service。
  1. source /etc/keystone/admin-openrc
  2. openstack service list |grep -E "ID|placement"
复制代码

15、输入‘source /etc/keystone/admin-openrc 和openstack endpoint list |grep -E "ID|placement" ’命令,查询placement endpoint。
  1. source /etc/keystone/admin-openrc
  2. openstack endpoint list |grep -E "ID|placement"
复制代码

16、输入‘source /etc/keystone/admin-openrc 和openstack user list |grep -E "ID|placement" ’命令,查询placement user。
  1. source /etc/keystone/admin-openrc
  2. openstack user list |grep -E "ID|placement"
复制代码

17、输入‘ netstat -tulpn|grep 8778 ’命令,查看8778端口是否有服务运行。
  1. netstat -tulpn|grep 8778
复制代码

18、输入‘opst-proc-show.sh’命令,查看OpenStack相关服务是否是active的状态。
  1. opst-proc-show.sh
复制代码

实验6 安装Nova计算服务
实验6.1 控制节点安装 nova 服务
实验目标:掌握搭建 Openstack Nova 组件。
实验步调:
1、使用root用户登录控制节点(Controller)。输出Hostname,确认所在节点是控制节点。

2、输入‘mysql -u root -p’命令使用root用户登录MariaDB数据库。创建nova_api和nova库,nova 用户和授权。
  1. mysql -u root -p
复制代码
  1. CREATE DATABASE nova_api;
  2. CREATE DATABASE nova;
  3. CREATE DATABASE nova_cell0;
  4. GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost'  IDENTIFIED BY 'NOVA_DBPASS';
  5. GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%'  IDENTIFIED BY 'NOVA_DBPASS';
  6. GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost'  IDENTIFIED BY 'NOVA_DBPASS';
  7. GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';
  8. GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';
  9. GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%'  IDENTIFIED BY 'NOVA_DBPASS';
  10. exit;
复制代码

3、输入相关命令,在Keystone创建系统用户nova,并关联admin 角色。
  1. source /etc/keystone/admin-openrc
  2. openstack user create --domain default --password NOVA_PASS nova
  3. openstack role add --project service --user nova admin
复制代码

4、输入相关命令,在Keystone上创建Nova Service和Endpoint。
  1. source /etc/keystone/admin-openrc
  2. openstack service create --name nova  --description "OpenStack Compute" compute
  3. openstack endpoint create --region RegionOne compute public http://controller202:8774/v2.1
  4. openstack endpoint create --region RegionOne compute internal http://controller202:8774/v2.1
  5. openstack endpoint create --region RegionOne compute admin http://controller202:8774/v2.1
复制代码


   留意,这里的 service 不能重复创建,运行命令openstack service list应该只能查看到1个 Nova 的 service,假如有多个可以用 openstack service delete '更换为service ID'命令删除。这里 endpoint 不能重复创建,运行命令openstack endpoint list应该只能查看到3个 Nova 的 endpoint,假如有多个可以用 openstack endpoint delete '更换为endpoint ID'命令删除。
  5、输入相关命令,安装Nova服务相应软件包。
  1. dnf install openstack-nova-api openstack-nova-conductor openstack-nova-novncproxy openstack-nova-scheduler -y
复制代码
6、输入相关命令,备份Nova的配置文件。
  1. cp /etc/nova/nova.conf{,.bak}
  2. grep '^[a-Z\[]' /etc/nova/nova.conf.bak >/etc/nova/nova.conf
复制代码
7、输入相关命令,修改相应服务的配置文件。
  1. openstack-config --set /etc/nova/nova.conf  DEFAULT enabled_apis  osapi_compute,metadata
  2. openstack-config --set /etc/nova/nova.conf  DEFAULT rpc_backend  rabbit
  3. openstack-config --set /etc/nova/nova.conf  DEFAULT auth_strategy  keystone
  4. openstack-config --set /etc/nova/nova.conf  DEFAULT my_ip  10.0.0.11
  5. openstack-config --set /etc/nova/nova.conf  DEFAULT use_neutron  True
  6. openstack-config --set /etc/nova/nova.conf  DEFAULT firewall_driver  nova.virt.firewall.NoopFirewallDriver
  7. openstack-config --set /etc/nova/nova.conf  DEFAULT transport_url rabbit://openstack:RABBIT_PASS@controller202:5672/
  8. openstack-config --set /etc/nova/nova.conf  DEFAULT verbose  True
  9. openstack-config --set /etc/nova/nova.conf  DEFAULT debug  True
  10. openstack-config --set /etc/nova/nova.conf  DEFAULT log_dir  /var/log/nova
  11. openstack-config --set /etc/nova/nova.conf  api_database connection  mysql+pymysql://nova:NOVA_DBPASS@controller202/nova_api
  12. openstack-config --set /etc/nova/nova.conf  database  connection  mysql+pymysql://nova:NOVA_DBPASS@controller202/nova
  13. openstack-config --set /etc/nova/nova.conf  glance api_servers  http://controller202:9292
  14. openstack-config --set /etc/nova/nova.conf  api auth_strategy keystone
  15. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  www_authenticate_uri  http://controller202:5000
  16. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  auth_url  http://controller202:5000
  17. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  memcached_servers  controller202:11211
  18. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  auth_type  password
  19. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  project_domain_name  Default
  20. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  user_domain_name  Default
  21. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  project_name  service
  22. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  username  nova
  23. openstack-config --set /etc/nova/nova.conf  keystone_authtoken  password  NOVA_PASS
  24. openstack-config --set /etc/nova/nova.conf  oslo_concurrency lock_path  /var/lib/nova/tmp
  25. openstack-config --set /etc/nova/nova.conf  vnc enabled true
  26. openstack-config --set /etc/nova/nova.conf  vnc server_listen  '$my_ip'
  27. openstack-config --set /etc/nova/nova.conf  vnc server_proxyclient_address  '$my_ip'
  28. openstack-config --set /etc/nova/nova.conf service_user send_service_user_token  true
  29. openstack-config --set /etc/nova/nova.conf service_user auth_url  http://controller202:5000/identity
  30. openstack-config --set /etc/nova/nova.conf service_user auth_strategy  keystone
  31. openstack-config --set /etc/nova/nova.conf service_user auth_type  password
  32. openstack-config --set /etc/nova/nova.conf service_user project_domain_name  Default
  33. openstack-config --set /etc/nova/nova.conf service_user project_name  service
  34. openstack-config --set /etc/nova/nova.conf service_user user_domain_name  Default
  35. openstack-config --set /etc/nova/nova.conf service_user username  nova
  36. openstack-config --set /etc/nova/nova.conf service_user password  NOVA_PASS
  37. openstack-config --set /etc/nova/nova.conf placement region_name  RegionOne
  38. openstack-config --set /etc/nova/nova.conf placement project_domain_name  Default
  39. openstack-config --set /etc/nova/nova.conf placement project_name  service
  40. openstack-config --set /etc/nova/nova.conf placement auth_type  password
  41. openstack-config --set /etc/nova/nova.conf placement user_domain_name  Default
  42. openstack-config --set /etc/nova/nova.conf placement auth_url  http://controller202:5000/v3
  43. openstack-config --set /etc/nova/nova.conf placement username  placement
  44. openstack-config --set /etc/nova/nova.conf placement password  PLACEMENT_PASS
复制代码
8、输入‘su -s /bin/sh -c "nova-manage api_db sync" nova’命令,同步nova_api数据库。
  1. su -s /bin/sh -c "nova-manage api_db sync" nova
复制代码
9、输入‘su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova’命令,注册cell0数据库。
  1. su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova
复制代码
10、输入‘su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova’命令,创建一个名为cell1的 cell(单元)。
  1. su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
复制代码

11、输入‘su -s /bin/sh -c "nova-manage cell_v2 list_cells" nova’命令,查看cell0和cell1。
  1. su -s /bin/sh -c "nova-manage cell_v2 list_cells" nova
复制代码

12、输入‘su -s /bin/sh -c "nova-manage api_db sync" nova’命令,同步nova_api数据库。
  1. su -s /bin/sh -c "nova-manage api_db sync" nova
复制代码
13、输入‘mysql -u nova -pNOVA_DBPASS’命令,进入MariaDB查看是否有表格出现。有则体现数据库同步成功。
  1. mysql -u nova -pNOVA_DBPASS
复制代码
  1. use nova;
  2. show tables;
  3. use nova_api;
  4. show tables;
  5. use nova_cell0;
  6. show tables;
复制代码


14、输入‘exit’,退出MariaDB。
15、输入相关命令,启动Nova系列服务,并设置为开机启动。
  1. systemctl enable \
  2.     openstack-nova-api \
  3.     openstack-nova-scheduler \
  4.     openstack-nova-conductor \
  5.     openstack-nova-novncproxy
  6. systemctl start \
  7.     openstack-nova-api \
  8.     openstack-nova-scheduler \
  9.     openstack-nova-conductor \
  10.     openstack-nova-novncproxy
复制代码


实验6.2 计算节点安装 nova 服务
实验目标:掌握搭建 Openstack Nova 组件。
实验步调:
1、使用root用户登录计算节点(Computer)。输出Hostname,确认所在节点是计算节点。

2、输入相关命令,安装nova-compute和Openstack-utils。
  1. dnf install /opt/repo/openstack-yoga/python3-sqlalchemy-1.4.31-1.el8.x86_64.rpm -y
  2. dnf install openstack-nova-compute -y
  3. dnf install openstack-utils -y
复制代码
3、输入相关命令,备份Nova的配置文件。
  1. cp /etc/nova/nova.conf{,.bak}
  2. grep '^[a-Z\[]' /etc/nova/nova.conf.bak >/etc/nova/nova.conf
复制代码
4、输入相关命令,修改相应服务的配置文件。
  1. openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis  osapi_compute,metadata
  2. openstack-config --set /etc/nova/nova.conf DEFAULT transport_url  rabbit://openstack:RABBIT_PASS@controller202
  3. openstack-config --set /etc/nova/nova.conf DEFAULT my_ip  10.0.0.31
  4. openstack-config --set /etc/nova/nova.conf DEFAULT compute_driver libvirt.LibvirtDriver
  5. openstack-config --set /etc/nova/nova.conf  DEFAULT verbose  True
  6. openstack-config --set /etc/nova/nova.conf  DEFAULT debug  True
  7. openstack-config --set /etc/nova/nova.conf  DEFAULT log_dir  /var/log/nova
  8. openstack-config --set /etc/nova/nova.conf  DEFAULT instances_path /var/lib/nova/instances
  9. openstack-config --set /etc/nova/nova.conf api auth_strategy  keystone
  10. openstack-config --set /etc/nova/nova.conf keystone_authtoken www_authenticate_uri  http://controller202:5000/
  11. openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_url  http://controller202:5000/
  12. openstack-config --set /etc/nova/nova.conf keystone_authtoken memcached_servers  controller202:11211
  13. openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_type  password
  14. openstack-config --set /etc/nova/nova.conf keystone_authtoken project_domain_name  Default
  15. openstack-config --set /etc/nova/nova.conf keystone_authtoken user_domain_name  Default
  16. openstack-config --set /etc/nova/nova.conf keystone_authtoken project_name  service
  17. openstack-config --set /etc/nova/nova.conf keystone_authtoken username  nova
  18. openstack-config --set /etc/nova/nova.conf keystone_authtoken password  NOVA_PASS
  19. openstack-config --set /etc/nova/nova.conf service_user send_service_user_token  true
  20. openstack-config --set /etc/nova/nova.conf service_user auth_url  http://controller202:5000/identity
  21. openstack-config --set /etc/nova/nova.conf service_user auth_strategy  keystone
  22. openstack-config --set /etc/nova/nova.conf service_user auth_type  password
  23. openstack-config --set /etc/nova/nova.conf service_user project_domain_name  Default
  24. openstack-config --set /etc/nova/nova.conf service_user project_name  service
  25. openstack-config --set /etc/nova/nova.conf service_user user_domain_name  Default
  26. openstack-config --set /etc/nova/nova.conf service_user username  nova
  27. openstack-config --set /etc/nova/nova.conf service_user password  NOVA_PASS
  28. openstack-config --set /etc/nova/nova.conf vnc enabled  true
  29. openstack-config --set /etc/nova/nova.conf vnc server_listen  0.0.0.0
  30. openstack-config --set /etc/nova/nova.conf vnc server_proxyclient_address  '$my_ip'
  31. openstack-config --set /etc/nova/nova.conf vnc novncproxy_base_url  http://10.0.0.11:6080/vnc_auto.html
  32. openstack-config --set /etc/nova/nova.conf glance api_servers  http://controller202:9292
  33. openstack-config --set /etc/nova/nova.conf oslo_concurrency lock_path  /var/lib/nova/tmp
  34. openstack-config --set /etc/nova/nova.conf placement region_name  RegionOne
  35. openstack-config --set /etc/nova/nova.conf placement project_domain_name  Default
  36. openstack-config --set /etc/nova/nova.conf placement project_name  service
  37. openstack-config --set /etc/nova/nova.conf placement auth_type  password
  38. openstack-config --set /etc/nova/nova.conf placement user_domain_name  Default
  39. openstack-config --set /etc/nova/nova.conf placement auth_url  http://controller202:5000/v3
  40. openstack-config --set /etc/nova/nova.conf placement username  placement
  41. openstack-config --set /etc/nova/nova.conf placement password  PLACEMENT_PASS
  42. openstack-config --set /etc/nova/nova.conf libvirt virt_type  qemu
  43. openstack-config --set /etc/nova/nova.conf libvirt cpu_mode none
复制代码
5、输入相关命令,启动libvirtd服务,并设置为开机启动。
  1. systemctl enable libvirtd
  2. systemctl enable openstack-nova-compute
  3. systemctl start libvirtd
  4. systemctl start openstack-nova-compute
复制代码

6、输入‘opst-proc-show.sh’命令查看OpenStack相关服务是否是active的状态。
  1. opst-proc-show.sh
复制代码

7、输入‘grep -o controller202 /etc/nova/nova.conf|wc -l’命令,验证nova.conf配置文件里面controller出现的次数。
  1. grep -o controller202 /etc/nova/nova.conf|wc -l
复制代码


实验6.3 控制节点验证 nova 服务是否安装正确
实验目标:掌握搭建 Openstack Nova 组件。
实验步调:
1、使用root用户登录控制节点(Controller)。输出Hostname,确认所在节点是控制节点。

2、输入‘opst-proc-show.sh’命令,查看OpenStack相关服务是否是active的状态。
  1. opst-proc-show.sh
复制代码


3、输入‘systemctl status openstack-nova-compute’命令,查抄openstack-nova-compute服务是否运行在控制节点。
  1. systemctl status openstack-nova-compute
复制代码

4、输入‘grep -o controller202 /etc/nova/nova.conf|wc -l’命令,验证nova.conf配置文件里面controller出现的次数。
  1. grep -o controller202 /etc/nova/nova.conf|wc -l
复制代码

5、输入‘source /etc/keystone/admin-openrc 和openstack service list |grep -E "ID|nova"’命令,查询nova service。
  1. source /etc/keystone/admin-openrc
  2. openstack service list |grep -E "ID|nova"
复制代码

6、输入‘source /etc/keystone/admin-openrc 和openstack endpoint list |grep -E "ID|nova"’命令,查询nova endpoint。
  1. source /etc/keystone/admin-openrc
  2. openstack endpoint list |grep -E "ID|nova"
复制代码

7、输入‘source /etc/keystone/admin-openrc 和openstack user list |grep -E "ID|nova"’命令,查询nova user。
  1. source /etc/keystone/admin-openrc
  2. openstack user list |grep -E "ID|nova"
复制代码

8、输入‘systemctl -a|grep -E 'UNIT|nova'
’命令,查看Nova 4个服务状态是否已启用(active)。
  1. systemctl -a|grep -E 'UNIT|nova'
复制代码

9、输入‘openstack compute service list  --service nova-compute’命令,验证Compute服务是否和步调4天生的一致。
  1. openstack compute service list  --service nova-compute
复制代码

10、输入‘su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova’命令,发现计算节点主机。
  1. su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova
复制代码





免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用多少眼泪才能让你相信

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表