Implementación de OpenStack Placement

La ubicación proporciona scripts de ubicación-apiWSGI para ejecutar servicios con Apache, nginx u otros servidores web que admitan WSGI (el proxy de entrada de Python se implementa a través de nginx o apache).
Según la solución de empaquetado utilizada para implementar OpenStack, el script WSGI puede estar ubicado en / usr / bin o / usr / local / bin. El
servicio de colocación es un componente separado de la versión S y separado del servicio nova. La función es para recopilar la información de cada nodo. Recursos disponibles, escriba las estadísticas de recursos del nodo del nodo en mysql, y el servicio de programación nova llamará al servicio de ubicación. El puerto de escucha del servicio de ubicación es 8778

Uno, crear una instancia de base de datos y un usuario de base de datos

mysql -uroot -p
CREATE DATABASE placement;
GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'localhost' IDENTIFIED BY 'PLACEMENT_DBPASS';
GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'%' IDENTIFIED BY 'PLACEMENT_DBPASS';
flush privileges;
exit;

2. Cree un punto final para los usuarios del servicio de ubicación y la API

  • Crear usuarios de ubicación
openstack user create --domain default --password PLACEMENT_PASS placement
  • Otorgar permisos de administrador a los usuarios de la ubicación para el proyecto de servicio.
openstack role add --project service --user placement admin
  • Crear un servicio de colocación, el tipo de servicio es colocación.
openstack service create --name placement --description "Placement API" placement
  • Registre el puerto API en el servicio de colocación; la información registrada se escribirá en mysql
openstack endpoint create --region RegionOne placement public http://ct:8778
openstack endpoint create --region RegionOne placement internal http://ct:8778
openstack endpoint create --region RegionOne placement admin http://ct:8778

Tres, instale el servicio de colocación

yum -y install openstack-placement-api
  • Modificar el archivo de configuración de la ubicación
cp -a /etc/placement/placement.conf{,.bak}
grep -Ev '^$|#' /etc/placement/placement.conf.bak > /etc/placement/placement.conf
openstack-config --set /etc/placement/placement.conf placement_database connection mysql+pymysql://placement:PLACEMENT_DBPASS@ct/placement
openstack-config --set /etc/placement/placement.conf api auth_strategy keystone
openstack-config --set /etc/placement/placement.conf keystone_authtoken auth_url  http://ct:5000/v3
openstack-config --set /etc/placement/placement.conf keystone_authtoken memcached_servers ct:11211
openstack-config --set /etc/placement/placement.conf keystone_authtoken auth_type password
openstack-config --set /etc/placement/placement.conf keystone_authtoken project_domain_name Default
openstack-config --set /etc/placement/placement.conf keystone_authtoken user_domain_name Default
openstack-config --set /etc/placement/placement.conf keystone_authtoken project_name service
openstack-config --set /etc/placement/placement.conf keystone_authtoken username placement
openstack-config --set /etc/placement/placement.conf keystone_authtoken password PLACEMENT_PASS
  • Importar la base de datos
su -s /bin/sh -c "placement-manage db sync" placement

Cuarto, modifique el archivo de configuración de Apache

vim /etc/httpd/conf.d/00-placement-api.conf

##末行添加##
<Directory /usr/bin>
<IfVersion >= 2.4>
	Require all granted
</IfVersion>
<IfVersion < 2.4>
	Order allow,deny
	Allow from all
</IfVersion>
</Directory>
  • Reiniciar apache
systemctl restart httpd

Cinco, prueba

  • acceso de prueba de rizo
curl ct:8778
  • Ver ocupación del puerto (netstat, lsof)
netstat -natp | grep 8778
  • Verificar el estado de la ubicación
placement-status upgrade check

Supongo que te gusta

Origin blog.csdn.net/weixin_51614581/article/details/115024564
Recomendado
Clasificación