Deploying a virtual machine system
This chapter describes how to install a system by deploying a number of software instances.
After setting up all the instances that you want, log into the Admin App to deploy the system.
Items you need
You need an HCI OVF template suitable for the type of system you want to install:
- For a production HCI VM system, you need an Hitachi Content Intelligence OVF template that you've configured for your environment. For information on creating one, see Creating a production OVF template.
-
For a demonstration HCI VM system, you need the Hitachi Content Intelligence-OVF-EXAMPLE-<version-number>.tgz file provided by Hitachi Vantara. This archive file includes the hci_vm.ovf used to create new virtual machine instances.
Decide how many instances to deploy
The minimum for a production system is four instances.
Procedure
Decide how many instances you need.
Select the servers or virtual machines in your environment that you intend to use as HCI instances.
Configure your networking environment
Procedure
Determine what ports each HCI service should use. You can use the default ports for each service or specify different ones.
In either case, these restrictions apply:- Every port must be accessible from all instances in the system.
- Some ports must be accessible from outside the system.
- All port values must be unique; no two services, whether System services or HCI services, can share the same port.
Determine what types of networks, either internal or external, to use for each service.
If you're using both internal and external networks, each instance in the system must have IP addresses on both your internal and external networks.
Deploy a new virtual machine for each instance
Procedure
Extract the
Hitachi Content Intelligence-OVF-EXAMPLE-<version-number>.tgz
file to a folder that's accessible by your virtual machine host.Create a new virtual machine by deploying the OVF template. For more information, see the documentation for your virtual machine host.
After the virtual machine has been deployed, power it on and open a console connection to it.
At the localhost login prompt, type:
hci
When prompted, enter a password for the
hci
user account.ImportantDo not lose this password.NoteThe password for theroot
user account isChang3Me!
Repeat this procedure for each virtual machine you want to create.
Set a static IP for the new instance
Procedure
If you don't know the Ethernet port name for the virtual machine, run this command:
ifconfig
Change directories:
cd /etc/sysconfig/network-scripts/
Identify the configuration file for Ethernet port.
The file name has this format:ifcfg-<Ethernet-port-name>
In the Ethernet configuration file, specify values for IPADDR, GATEWAY, and DNS1. Leave the other values as they are.
Restart the network. Run:
sudo /etc/init.d/network restart
Verify that the Ethernet configuration was updated correctly. Run:
ifconfig
Optional: Select master instances
If you are installing a multi-instance system, the system must have either one or three master instances, regardless of the total number of instances it includes.
You need to select which of the instances in your system will be master instances.
If you are installing a multi-instance system, the system must have either one or three master instances, regardless of the total number of instances it includes.
- For a production system, use three master instances.
- You cannot add master instances to a system after it's installed. You can, however, add any number of worker instances.
If you are deploying a single-instance system, that instance will automatically be configured as a master instance and run all services for the system.
Procedure
Select which of the instances in your system are intended as master instances.
Make note of the master instance IP addresses.
NoteTo ensure system availability, run master instances on separate physical hardware from each other, if possible.
(Optional) Set up networking for System services
You cannot change networking for System services after running the run
script or after starting Hitachi Content Intelligence.service
using systemd
.
Procedure
On each virtual machine that is to be an Hitachi Content Intelligence instance, open the /opt/hci/config/network.config file in a text editor.
The file contains two types of lines for each service:- Network type assignments:
com.hds.ensemble.plugins.service.<service-name>_interface=[internal|external]
- Port number assignments:
com.hds.ensemble.plugins.service.<service-name>.port.<portname>=<port-number>
- Network type assignments:
Optionally, specify new port values for the services you want to configure.
Note- Ensure that the network.config file is identical on all Hitachi Content Intelligence instances.
- If you reconfigure service ports, make sure that each port value you assign is unique across all services, both System services and Hitachi Content Intelligence services.
Run
configFirewall
.WARNINGThe HCI product uses both internal and external ports to operate its services and the system-internal ports do not have authentication or Transport Layer Security (TLS). At a minimum, use your firewall to make these ports accesible only to other instances in the system. If any users have root access to your system, your network and its systems are vulnerable to unauthorized use.
To secure your data and HCI system, you need to manually use iptables or firewalld to restrict ports to only local commnuications that the HCI installer otherwise leaves open. See System-internal ports and Example HCI firewall setup.
Additionally, you can use Internet Protocol Security (IPSec) or an equivalent to secure internode communications. Consult with your system administrator to configure your network with this added security.
Run the setup script on each server or virtual machine
In the /opt/hci/ folder on each virtual machine, run the setup script:
sudo /opt/hci/bin/setup -i <static-ip-address-for-this-instances> -m<list-of-master-instance-IPs>
For example:
sudo /opt/hci/bin/setup -i 192.0.2.4 -m192.0.2.0,192.0.2.1,192.0.2.3
-
When installing a multi-instance system, make sure you specify the same list of master instance IP addesses on every instance that you are installing.
- Do not separate IP addresses with spaces.
Start the application on each virtual machine
Procedure
Start the application script
run
using whatever methods you usually use to run scripts.ImportantEnsure that the method you use can keep therun
script running and can automatically restart it in the event of a server restart or other availability event.Here are some examples of how you can start the script:
- You can run the script in the foreground:
sudo /<path>/hci/bin/run
When you run the
run
script this way, the script does not automatically complete, but instead remains running in the foreground. - You can run the script as a service using
systemd
:- Copy the HCI.service file to the appropriate location for your OS. For example:
cp /<path>/bin/HCI.service/etc/systemd/system
- Enable and start the search service:
sudo systemctl enable HCI.service sudo systemctl start HCI.service
- Copy the HCI.service file to the appropriate location for your OS. For example:
NoteWhen you enable the search service, systemctl may display this message:The unit files have no [Install] section. They are not meant to be enabled using systemctl. Possible reasons for having this kind of units are:
1) A unit may be statically enabled by being symlinked from another unit's .wants/ or .requires/ directory.
2) A unit's purpose may be to act as a helper for some other unit which has a requirement dependency on it.
Depending on your OS, the search service may or may not have successfully been enabled.3) A unit may be started when needed via activation (socket, path, timer, D-Bus, udev, scripted systemctl call, ...).
To avoid this, make sure that you moved the Hitachi Content Intelligence.service to the appropriate location, typically
/etc/systemd/system
.- You can run the script in the foreground:
Optional: Configure NTP
Procedure
Configure NTP (network time protocol) so that each instance uses the same time source.
For information on NTP, see http://support.ntp.org/.
Access the deployment wizard
After creating all of your instances, you need to go to the service deployment wizard in the Admin App.
Alternatively, if you configured the System services networking incorrectly, the Admin App may fail to appear. This can happen, for example, if the network.config
file is not identical on all instances. For error information, view the file /<path>/hci/config/cluster.config
or the output information logged by the run
script.
To fix this issue, do the following:
- If you are using the Hitachi Content Intelligence-OVF-EXAMPLE-<version-number>.tgz file provided by Hitachi Vantara, extract it to a directory that's accessible by your virtual machine host.
- If you've created your own HCI OVF template, store it and its associated files in a directory that's accessible by your virtual machine host.
To access the service deployment wizard:
Procedure
Open a web browser and go to:
https://instance_ip_address:8000
On the Welcome page, set a password for the admin user account. Then click on the Set Admin Password button.
ImportantDo not lose or forget this password.On the Licensing page:
- If you have your purchased license file, drag and drop it into the Upload License section.
- If you've purchased a license but have not yet received it, make note of the value in the System ID section on the Licensing page and contact your sales representative.
- To use the system for a limited amount of time with the pre-installed trial license, click on the Next button.
If for some reason the trial license failed to install, there is a copy included in the HCI-<version-number>.tgz installation package that you can upload to the Licensing page. The trial license is located in the installation package at:
/product/<version>/trial-<version>.plk
On the Set Cluster Hostname/IP page, specify the hostname for your system. Omitting this can cause links in the Admin App to function incorrectly.
On the Choose Deployment page, select the HCI deployment type that you purchased, either Hitachi Content Search or HCM. Then click on the Continue button.
The Confirm Cluster Topology page shows all detected instances.If your system includes multiple instances, make sure that all instances that you expect to see are listed. Select Instances and review the Instances page. If instances are not displayed, click the Click here link in the Instance Discovery panel until they appear.
If you want to change networking settings for the HCI services, see (Optional) Configure service networking.
ImportantIf you want to reconfigure networking for the HCI services, you must do this now, before deploying the system. For information on configuration, see Networking.
(Optional) Configure service networking
To change networking settings for the Hitachi Content Intelligence services:
Procedure
Click the Click here link in the Advanced Network Configuration section.
On the Services tab, select a service to configure.
Optionally, on the Networks tab, configure the ports that the service should use.
NoteIf you reconfigure service ports, make sure that each port value you assign is unique across all services, both System services and Hitachi Content Intelligence services.
Deploy the system
Procedure
Click Deploy Single Instance or Deploy Cluster (multi-instance), as appropriate.
The system deployment starts.Click the link View Deployment Details to view the progress of the deployment.
Distribute services among system instances
By default, when you install and deploy a multi-instance system, the system automatically runs each service (except Dashboard) on its required number of instances. For example, the Index service runs on three instances.
However, if you've installed more than four instances, some instances might not be running any services at all. As a result, these instances are underused. You should manually distribute services to run across all instances in your system.
Moving and scaling floating services
For floating services, instead of specifying the specific instances on which the service runs, you can specify a pool of eligible instances, any of which can run the service.
Moving and scaling services with multiple types
When moving or scaling a service that has multiple types, you can simultaneously configure separate rebalancing for each type.
Best Practices
- Moving or scaling services can cause document failures during a workflow task. Before moving or scaling a service, you should either pause all running workflow tasks or wait for them to complete.
- Avoid running multiple services with high service unit costs together on the same instance.
Ideally, each of these services should run by itself on an instance:
-
- Database
- Index
- On master instances, avoid running any services besides those classified as System services.
- To use your instances evenly, try to deploy a comparable number of service units on each instance.
Considerations
- Instance requirements vary from service to service. Each service defines the minimum and maximum number of instances on which it can run.
- You cannot remove a service from an instance if doing so causes or risks causing data loss.
- Service relocation might take a long time to complete and can impact system performance.
Relocating services
Procedure
Select Services.
The Services page opens, displaying the services and system services.Click on the service that you want to scale or move.
Configuration information for the service is displayed.Click Scale, and if the service has more than one type, select the instance type that you want to scale.
- The next step depends on whether the service is floating or persistent (non-floating).
If the service is a floating service, you are presented with options for configuring an instance pool. For example:
In the field Service Instances, specify the number of instances on which the service should be running at any time.
Configure the instance pool:
- For the service to run on any instance in the system, select All Available Instances.
With this option, the service can be restarted on any instance in the instance pool, including instances that were added to the system after the service was configured.
- For the service to run on a specific set of instances, deselect All Available Instances. Then:
- To remove an instance from the pool, select it from the list Instance Pool, on the left, and then click Remove Instances.
- To add an instance to the pool, select it from the list Available Instances, on the right, and then click Add Instances.
- For the service to run on any instance in the system, select All Available Instances.
If the service is a persistent (non-floating) service, you are presented with options for selecting the specific instances that the service should run on. Do one or both of these, then click Next:
- To remove the service from the instances it's currently on, select one or more instances from the list Selected Instances, on the left, and then click Remove Instances.
- To add the service to other instances, select one or more instances from the list Available Instances, on the right, and then click Add Instances.
Click Update.
The Processes page opens, and the Service Operations tab displays the progress of the service update as "Running." When the update finishes, the service shows "Complete."
Next steps
Configure the system for your users
Once your system is up and running, you need to begin configuring it for your users. For information, see the applicable topic in the help that's available from the Admin App:
- Administering Hitachi Content Search
- Administering Hitachi Content Monitor