Авамар: Менеджер розгортання проксі не зміг розгорнути проксі
Summary: Менеджер розгортання проксі (PDM) не може розгорнути проксі з повідомленням про помилку «Не вдалося з кодом помилки HTTP: 400", "Запит, надісланий клієнтом, був синтаксично неправильним." ...
Symptoms
Менеджер розгортання проксі не зміг розгорнути проксі з повідомленням про помилку "Failed with HTTP error code : 400", "The request sent by the client was syntactically incorrect."

З лог-файлу Avamar MCS /usr/local/avamar/var/mc/server_log/mcserver.log.0, див. нижче попередження:
10/10-10:23:26.00489 com.avamar.mc.pdm.ProxyDeploymentManagerService.logFailure WARNING: uri=https://localhost:8543/deploymanager/recommend/7e259e93-2f04-4e73-90fb-a65ea889784c, header=X-CustomTicket=71b e6487-c250-40a7-a2c1-5ee99753f2bd, body={"vcenter":"*******","user":"******","datacenters":[{ . . . . . . 10/10-10:23:26.00489 com.avamar.mc.util.MCException.logException WARNING: com.avamar.asn.service.ServiceException: Failed with HTTP error code : 400 additional information : <html><head><title>Apache Tomcat - Error report</title><style><!--H1 {font-family:Tahoma,Arial,s ans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;backgro und-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:1 4px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif ;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px; }A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 400 - </h1><HR size ="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u></u></p><p><b>description</b> <u>The request sent by the client was syntactically incorrect.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat</h3></body></html> at com.avamar.mc.pdm.ProxyDeploymentManagerService.updateRecommendation(ProxyDeploymentManagerService.java:185) at com.avamar.mc.pdm.ProxyDeploymentManagerService.deployProxy(ProxyDeploymentManagerService.java:206) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.j ava:61) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) at com.sun.proxy.$Proxy22.deployProxy(Unknown Source) at com.avamar.mc.pdm.ProxyDeploymentManagerServiceContext.deployProxy(ProxyDeploymentManagerServiceContext.java:45) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) at sun.rmi.transport.Transport$1.run(Unknown Source) at sun.rmi.transport.Transport$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Unknown Source) at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) 10/10-10:23:28.00157 com.avamar.mc.cr.bcConnection.readClientMessage
Cause
Результати PDM створюють рекомендацію, де можна отримати ієрархію серверів vCenter (дата-центри, кластери, хости, сховища даних і мережі). Це зберігається у форматі JSON, збереженому у файлі з ім'ям, яке можна знайти в раніше згаданому журналі MCS (mcserver.log.*). Цей JSON-файл можна знайти у /usr/local/avamar/var/vcs/dm/recommendations/.
10/10-10:23:26.00489 com.avamar.mc.pdm.ProxyDeploymentManagerService.logFailure
WARNING: uri=https://localhost:8543/deploymanager/recommend/7e259e93-2f04-4e73-90fb-a65ea889784c, header=X-CustomTicket=71b
e6487-c250-40a7-a2c1-5ee99753f2bd, body={"vcenter":"*******","user":"******","datacenters":[{
Один із віртуалізованих компонентів сервера vCenter (у цьому випадку мережа) мав некоректний символ UTF-8, що спричинило збій розгортання проксі.
/usr/local/avamar/var/vcs/dm/recommendations/7e259e93-2f04-4e73-90fb-a65ea889784c.json
{"name":"Publica o","mor":{"type":"Network","val":"network-73"}