Uploaded image for project: 'Ambari'
  1. Ambari
  2. AMBARI-12309

Kerberos: After partitially enabling manual kerb, start all fails

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 2.1.0
    • Fix Version/s: 2.1.0
    • Component/s: ambari-web
    • Labels:
      None

      Description

      Since the manual kerb option requires users to run the wizard, get the csv, and potentially (likely) exit and return once their kerb infra is ready, this is a situation users will run into...

      1) start kerb wizard, choose manual option
      2) get to page with csv, download, exit wizard
      3) even though kerb is not enabled, kerberos service has now been added to the cluster but with 0 clients install (see attached screen shot).
      4) if i attempt to do bulk start commands (for example), things fail silently...for example: i went "Start All" from the Actions menu and nothing happened. went to firebug and see the API command had failed with a 500.

      PUT
      http://c6404.ambari.apache.org:8080/api/v1/clusters/MyCluster/services?
      {"RequestInfo":{"context":"_PARSE_.START.ALL_SERVICES","operation_level":{"level":"CLUSTER","cluster_name"
      :"MyCluster"}},"Body":{"ServiceInfo":{"state":"STARTED"}}}
      

      The response:

      {
        "status" : 500,
        "message" : "org.apache.ambari.server.controller.spi.SystemException: An internal system exception
       occurred: Invalid transition for service, clusterName=MyCluster, clusterId=2, serviceName=KERBEROS,
       currentDesiredState=INIT, newDesiredState=STARTED"
      }
      

      Cause
      When transitioning from the Configure Kerberos page to the Configure Identities (Skipping the Install and Test Kerberos Client page), the KERBEROS service is added to the cluster and the KERBEROS_CLIENT component is added to each host. The service and components are the INIT state at this point. After proceeding to the Confirm Configuration page and then exiting, the KERBEROS service is not cleaned up, leaving it and it's components in the INIT state.

      Side-effect
      The user sees that the Kerberos service in the list of installed services even though the Kerberization process was not completed

      GET /api/v1/clusters/40438/services/KERBEROS
      {
        "href" : "http://104.196.82.205:8080/api/v1/clusters/40438/services/KERBEROS",
        "ServiceInfo" : {
          "cluster_name" : "40438",
          "maintenance_state" : "OFF",
          "service_name" : "KERBEROS",
          "state" : "INIT"
        },
        "Services" : {
          "attributes" : {
            "kdc_validation_failure_details" : "",
            "kdc_validation_result" : "OK"
          }
        },
        "alerts_summary" : {
          "CRITICAL" : 0,
          "MAINTENANCE" : 0,
          "OK" : 0,
          "UNKNOWN" : 0,
          "WARNING" : 0
        },
        "alerts" : [ ],
        "components" : [
          {
            "href" : "http://104.196.82.205:8080/api/v1/clusters/40438/services/KERBEROS/components/KERBEROS_CLIENT",
            "ServiceComponentInfo" : {
              "cluster_name" : "40438",
              "component_name" : "KERBEROS_CLIENT",
              "service_name" : "KERBEROS"
            }
          }
        ],
        "artifacts" : [ ]
      }
      
      GET /api/v1/clusters/40438/services/KERBEROS/components/KERBEROS_CLIENT
      {
        "href" : "http://104.196.82.205:8080/api/v1/clusters/40438/services/KERBEROS/components/KERBEROS_CLIENT",
        "ServiceComponentInfo" : {
          "category" : "CLIENT",
          "cluster_name" : "40438",
          "component_name" : "KERBEROS_CLIENT",
          "installed_count" : 0,
          "service_name" : "KERBEROS",
          "started_count" : 0,
          "state" : "INIT",
          "total_count" : 2
        },
        "host_components" : [
          {
            "href" : "http://104.196.82.205:8080/api/v1/clusters/40438/hosts/levas-40438-1.c.pramod-thangali.internal/host_components/KERBEROS_CLIENT",
            "HostRoles" : {
              "cluster_name" : "40438",
              "component_name" : "KERBEROS_CLIENT",
              "host_name" : "levas-40438-1.c.pramod-thangali.internal"
            }
          },
          {
            "href" : "http://104.196.82.205:8080/api/v1/clusters/40438/hosts/levas-40438-2.c.pramod-thangali.internal/host_components/KERBEROS_CLIENT",
            "HostRoles" : {
              "cluster_name" : "40438",
              "component_name" : "KERBEROS_CLIENT",
              "host_name" : "levas-40438-2.c.pramod-thangali.internal"
            }
          }
        ]
      }
      

        Attachments

        1. AMBARI-12309.patch
          7 kB
          Aleksandr Kovalenko

          Activity

            People

            • Assignee:
              akovalenko Aleksandr Kovalenko
              Reporter:
              akovalenko Aleksandr Kovalenko
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: