Openshift-ansible: TASK [openshift_web_console : Verify that the web console is running] Failed

Created on 28 Jan 2018  路  5Comments  路  Source: openshift/openshift-ansible

Description

I install a cluster with one master and 2 nodes.
Install failed at TASK [openshift_web_console : Verify that the web console is running].

Version
  • Ansible version : 2.4.2.0
  • git describe : openshift-ansible-3.9.0-0.31.0-4-gc099618
  • git branch : origin/release-3.7
Steps To Reproduce

ansible-playbook -i inventory openshift-ansible/playbooks/openshift-web-console/config.yml

Expected Results

Success on installing the web-console

Observed Results

Describe what is actually happening.

fatal: [master.lab.example.com]: FAILED! => {"attempts": 120, "changed": false, "cmd": ["curl", "-k", "https://webconsole.openshift-web-console.svc/healthz"], "delta": "0:00:01.053502", "end": "2018-01-28 00:03:30.650176", "msg": "non-zero return code", "rc": 7, "start": "2018-01-28 00:03:29.596674", "stderr": "  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n\r  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0\r  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0curl: (7) Failed connect to webconsole.openshift-web-console.svc:443; Connexion refus茅e", "stderr_lines": ["  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current", "                                 Dload  Upload   Total   Spent    Left  Speed", "", "  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0", "  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0curl: (7) Failed connect to webconsole.openshift-web-console.svc:443; Connexion refus茅e"], "stdout": "", "stdout_lines": []}
Additional Information
  • Operating system and version, ie: CentOS Linux release 7.4.1708 (Core)
  • Inventory file
[OSEv3:children]
masters
nodes
etcd

# Set variables common for all OSEv3 hosts
[OSEv3:vars]
# SSH user, this user should allow ssh based auth without requiring a password
ansible_ssh_user=root

# If ansible_ssh_user is not root, ansible_become must be set to true
#ansible_become=true

openshift_deployment_type=origin

# uncomment the following to enable htpasswd authentication; defaults to DenyAllPasswordIdentityProvider
openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider', 'filename': '/etc/origin/master/htpasswd'}]

# subdomain wildcard 
openshift_master_default_subdomain=cloudapps.lab.example.com

openshift_disable_check=memory_availability,disk_availability

# host group for masters
[masters]
master.lab.example.com openshift_ip=172.25.250.10

# host group for etcd
[etcd]
master.lab.example.com openshift_ip=172.25.250.10

# host group for nodes, includes region info
[nodes]
master.lab.example.com openshift_ip=172.25.250.10
node1.lab.example.com openshift_node_labels="{'region': 'infra', 'zone': 'east', 'type': 'router'}" openshift_ip=172.25.250.11
node2.lab.example.com openshift_node_labels="{'region': 'infra', 'zone': 'west'}" openshift_ip=172.25.250.12

oc describe pod oc describe pod webconsole-1638017801-8tj5c

Name:           webconsole-1638017801-8tj5c
Namespace:      openshift-web-console
Node:           <none>
Labels:         pod-template-hash=1638017801
                webconsole=true
Annotations:    kubernetes.io/created-by={"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"openshift-web-console","name":"webconsole-1638017801","uid":"d2cd611b-03ac-11e8-8...
                openshift.io/scc=restricted
Status:         Pending
IP:
Created By:     ReplicaSet/webconsole-1638017801
Controlled By:  ReplicaSet/webconsole-1638017801
Containers:
  webconsole:
    Image:      docker.io/openshift/origin-web-console:latest
    Port:       8443/TCP
    Command:
      /usr/bin/origin-web-console
      --audit-log-path=-
      -v=0
      --config=/var/webconsole-config/webconsole-config.yaml
    Requests:
      cpu:              100m
      memory:           100Mi
    Liveness:           http-get https://:8443/ delay=0s timeout=1s period=10s #success=1 #failure=3
    Readiness:          http-get https://:8443/healthz delay=0s timeout=1s period=10s #success=1 #failure=3
    Environment:        <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from webconsole-token-9psc4 (ro)
      /var/serving-cert from serving-cert (rw)
      /var/webconsole-config from webconsole-config (rw)
Conditions:
  Type          Status
  PodScheduled  False
Volumes:
  serving-cert:
    Type:       Secret (a volume populated by a Secret)
    SecretName: webconsole-serving-cert
    Optional:   false
  webconsole-config:
    Type:       ConfigMap (a volume populated by a ConfigMap)
    Name:       webconsole-config
    Optional:   false
  webconsole-token-9psc4:
    Type:       Secret (a volume populated by a Secret)
    SecretName: webconsole-token-9psc4
    Optional:   false
QoS Class:      Burstable
Node-Selectors: node-role.kubernetes.io/master=true
Tolerations:    <none>
Events:
  FirstSeen     LastSeen        Count   From                    SubObjectPath   Type            Reason                  Message
  ---------     --------        -----   ----                    -------------   --------        ------                  -------
  1h            4m              244     default-scheduler                       Warning         FailedScheduling        0/2 nodes are available: 2 MatchNodeSelector.

I'm really new to openshift and I have the feeling the issue is coming from the node selector, reading the install.yml I see this

--param NODE_SELECTOR={{ openshift_web_console_nodeselector | to_json | quote }}

But openshift_web_console_nodeselector is not described anywhere in the doc.

Most helpful comment

I finally try to add this line in my inventory in the vars section and it solved the problem :

openshift_web_console_nodeselector={'region':'infra'}

The console deploy in node1
I close the issue.

All 5 comments

I finally try to add this line in my inventory in the vars section and it solved the problem :

openshift_web_console_nodeselector={'region':'infra'}

The console deploy in node1
I close the issue.

I finally try to add this line in my inventory in the vars section and it solved the problem :

openshift_web_console_nodeselector={'region':'infra'}

The console deploy in node1
I close the issue.

Hai @michaelcourcy ,

I found same error in task TASK [openshift_web_console : Verify that the console is running]
Already Try this solution but nothing success

this is my inventory

`
#bare minimum hostfile

[OSEv3:children]
masters
nodes
etcd

[masters]
hostname.eastus.cloudapp.azure.com openshift_schedulable=true containerized=true

[etcd]
hostname.eastus.cloudapp.azure.com

[nodes]
# openshift_node_group_name should refer to a dictionary with matching key of name in list openshift_node_groups.
hostname.eastus.cloudapp.azure.com openshift_node_group_name="node-config-all-in-one"

[OSEv3:vars]
openshift_additional_repos=[{'id': 'centos-paas', 'name': 'centos-paas', 'baseurl' :'https://buildlogs.centos.org/centos/7/paas/x86_64/openshift-origin311', 'gpgcheck':'0', 'enabled' :'1'}]

ansible_ssh_user=root
enable_excluders=False
enable_docker_excluder=False
ansible_service_broker_install=False

containerized=True
#os_sdn_network_plugin_name='redhat/openshift-ovs-multitenant'
openshift_disable_check=disk_availability,docker_storage,memory_availability,docker_image_availability

openshift_node_groups=[{'name': 'node-config-all-in-one', 'labels': ['node-role.kubernetes.io/master=true', 'node-role.kubernetes.io/infra=true', 'node-role.kubernetes.io/compute=true']}]

deployment_type=origin
openshift_deployment_type=origin

openshift_web_console_nodeselector={'region':'infra'}
#openshift_web_console_nodeselector={'region'}
#openshift_metrics_image_version="v3.11"
#openshift_logging_image_version="v3.11"
#openshift_logging_elasticsearch_proxy_image_version="v1.0.0"
#openshift_logging_es_nodeselector={"node-role.kubernetes.io/infra":"true"}
#logging_elasticsearch_rollout_override=false
#osm_use_cockpit=true

#openshift_metrics_install_metrics=True
#openshift_logging_install_logging=True
#openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
#openshift_master_htpasswd_file='/etc/origin/master/htpasswd'

openshift_public_hostname=xxxx.eastus.cloudapp.azure.com
openshift_console_hostname=xxxx.eastus.cloudapp.azure.com

openshift_master_api_port=8443
`

I finally try to add this line in my inventory in the vars section and it solved the problem :

openshift_web_console_nodeselector={'region':'infra'}

The console deploy in node1
I close the issue.

Hai @michaelcourcy ,

I found same error in task TASK [openshift_web_console : Verify that the console is running]
Already Try this solution but nothing success

this is my inventory

Have you found a solution. We have the same issue.

@adesurya - To solution for us was to use CentOS 7.5 instead of CentOS 7.7
-> The doc actually says that CentOS 7.5 should be used

o solution for us was to use CentOS 7.5 ins

@revresx,
Have you tried Centos 7.5 and it works well?

Was this page helpful?
0 / 5 - 0 ratings