Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-31026

OpenShift installation on Azure fails with proxy not able populate private internal DNS

XMLWordPrintable

    • Important
    • No
    • MCO Sprint 256
    • 1
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      OpenShift installation on Azure fails with proxy not able populate private internal DNS
      When installing OCP the machine-config cluster operator is not successful and complains with following message:
      Error:
      ~~~ 
      Message: Node master-0 is reporting: "unexpected on-disk state validating against rendered-master-xx: content mismatch for file \"/etc/mco/proxy.env\"", Node master-1 is reporting: "unexpected on-disk state validating against rendered-master-xx: content mismatch for file \"/etc/mco/proxy.env\"", Node master-2 is reporting: "unexpected on-disk state validating against rendered-master-xx: content mismatch for file \"/etc/mco/proxy.env\"" ~~~
      
      Environment:- 
      OCP version 4.12.46- UPI install with a proxy, 
      - existing private DNS, 
      - existing network.
      
      It is observed that the rendered-master-xxx mc wanted to configure the following
      
      function urldecode() { : "${*//+/ }"; echo -e "${_//%/\\x}"; } ;  urldecode "$(oc get mc rendered-master-xxx -o yaml | grep -B5 "path: /etc/mco/proxy.env" | grep source | tail -n 1 | cut -d, -f2)"
      
      # Proxy environment variables will be populated in this file. Properly
      # url encoded passwords with special characters will use '%<HEX><HEX>'.
      # Systemd requires that any % used in a password be represented as
      # %% in a unit file since % is a prefix for macros; this restriction does not
      # apply for environment files. Templates that need the proxy set should use
      # 'EnvironmentFile=/etc/mco/proxy.env'.
      HTTP_PROXY=http://10.0.0.4:3128
      HTTPS_PROXY=http://10.0.0.4:3128
      NO_PROXY=.cluster.local,.svc,10.0.0.0/24,10.128.0.0/14,127.0.0.1,168.63.xx.xx,169.254.xx.xx,172.30.0.0/16,api-int.test.example.com,localhost
      
      value observed on the machine was :
      But the value in the master machine was:
      sh-4.4# cat /etc/mco/proxy.env
      # Proxy environment variables will be populated in this file. Properly
      # url encoded passwords with special characters will use '%<HEX><HEX>'.
      # Systemd requires that any % used in a password be represented as
      # %% in a unit file since % is a prefix for macros; this restriction does not
      # apply for environment files. Templates that need the proxy set should use
      #'EnvironmentFile=/etc/mco/proxy.env'.
      HTTP_PROXY=http://10.0.0.4:3128
      HTTPS_PROXY=http://10.0.0.4:3128
      NO_PROXY=.cluster.local,.svc,10.0.0.0/24,10.128.0.0/14,127.0.0.1,169.254.xx.xx,172.30.0.0/16,api-int.test.example.com,localhost
      
      After manually vi into each master node and add the IP 168.63.xx.xx to each proxy.env resolves the issue. That IP is needed when installing with a proxy and a private azure DNS.    

      Version-Release number of selected component (if applicable):

          

      How reproducible:

          100%

      Steps to Reproduce:

          1. Install UPI cluster with proxy and existing private DNS + network
          2. Observe the installation to fail
          3. check proxy.env on the node
          

      Actual results:

       Installation fails   

      Expected results:

      Installation should be successful    

      Additional info:

      - This was working fine 4.10 
      - Also, The master mcp needs to be created because the first one is somehow deleted or was never created.    

              djoshy David Joshy
              rhn-support-chdeshpa Chinmay Deshpande
              Sergio Regidor de la Rosa Sergio Regidor de la Rosa
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: