Loading of the Docker image and preparing the installation environment
Load the installer docker image to the install node and do the steps to start the installation process.
Before you begin
- installer30.tar.gz,.
- registry-data-full30.tar.gz.
- registry-data-hdp.tar.gz.
About this task
Procedure
- Log into the install node as root user.
-
Copy the files installer30.tar.gz,
registry_data.full30.tar.gz, registry-data-hdp.tar.gz
images to the /tmp directory on the install node.
Important: The following commands use the /tmp directory as the default location for these files. If you use a different location, you need to modify the path in each of the commands.
-
Load the install image on the node that is used as the installer server.
The files are located in the /tmp directory:
sudo gunzip -c installer30.tar.gz | sudo docker load
-
Open the install node and create the install folder and mount the configuration.
Run the commands
sudo mkdir -p /install sudo docker run --rm -v /install:/data --name=installer ibmiot/ife.installer /bin/bash -c "cp -r /install/conf /data;mkdir -p /data/images;mkdir -p /data/ssh_key"
-
Open the /install/conf configuration folder.
By default the configuration is a 4+7 topology. If you want to install a 1+2 topology, make a backup of the default containers.ini, nodes.ini, config.properties files. Copy the 1+2 topology files from topolgy3nodes folder under /install/conf and overwrite the default files.
If you need to have a configuration other than the standard ones delivered in the solution, please refer to the topic, Customizing the standard configuration of nodes, slave nodes and HDP client nodes.
Note: If you are using SUDO user, you must change the user account in config.properties. The default is root.Figure 1. Config.properties file installUser setting - Optional:
For the Connectivity Model application: When
you want to expose more ports for Jupyter notebook, open the
/install/conf/containers.ini file and go to the
[notebook_container]
section, add more ports that are mapping in theexposePorts
item.The defaultexposePorts
is:exposePorts=[9995:9995;8888:8888;8889:8889;8887:8887;8886:8886]
For example, if you want to expose the external port 8884 for the container internal port 8884 that Jupyter notebook uses in the container, then the item will be like this:exposePorts=[9995:9995;8888:8888;8889:8889;8887:8887;8886:8886;8884:8884]
- For all applications: Open the nodes.ini file.
-
For all applications: Type the hostname, IP address and the network interface (NIC) for each
node.
For example:
[app_node] name=appNode hostname=libertyServer.cn.ibm.com ip=172.254.254.01 networkInterface=ens192
-
For all applications: When using default the appNode for the registry node, choose another node
for the installer node, for example dbNode (4+7) or bigdataNodeOne(1+2). Otherwise place the
registry on another node other than the appNode. If you need to change the location of the registry
for the Docker registry information, you do this in the registry.ini
configuration file.
For example if the default node is the appNode, deploy the registry on the dbNode, open the registry.ini file, and change the target value from
appNode
todbNode
:[registry] name=ibmiot.ife.registry target=dbNode exposePort=5000
Note: If you do change the host node of the registry, make sure that the host has at least 100 GB of space under the /tmp directory as described in the Planning the hardware and software needed. -
For Asset
Performance Management or Asset 360 for
Wind applications: Open the
/install/conf/nodes.ini file and delete the lines from
[ambari_node]
to the end of this file.For 1+2 topology. Open the /install/conf/nodes.ini file and delete the lines from[bigdata_node_one]
to the end of this file. -
For Asset
Performance Management or Asset 360 for
Wind applications: Open the
/install/conf/containers.ini file and delete the lines from
[cm_backend_container]
to the end of this file. -
For the Connectivity Model application: Open
the /install/conf/nodes.ini file and delete the sections that include the text
[spss_node], [db_node], [cognos_node]
. -
For the Connectivity Model application: Open
the /install/conf/containers.ini file and delete the sections that includes the
texts
[db_artifacts_container], [db_base_container], [spss_artifact_container], [spss_base_container], [cognos_db_base_container], [cognos_base_container], [jena_artifacts_container], [jena_base_container]
. -
For all applications: If you need to change the password information, you do this in the
config.properties configuration file.
For example:
#ldap server password password.ldapServerPassword=password123
The values with the default values and descriptions are listed:- encryptKeyString
- ibmioteuibmioteu
- The
encryptKeyString
must be 16 lengths long for the encrypt function to work. - password.ldapServerPassword
- pw4ibmioteu
- The password for LDAP server.
- password.spssUserPassword
- pw4ibmioteu
- The SPSS user password to start the modeler server and the run.sh analysis program.
- password.libertyUserPassword
- pw4ibmioteu
- The wlp user password to start the liberty server.
- password.db2password
- pw4ibmioteu
- The db2inst1 user password for the DB2 Server.
- password.DBSSLConnKeyPassword
- pw4ibmioteuStr0ngpassw0rd
- For DB SSL communication. The password be strong . If the password is not strong, additional steps will be necessary.
- password.DBEncryptKeyPassword
- pw4ibmioteu
- The password used for the DB2 server to encrypt the database.
- password.cogDB2NodeDBInstanceUserPassword
- pw4ibmioteu
- The db2inst1 user password for the DB2 Server.
- password.cognosUserPassword
- pw4ibmioteu
- The Cognos user password to start the cognos server
- password.cogDBinstanceUserPassword
- pw4ibmioteu
- The db2inst1 user password for the IFECogNode container.
- password.BobuserPassword
- pw4ibmioteu
- The administrative user password for
admin user
forIBM Maximo Asset Performance Management for Energy & Utilities On-Premises. - password.user1userPassword
- pw4ibmioteu
- The sample user
user1 password
for IBM Maximo Asset Performance Management for Energy & Utilities On-Premises. - password.user2userPassword
- pw4ibmioteu
- The sample user
user2 password
for IBM Maximo Asset Performance Management for Energy & Utilities On-Premises. - password.GaryuserPassword
- pw4ibmioteu
- The password for the user
Gary
for the IBM Maximo Asset Performance Management for Energy & Utilities On-PremisesAsset 360 for Wind application. - password.MelanieuserPassword
- pw4ibmioteu
- The password for wind 360 user
Melanie
for the IBM Maximo Asset Performance Management for Energy & Utilities On-PremisesAsset 360 for Wind application. - password.RickuserPassword
- pw4ibmioteu
- The password for wind user
Rick
for the IBM Maximo Asset Performance Management for Energy & Utilities On-PremisesAsset 360 for Wind application. - openId.enabled
- true/false, default false
When
The user must also provide a validopenId.enabled
is set to true, enablesopenId
authorization.openId.IBMid
andopenId
forredirectToRPHostAndPort
- openId.IBMid
- Provided by user
- The
IBMid
that is used to log in application - openId.redirectToRPHostAndPort
- Provided by user
-
This value must be added to
Redirect URIs
in IBM Maximo Asset Performance Management for Energy & Utilities On-Premises.Contact IBM to add the
redirect URIs
.For example:
https://<ip or hostname of where IFEIHSNode deployed>/oidcclient/redirect/blueid
- password.kdcAdmin
- pw4ibmioteu
- The password for KDC admin user.
- Optional:
For the Connectivity Model application: When
you want to expose more ports for Jupyter notebook, open the
/install/conf/containers.ini file and go to the
- Copy the Docker image registry files registry-data-hdp.tar.gz and registry-data-full30.tar.gz to the /install/images folder.
-
Copy the ssh private key to the /install/ssh_key directory.
Run the command:
sudo cp ~/.ssh/docker.id_rsa /install/ssh_key
-
Prepare the environment.
Run the command:
sudo docker run -t --rm -v /install:/data --net=host ibmiot/ife.installer prepareEnv
Note: The prepare environment does:- the configuration of the Docker engine.
- the update of the /etc/hosts environment.
- stops the
iptables
andfirewalld
services. - restarts the
docker
service.
Important: If there are any errors in the configuration information the nodes.ini file, for example the incorrect the IP address, host name, or network interface, that has been entered, then you must manually log into each node, clear the host name mapping that has been added in the /etc/hosts file and correct the nodes.ini file and run the prepareEnv command again.For Redhat and Centos operating systems, run following command to ensure the "
--storage-opt dm.basesize=500G
" setting in the /usr/lib/systemd/system/docker.service file is active, should able to see there are 500G for / directory.sudo docker run --rm ibmiot/ife.installer df -h
If not, you must delete and reload the installer image to make sure that the docker engine setting works for all containers.
sudo docker rmi ibmiot/ife.installer; sudo docker rm installer sudo docker rmi ibmiot/ife.installer; sudo docker rmi ibmiot/ife.installer:v1.0 sudo gunzip -c /tmp/installer.tar.gz | sudo docker load
Then run bellow command to check again.
sudo docker run --rm ibmiot/ife.installer df -h
Note: If you do not have iptables or firewalld installed, you can ignore the error iptables or firewalld are missing.Note: If you receive the error "error getting events from daemon: unexpected error", you have executed the prepareEnv command more than once and you can ignore this error.