11.2. Configure the Data Processing Service
- Configure the Data Processing service database connection.
- Configure the Data Processing API service to authenticate with the Identity service.
- Configure the firewall to allow service traffic for the Data Processing service (through port
8386).
11.2.1. Create the Data Processing Service Database
/etc/sahara/sahara.conf file. It must be updated to point to a valid database server before starting the Data Processing API service (openstack-sahara-api).
Procedure 11.1. Creating and Configuring a Database for the Data Processing API Service
- Connect to the database service:
#mysql -u root -p - Create the
saharadatabase:mysql>CREATE DATABASE sahara; - Create a
saharadatabase user and grant the user access to thesaharadatabase:mysql>GRANT ALL ON sahara.* TO 'sahara'@'%' IDENTIFIED BY 'PASSWORD';mysql>GRANT ALL ON sahara.* TO 'sahara'@'localhost' IDENTIFIED BY 'PASSWORD';Replace PASSWORD with a secure password that will be used to authenticate with the database server as this user. - Exit the
mysqlclient:mysql>quit - Set the value of the
sql_connectionconfiguration key:#openstack-config --set /etc/sahara/sahara.conf \database connection mysql://sahara:PASSWORD@IP/saharaReplace the following values:- Replace PASS with the password of the database user.
- Replace IP with the IP address or host name of the server hosting the database service.
- Configure the schema of the
saharadatabase:#sahara-db-manage --config-file /etc/sahara/sahara.conf upgrade head
Important
11.2.2. Create the Data Processing Service Identity Records
services tenant. For more information, see:
keystonerc_admin file and on which the keystone command-line utility is installed.
Procedure 11.2. Creating Identity Records for the Data Processing Service
- Set up the shell to access keystone as the administrative user:
#source ~/keystonerc_admin - Create the
saharauser:[(keystone_admin)]#openstack user create --password PASSWORD sahara+----------+----------------------------------+ | Field | Value | +----------+----------------------------------+ | email | None | | enabled | True | | id | 1fc5b7ac48b646ab850854e565ac1cfc | | name | sahara | | username | sahara | +----------+----------------------------------+Replace PASSWORD with a password that will be used by the Data Processing service when authenticating with the Identity service. - Link the
saharauser and theadminrole together within the context of theservicestenant:[(keystone_admin)]#openstack role add --project services --user sahara admin - Create the
saharaservice entry:[(keystone_admin)]#openstack service create --name sahara \--description "OpenStack Data Processing" \data-processing - Create the
saharaendpoint entry:[(keystone_admin)]#openstack endpoint create \--publicurl 'http://SAHARA_HOST:8386/v1.1/%(tenant_id)s' \--adminurl 'http://SAHARA_HOST:8386/v1.1/%(tenant_id)s' \--internalurl 'http://SAHARA_HOST:8386/v1.1/%(tenant_id)s' \--region RegionOne \saharaReplace SAHARA_HOST with the IP address or fully qualified domain name of the server hosting the Data Processing service.Note
By default, the endpoint is created in the default region,RegionOne. This is a case-sensitive value. To specify a different region when creating an endpoint, use the--regionargument to provide it.See Section 3.5.1, “Service Regions” for more information.
11.2.3. Configure Data Processing Service Authentication
openstack-sahara-api) to use the Identity service for authentication. All steps in this procedure must be performed on the server hosting the Data Processing API service, while logged in as the root user.
Procedure 11.3. Configuring the Data Processing API Service to Authenticate through the Identity Service
- Set the Identity service host that the Data Processing API service must use:
#openstack-config --set /etc/sahara/sahara.conf \keystone_authtoken auth_uri http://IP:5000/v2.0/#openstack-config --set /etc/sahara/sahara.conf \keystone_authtoken identity_uri http://IP:35357Replace IP with the IP address of the server hosting the Identity service. - Set the Data Processing API service to authenticate as the correct tenant:
#openstack-config --set /etc/sahara/sahara.conf \keystone_authtoken admin_tenant_name servicesReplace services with the name of the tenant created for the use of the Data Processing service. Examples in this guide useservices. - Set the Data Processing API service to authenticate using the
saharaadministrative user account:#openstack-config --set /etc/sahara/sahara.conf \keystone_authtoken admin_user sahara - Set the Data Processing API service to use the correct
saharaadministrative user account password:#openstack-config --set /etc/sahara/sahara.conf \keystone_authtoken admin_password PASSWORDReplace PASSWORD with the password set when thesaharauser was created.
11.2.4. Configure the Firewall to Allow OpenStack Data Processing Service Traffic
8386. The firewall on the service node must be configured to allow network traffic on this port. All steps in this procedure must be performed on the server hosting the Data Processing service, while logged in as the root user.
Procedure 11.4. Configuring the Firewall to Allow Data Processing Service Traffic
- Open the
/etc/sysconfig/iptablesfile in a text editor. - Add an INPUT rule allowing TCP traffic on port
8386. The new rule must appear before any INPUT rules that REJECT traffic:-A INPUT -p tcp -m multiport --dports 8386 -j ACCEPT
- Save the changes to the
/etc/sysconfig/iptablesfile. - Restart the
iptablesservice to ensure that the change takes effect:#systemctl restart iptables.service
