Andrii Tkach created AMBARI-23393:
-------------------------------------

             Summary: Ambari Requests Too Much Data From Hosts When Logging In
                 Key: AMBARI-23393
                 URL: https://issues.apache.org/jira/browse/AMBARI-23393
             Project: Ambari
          Issue Type: Bug
          Components: ambari-web
    Affects Versions: 2.7.0
            Reporter: Andrii Tkach
            Assignee: Andrii Tkach
             Fix For: 2.7.0


When first logging into Ambari, the web client makes the following request:
GET api/v1/clusters/<clusterName>/hosts?fields=
- Hosts/cpu_count
- Hosts/host_name
- Hosts/host_status
- Hosts/ip
- Hosts/last_agent_env
- Hosts/last_heartbeat_time
- Hosts/maintenance_state
- Hosts/ph_cpu_count
- Hosts/public_host_name
- Hosts/rack_info
- Hosts/total_mem
- alerts_summary
- host_components/HostRoles/desired_admin_state
- host_components/HostRoles/display_name
- host_components/HostRoles/maintenance_state
- host_components/HostRoles/service_name
- host_components/HostRoles/stale_configs
- host_components/HostRoles/state
- host_components/logging
- stack_versions/HostStackVersions
- stack_versions/repository_versions/RepositoryVersions/display_name
- stack_versions/repository_versions/RepositoryVersions/id
- stack_versions/repository_versions/RepositoryVersions/repository_version

In a cluster with 100 hosts, this can cause a payload of over 200MB to be 
returned. The culprit seems to be the {{Hosts/last_agent_env}} property, 
specifically the {{activeJavaProcs}} key. If the hosts in the cluster are 
running a lot of Java processes, this can account for over 90% of the payload 
(roughly 180MB). This data takes 30 or more seconds for the server to serialize 
and stream to the socket.

It looks like {{Hosts/last_agent_env}} isn't even needed after initially 
provisioning a host during the host checks, so it probably can be removed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to