-2

I am setting up an IBM cloud private community edition 2.1.0.3 in my sandbox environment which consists of the following:

Boot Node: 1 Master Node: 1 Worker Node: 2 Proxy: 1 Management: 1 VA: 1

I followed all the specifications and the installation gets stuck with "Waiting for MongoDB to start". It re-tries for 100 times and ends with a fatal error.

My ICP-CE edition fails trying to wait for MongoDB to start which is a new edition in 2.1.0.3.

2 Answers2

0

How I installed ICP-CE 2.1.0.3 From IBM Website:

Set up IBM® Cloud Private-CE (Community Edition) master, worker, proxy, and optional management nodes in your cluster.

The CE does not support VA
 (I also could not install with a management node, maybe I can add it on after)

The following are the steps I took to do successfully install ICP-CE 2.1.0.3

Node details:

Master Node (also my boot-node): Ubuntu 16.04 with 8GB RAM the Node_name is master-boot

Worker1 Node: Ubuntu 16.04 with 8GB RAM the Node_name is worker1

Worker2 Node: Ubuntu 16.04 with 8GB RAM the Node_name is worker2

Proxy Node: Ubuntu 16.04 with 8GB RAM the Node_name is proxy

Note: My master node and boot node are the same node

Note: I am running on amd64 architecture

Note: I am using a small amount of RAM, for more detail to figure out what will suit you and what other hardware requirements/considerations there are: https://www.ibm.com/support/knowledgecenter/SSBS6K_2.1.0.3/supported_system_config/hardware_reqs.html

These are the instructions I am using to do the installation (in case you get stuck some where or I missed something):
 https://www.ibm.com/support/knowledgecenter/SSBS6K_2.1.0.3/installing/install_containers_CE.html

1) Configure my cluster

https://www.ibm.com/support/knowledgecenter/SSBS6K_2.1.0.3/installing/prep_cluster.html

  • I have 4 IP addresses, one associated with each node
  • I need to update the /etc/hosts on each node. It's the same file on each node so I have a local copy of hosts and using this command to copy it to each node:

scp hosts root@<ip-address>:/etc

my hosts file looks like this:

127.0.0.1       localhost

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

<master-boot-ip-address>   master-boot
<worker1-ip-address>    worker1
<worker2-ip-address>    worker2
<proxy-ip-address>    proxy

Just insert your nodes ip-addresses and change the names (like master-boot) so they match your Node names.

  • Checked which Python version I have on each node. Python 2.7.12 was already on my Operating System
  • Install socat on each node(I used this command: ssh root@<ip-address> apt-get install socat )

NOTE: If you are using OpenStack for VMs then there are further steps in the prep_cluster link

2) Install docker onto my boot node (also my master node)

I am following these steps to install docker on Ubuntu: https://docs.docker.com/install/linux/docker-ce/ubuntu/#extra-steps-for-aufs

Go to Docker's website to get instructions for your OS

These are the commands I issued, they are from the Docker website (link above).

sudo apt-get update


sudo apt-get install apt-transport-https ca-certificates curl software-properties-common


curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"

sudo apt-get update

sudo apt-get install docker-ce

sudo docker run hello-world

I always run hello-world just to make sure Docker installed

3) Set up the installation environment I am doing these commands from my boot node, as it is the only node that currently has Docker installed. These steps are from the IBM guide.

sudo docker pull ibmcom/icp-inception:2.1.0.3

sudo mkdir /opt/ibm-cloud-private-ce-2.1.0.3 (NOTE: Installation Directory)

cd /opt/ibm-cloud-private-ce-2.1.0.3

 sudo docker run -e LICENSE=accept \
 -v "$(pwd)":/data ibmcom/icp-inception:2.1.0.3 cp -r cluster /data

4) Set up SSH on my boot node so it can communicate with all other nodes https://www.ibm.com/support/knowledgecenter/SSBS6K_2.1.0.3/installing/ssh_keys.html

I am still on my boot node.

ssh-keygen -b 4096 -f ~/.ssh/id_rsa -N ""

cat ~/.ssh/id_rsa.pub | sudo tee -a ~/.ssh/authorized_keys (add key to authorized keys)

 ssh-copy-id -i ~/.ssh/id_rsa.pub <user>@<node_ip_address> 

NOTE: Since my boot node and master are the same I had to do this command for root on master-boot node, at least I think that is the reason why I had to do that :]

5) Define hosts file in the installation directory As I mentioned above my installation directory is /opt/ibm-cloud-private-ce-2.1.0.3. I am going to reference this directory a few more times in the following steps.

I need to go into /opt/ibm-cloud-private-ce-2.1.0.3/cluster and update the hosts file.

NOTE: I did try your setup Jenson with a VA and Management Node, but couldn't get past the installation checks because I was using the CE version. That is why you do not see [va] or [management] in my hosts file. I would try installing without them at first, just to get a successful install.

My hosts file, just add your IP addresses:

[master]
<master-boot-ip-address> 

[worker]
<worker1-ip-address>  
<worker2-ip-address> 

[proxy]
<proxy-ip-address>

6) Copy SSH private key to installation directory

I used SSH to secure my cluster so I am going to copy my private key into the ssh_key file in /opt/ibm-cloud-private-ce-2.1.0.3/cluster

NOTE: I’m in the /opt/ibm-cloud-private-ce-2.1.0.3/cluster directory when I issue this command, same directory the hosts file is in.

sudo cp ~/.ssh/id_rsa ssh_key

7) Configure Proxy Server

This is part of the IBM Guide, I did not do anything at this step.

8) You could install Docker on the other Nodes

I say could because the installation will do it for you if you don't. I did NOT INSTALL Docker on my other nodes and had no problem with the installation doing it for me.

9) Run the install command

From /opt/ibm-cloud-private-ce-2.1.0.3/cluster

docker run --net=host -t -e LICENSE=accept -v "$(pwd)":/installer/cluster ibmcom/icp-inception:2.1.0.3 install

I hope this helps.

0

@Kevin C, I was finally able to figure out why my ICP was failing. It was related to the Internal K8s domain and my DNS. I modified the default cluster local to match to my DNS domain and voila, everything was taken care of.