Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1679851

Summary: [RHOSP14] [SkyDive] Skydive installation fails on OSP14
Product: Red Hat OpenStack Reporter: Pradipta Kumar Sahoo <psahoo>
Component: SkydiveAssignee: safchain
Status: CLOSED DUPLICATE QA Contact: safchain
Severity: high Docs Contact:
Priority: unspecified    
Version: 14.0 (Rocky)CC: mkaliyam, mputhenp, nplanel, safchain, sbaubeau
Target Milestone: ---Keywords: Triaged, ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-04-12 06:47:14 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Pradipta Kumar Sahoo 2019-02-22 03:25:08 UTC
Description of problem:

During overcloud deployment Unable to pull skydive image, however, the respective images have already sync in Undercloud during Director installation.


Version-Release number of selected component (if applicable):
Red Hat OpenStack Platform release 14.0.0 RC (Rocky)



How reproducible:
100% reproduce in the lab.

Steps to Reproduce:
1. 
@undercloud-0 ~]$ sudo docker images | grep -i skydive
192.168.24.1:8787/rhosp14/openstack-skydive-analyzer             14.0-46             e79783d298bf        5 weeks ago         588 MB
192.168.24.1:8787/rhosp14/openstack-skydive-agent                14.0-48             b5c4d6b712df        5 weeks ago         642 MB

2.
@undercloud-0 ~]$ grep skydive overcloud_deploy.sh 
--environment-file /usr/share/openstack-tripleo-heat-templates/environments/services/skydive-environment.yaml \


3. Snippet of overcloud_installation.log

"TASK [skydive_common : Pull skydive image] *************************************", "Thursday 21 February 2019  16:02:41 -0500 (0:00:00.609)       0:00:57.802 ***** ", "fatal: [controller-1]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 192.168.24.1:8787/rhosp14/openstack-skydive-agent:14.0-46\", \"delta\": \"0:00:00.099601\", \"end\": \"2019-02-21 21:02:42.005624\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-02-21 21:02:41.906023\", \"stderr\": \"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\", \"stderr_lines\": [\"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\"], \"stdout\": \"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \
Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \", \"Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\"]}", "fatal: [controller-2]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 192.168.24.1:8787/rhosp14/openstack-skydive-agent:14.0-46\", \"delta\": \"0:00:00.100766\", \"end\": \"2019-02-21 21:02:42.050132\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-02-21 21:02:41.949366\", \"stderr\": \"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\", \"stderr_lines\": [\"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\"], \"stdout\": \"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \
Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \", \"Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\"]}", "fatal: [compute-1]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 192.168.24.1:8787/rhosp14/openstack-skydive-agent:14.0-46\", \"delta\": \"0:00:00.113899\", \"end\": \"2019-02-21 21:02:42.023455\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-02-21 21:02:41.909556\", \"stderr\": \"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\", \"stderr_lines\": [\"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\"], \"stdout\": \"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \
Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \", \"Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\"]}", "fatal: [controller-0]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 192.168.24.1:8787/rhosp14/openstOvercloud configuration failed.
ack-skydive-agent:14.0-46\", \"delta\": \"0:00:00.116925\", \"end\": \"2019-02-21 21:02:41.923150\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-02-21 21:02:41.806225\", \"stderr\": \"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\", \"stderr_lines\": [\"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\"], \"stdout\": \"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \
Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \", \"Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\"]}", "fatal: [compute-0]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 192.168.24.1:8787/rhosp14/openstack-skydive-agent:14.0-46\", \"delta\": \"0:00:00.103123\", \"end\": \"2019-02-21 21:02:42.059765\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-02-21 21:02:41.956642\", \"stderr\": \"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\", \"stderr_lines\": [\"Error: image rhosp14/openstack-skydive-agent:14.0-46 not found\"], \"stdout\": \"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \
Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent ... \", \"Pulling repository 192.168.24.1:8787/rhosp14/openstack-skydive-agent\"]}", "", "PLAY RECAP *********************************************************************", "compute-0                  : ok=18   changed=10   unreachable=0    failed=1   ", "compute-1                  : ok=18   changed=10   unreachable=0    failed=1   ", "controller-0               : ok=18   changed=10   unreachable=0    failed=1   ", "controller-1               : ok=18   changed=10   unreachable=0    failed=1   ", "controller-2               : ok=18   changed=10   unreachable=0    failed=1   ", "localhost                  : ok=1    changed=0    unreachable=0    failed=0   ", "", "Thursday 21 February 2019  16:02:42 -0500 (0:00:00.632)       0:00:58.435 ***** ", "=============================================================================== "]}


NO MORE HOSTS LEFT *************************************************************

PLAY RECAP *********************************************************************
compute-0                  : ok=165  changed=70   unreachable=0    failed=0   
compute-1                  : ok=166  changed=70   unreachable=0    failed=0   
controller-0               : ok=209  changed=92   unreachable=0    failed=0   
controller-1               : ok=203  changed=91   unreachable=0    failed=0   
controller-2               : ok=203  changed=91   unreachable=0    failed=0   
undercloud                 : ok=27   changed=17   unreachable=0    failed=1   

Thursday 21 February 2019  16:02:42 -0500 (0:01:01.427)       0:40:44.826 ***** 
=============================================================================== 



Expected results:
The container should pull openstack-skydive-agent from undercloud.

Additional info:
The issue has reappeared in RHOSP14 GA
https://bugzilla.redhat.com/show_bug.cgi?id=1658214

Comment 1 safchain 2019-02-22 07:09:02 UTC
For some reason OSP is not using the latest tag. Working on a patch to workaround this. Meanwhile can you try to deploy with the following parameter:

~~~
parameter_defaults:
    SkydiveVars:
        agents:
            skydive_docker_image_tag: 14.0-48
~~~

Comment 2 safchain 2019-02-22 08:57:38 UTC
*** Bug 1679852 has been marked as a duplicate of this bug. ***

Comment 3 safchain 2019-02-22 10:33:04 UTC
Another option could be 

~~~
parameter_defaults:
    SkydiveVars:
        globals:
            skydive_docker_image_tag: 14.0
~~~

Comment 5 safchain 2019-02-22 15:04:36 UTC
It doesn't seem similar to what I suggested. The goal was to force the use of the agent tag (14.0-48). It seems you specify the wrong tag (analyzer tag).

~~~
10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-analyzer             14.0-46
10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent                14.0-48
~~~

~~~
parameter_defaults:
    SkydiveVars:
        agents:
            skydive_docker_image_tag: 14.0-48
~~~

Comment 7 Nicolas PLANEL 2019-02-26 15:56:55 UTC
Thanks for your test

I will check why skydive_docker_image_tag is not applied correctly under agents section here https://git.openstack.org/cgit/openstack/tripleo-heat-templates/tree/extraconfig/services/skydive-analyzer.yaml?h=refs/changes/06/638606/1#n146


As a workaround, could you both docker tag images to 14.0 and use scenario 2 (globals: skydive_docker_image_tag: 14.0) ?

Comment 9 Mohammed Salih 2019-02-27 04:07:37 UTC
Hi Nicolas,

The workaround to tag both images to 14.0 and setting the global skydive_docker_image_tag to 14.0 didn't work either. As the line 97 in extraconfig/services/skydive-analyzer.yaml ( skydive_docker_image_tag: {{skydive_analyzer_docker_image | regex_replace(".*:")}}` ) is extracting the tag from analyzer docker image and the playbook is using it as part of extra-vars passed to ansible, which overrides the vars in inventory file.

So the workaround should be, to first to tag the images to 14.0 and then update the DockerSkydiveAnalyzerImage  in overcloud_images.yaml (if you have generated one) with 14.0 

In my lab setup, after setting the global skydive_docker_image_tag to 14.0, the inventory.yml file was correctly populated with 14.0, but the global_defaults.yml file was having 14.0-46. Below are two tests showing the effect --extra-vars.

sudo ansible -i ./inventory.yml  --private-key /var/lib/mistral/overcloud/ssh_private_key agents -m shell -a 'echo "{{skydive_docker_image_tag}}"'
lab-computehci-01 | SUCCESS | rc=0 >>
14.0

sudo ansible -i ./inventory.yml  --extra-vars '@/var/lib/mistral/overcloud/skydive/global_defaults.yml' --private-key /var/lib/mistral/overcloud/ssh_private_key agents -m shell -a 'echo "{{skydive_docker_image_tag}}"'
lab-computehci-02 | SUCCESS | rc=0 >>
14.0-46


On a related note the upstream ansible playbooks for skydive is updated to include skydive_agent_docker_image_tag and skydive_analyzer_docker_image_tag , so the ideal fix would be to pull the latest ansible playbooks to mistral container image and then to update extraconfig/services/skydive-analyzer.yaml to include those vars.

Thanks
M Salih

Comment 10 Mohammed Salih 2019-02-27 05:55:46 UTC
Sorry, my bad, I had wrong setting in parameter_defaults. Instead of 'globals' I was having 'agents'. So setting globals like following and tagging the images to 14.0 should work.

parameter_defaults:
  SkydiveVars:
    globals:
      skydive_docker_image_tag: 14.0

Comment 11 Pradipta Kumar Sahoo 2019-03-01 13:53:40 UTC
Hi Mohammed,

(In reply to Mohammed Salih from comment #10)
> Sorry, my bad, I had wrong setting in parameter_defaults. Instead of
> 'globals' I was having 'agents'. So setting globals like following and
> tagging the images to 14.0 should work.
> 
> parameter_defaults:
>   SkydiveVars:
>     globals:
>       skydive_docker_image_tag: 14.0

No luck to pull the skydive image with suggested parameters.

parameter_defaults:
  SkydiveVars:
    globals:
      skydive_docker_image_tag: 14.0


$ grep sky overcloud_deploy.sh 
-e /usr/share/openstack-tripleo-heat-templates/environments/services/skydive-environment.yaml \


Error:

   "fatal: [nfv-compute-0]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent:14.0\", \"delta\": \"0:00:00.113966\", \"end\": \"2019-03-01 13:48:14.659469\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-03-01 13:48:14.545503\", \"stderr\": \"Error: image red_hat_ecs-osp14_containers-skydive-agent:14.0 not found\", \"stderr_lines\": [\"Error: image red_hat_ecs-osp14_containers-skydive-agent:14.0 not found\"], \"stdout\": \"Trying to pull repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent ... \\nPulling repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent ... \", \"Pulling repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent\"]}",
    "fatal: [nfv-compute-1]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent:14.0\", \"delta\": \"0:00:00.119783\", \"end\": \"2019-03-01 13:48:14.734286\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-03-01 13:48:14.614503\", \"stderr\": \"Error: image red_hat_ecs-osp14_containers-skydive-agent:14.0 not found\", \"stderr_lines\": [\"Error: image red_hat_ecs-osp14_containers-skydive-agent:14.0 not found\"], \"stdout\": \"Trying to pull repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent ... \\nPulling repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent ... \", \"Pulling repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent\"]}",
    "fatal: [nfv-controller-0]: FAILED! => {\"changed\": true, \"cmd\": \"docker pull 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent:14.0\", \"delta\": \"0:00:00.132242\", \"end\": \"2019-03-01 13:48:14.776990\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2019-03-01 13:48:14.644748\", \"stderr\": \"Error: image red_hat_ecs-osp14_containers-skydive-agent:14.0 not found\", \"stderr_lines\": [\"Error: image red_hat_ecs-osp14_containers-skydive-agent:14.0 not found\"], \"stdout\": \"Trying to pull repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent ... \\nPulling repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent\", \"stdout_lines\": [\"Trying to pull repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent ... \", \"Pulling repository 10.74.167.35:8787/red_hat_ecs-osp14_containers-skydive-agent\"]}",


Thanks,
Pradipta

Comment 12 Mohammed Salih 2019-03-03 12:26:51 UTC
Hi Pradipta,

Have you tagged the agent and analyzer container image with 14.0 , I used the following commands to copy (may be there is a better way to tag the images), of-course you have to change the IP of the registry.

skopeo copy --dest-tls-verify=false --src-tls-verify=false docker://172.16.200.10:8787/rhosp14/openstack-skydive-analyzer:14.0-46 docker://172.16.200.10:8787/rhosp14/openstack-skydive-analyzer:14.0
skopeo copy --dest-tls-verify=false --src-tls-verify=false docker://172.16.200.10:8787/rhosp14/openstack-skydive-agent:14.0-48 docker://172.16.200.10:8787/rhosp14/openstack-skydive-agent:14.0

You can verify the images by 

skopeo inspect --tls-verify=false docker://172.16.200.10:8787/rhosp14/openstack-skydive-analyzer:14.0
skopeo inspect --tls-verify=false docker://172.16.200.10:8787/rhosp14/openstack-skydive-agent:14.0

Once this is done , you can re-deploy overcloud.

Hope it helps.
M Salih

Comment 13 Pradipta Kumar Sahoo 2019-03-04 10:10:10 UTC
Hi Salih,

Thank you very much for sharing the tips. It helps to fixed skydive integration issue.

But I think for a long term solution, it should work with the non-uniform image tag.

Regards,
Pradipta

Comment 14 Mohammed Salih 2019-03-05 07:44:06 UTC
From what I can see in the skydive-ansible github repo, I think that is being addressed as we speak, and probably would be addressed in openstack tripleo-heat-templates.

Cheers
M Salih

Comment 15 safchain 2019-04-12 06:47:14 UTC
The version skydive-0.20.3-1.el7ost that will be part of Z should fix the issues.

*** This bug has been marked as a duplicate of bug 1676915 ***