VM에서 "지원되지 않는"응용 프로그램?


10

우리는 소규모 회사에서 일부 소프트웨어를 구입했으며 Windows 32 비트 비디오 컨텐츠 ​​워크 플로 관리자이며 일부 사용자 지정이있었습니다.

우리는 1 년 동안 W2K3EE-32 비트의 VMWare ESXi 4.1u2 VM에서이 코드를 실행하는 데 오랫동안 노력해 왔습니다.

그런 다음 한 달 정도 전에 코드를 업데이트하고 vCPU 중 하나가 주기적으로 100 %로 페그하는 것을 보았습니다. 두 번째 vCPU는 5-7 %로 상당히 유휴 상태입니다. 그래서 우리는 코드가 잘못 스레드되어 있다고 문의했습니다. 그것.

이제 코드가 VM에서 작동하지 않으며 18 개월 정도이 요구 사항에 대해 알고 있으며 V2P로 전환하기를 원한다고 우리에게 돌아 왔습니다. 그들은 VM 내부에서 실행될 때만이 문제가 발생한다고 말합니다. 몇 시간 안에 논의 할 수석 프로그래머와 전화를했습니다.

운 좋게도 약간의 시간이 걸리지 만 할 수있는 몇 가지 물리적 요소가 있습니다.

그러나 내 질문은이 VM이 하드웨어를 직접 만지지 않고 매우 현대적인 호스트에 있으며 실제로 매우 낮은 요구 사항 (2 x vCPU, 4GB, 20GB 부팅 vdisk, 100GB 데이터 vdisk, 단일 vNIC 및 기타)이 없다는 것입니다. VM에서 VM을 실행하는 데 문제가있을 수 있습니까?

분명히 나는 ​​이것들과 함께 이것을 강력하게 추구하고 있지만 다른 사람이 정규 응용 프로그램을 찾았는지 궁금합니다. 어떻게 든 VM 내부에서는 오작동하지만 물리적으로는 작동하지 않는다는 것입니다.


두 vCPU가 동일한 CPU에서 당기고 있습니까? 각 실제 코어가 vCPU에 직접 매핑되도록 설정 했습니까? CPU에서 하이퍼 스레딩을 활성화하는 것과 같은 재미있는 일이 있습니까? 다음은 여러분이 해결할 수있는 속도를 늦출 수있는 문제를 해결하는 데 도움이되는 질문입니다. VM에서 실행될 때 발생하는 문제를 해결하는 방법을 수석 프로그래머와 상담 한 후에 더 나은 아이디어를 얻게 될 것입니다. 또는 그들이 잘못하고 있는지 확실하게 알 수있을 것입니다. 코드가 java로 작성되었을 수 있습니다.
Wilshire

ESXi가 프로세스 스케줄링 측면에서 자체적으로 할 수있게 해주었습니다.> 55xx 시리즈 Xeons 하이퍼 스레딩은 '재미있는'것으로 간주되지 않으며 작동하며 매우 유용합니다-아 그리고 코드의 .NET 3.5.
Chopper3

MySQL Cluster는 가상화 환경에서도 공식적으로 '공식적으로'작동하지 않는다는 것을 알고 있습니다. 이유? 던노! : P
Ben Ashton

답변:


3

이 공급 업체 나 소프트웨어 패키지를 말할 수는 없지만 대규모 (다국적) 공급 업체에서 근무했습니다. 여기서 판매 한 소프트웨어 중 하나가 VMware에서 실행할 때 알려진 특정 문제가있었습니다.

이 경우 한 문제로 인해 소프트웨어 교착 상태가 발생하고 다른 문제로 인해 데이터가 손상 될 수 있습니다. 따라서 고객은 가상 환경에서 소프트웨어를 실행하지 않는 것이 좋습니다. 어떤 사람들은 여전히 ​​알았고 내가 알고있는 모든 경우에 문제 중 하나 또는 둘 다에 부딪 쳤습니다.

따라서 드물지만 VMware에서 소프트웨어가 예상 한대로 작동하지 않는 경우가 있습니다.

문제가 직접 도움이되지는 않지만 VMWare가 항상 완벽한 시스템은 아니라는 것을 알았습니다.

각주 :이 경우 공급 업체는 VMware와 협력하여 해결 방법 (일부 코드 수정, 일부 VMWare 구성 변경)을 찾을 수있게되었으며 이제 VMWare에서 소프트웨어를 실행하는 방법에 대한 매우 구체적인 지침이 제공됩니다.


Janne의 답변에서 언급했듯이 VM에서 올바르게 작동하는 것들에 익숙해 져서 이상한 환경을 발견하면 정직하게 조금 당황하게되었습니다. , 내가 혼자가 아니라는 말을 듣는 것은 적어도 위안입니다. 아직 소프트웨어 공급 업체로부터 긍정적 인 소식을 듣지 못했지만 문제를 조사하고 있다는 것을 알고 있습니다. 불행히도 한 달 동안 해결책을 상상할 수는 없습니다. 다시 감사합니다.
Chopper3

3

ESX v5 및 Monster VM 제한 (32vCPU 1TB RAM)으로 인해 VM에 문제가있는 응용 프로그램의 수가 줄어들고 있습니다. 내가 경험 한 것의 대부분은 다음과 같습니다 :-선형 시간에 의존 (실시간 프로세스 또는 선형 시간이 필요한 앱 ... 일반적으로 조정 가능)-많은 하드웨어 인터럽트 또는 컨텍스트 전환을 유발하는 앱

대부분의 경우 VM웨어 담당자에게 해당 담당자와 대화하도록 요청할 수 있어야합니다. 나는 vmware에 여전히 일을하기 위해 헌신하는 사람들로 구성된 팀이 있다고 생각합니다 (초기에 지원 실험실이 있었음).

솔루션에 관해서는 CPU 사용량이 많은 VM과 비슷한 문제가 있었지만 호스트는 많은 CPU 리소스를 사용하지 않습니다. Nehalem CPU가있는 서버로 마이그레이션하고 EVC에서 CPU 호환성 수준을 변경하여 문제를 해결했습니다 (DRS / HA가있는 클러스터가있는 경우).


귀하의 답변에 감사드립니다-이것이 정말로 흑백의 질문이 아닌 경우 매우 친절합니다. 귀하의 예제는 매우 유용합니다. 특히 돌아가서 컨텍스트 전환을 검토하겠습니다. 아 그리고 우리의 모든 서버는 EVC가 균일하게 설정된 동일한 CPU (X5690)에 있지만 다시 한 번 감사드립니다.
Chopper3

2

VMware ESX + Debian 6 + OpenLDAP 2.4.x와 비슷한 문제가 발생했습니다 (OpenLDAP의 정확한 버전은 무엇이든 얻을 수 있습니다 ...).

일상적인 작업에서는 정상적으로 작동하지만 400 000 정도의 느린 LDIF 파일 가져 오기와 같은 항목은 매우 느립니다 (물리적 서버보다 50-100 배 느립니다). 또한 오래 지속되는 대용량 벤치마킹을 사용하면 몇 밀리 초의 응답 시간으로 모든 것이 순조롭게 진행되지만 때로는 500에서 25,000 (!) 밀리 초 범위의 이상한 피크가 있습니다.

실제 서버에서는 이러한 문제를 재현 할 수 없습니다. 그리고 예, 약 3 주 동안 문제를 격리하려고 노력하면서 모든 종류의 매개 변수를 운영 체제 매개 변수에서 때린 값으로 BerkeleyDB 값으로 조정했습니다 ... 아무 것도 도움이되지 않았습니다.


경험을 공유해 주셔서 대단히 감사합니다.이 모든 것이 조금 이상하다고 말할 수는 없습니다. 나는 경험 가상화 괴짜이며 그렇게하는 응용 프로그램을 찾기 위해 일하는 것에 익숙합니다. 어떤 식 으로든 내 믿음을 흔들 었으므로 내가 고립 된 자세가 아니라는 것을 듣는 것이 좋습니다. 감사합니다.
Chopper3

1
또 다른 두 가지 예 : 골드 피처 모두 말한다 Jira와는 ConfluenceVM이 (도자기) 환경에서 실행하지 않는 것이 좋습니다. 이러한 예외에 대한 패턴이 있어야합니다. 나는 아직 그것이 무엇인지 아직 알지 못했습니다. 내 OpenLDAP 설치는 I / O 집약적이지 않으며 (3MB / s 쓰기 및 너무 많은 IOPS는 벤치 마크 중 최고) 20-40 % CPU 및 150MB RAM을 사용합니다. 다루기가 너무 어려워서는 안됩니다. 아마도 스레딩과 관련이 있지만 vmstat는 컨텍스트 스위치 등을 정상 수준으로보고합니다.
Janne Pikkarainen 2014 년

나의 현재 이론은 이것이 OS 시간 유지와 관련이 있다는 것입니다. VMware는 과거에 모든 종류의 이상한 시계 문제를 겪어 왔으며 이제는 tsc=pit부팅 중에 일부 세련된 매개 변수 를 전달해야 하며 최소한 OpenLDAP는 시스템 시계 정확도에 매우 민감합니다. 어쩌면 나는 문제가있는 모든 앱을 찾아서 모두 많이 사용 gettimeofday()하는지 확인해야합니다.
Janne Pikkarainen 2014 년

다시 한 번 감사드립니다 .VM 내 시간에 대해 맞습니다. 기본적으로 모든 곳에서 가능하므로 이해할 수는 있지만 문제가 있어도 매우 빠른 문제라고 생각할 수는 없습니다. 우리의 벤더들은 그들의 코드를 알아 차릴 수 있습니다. 실제로 시간에 민감한 애플리케이션이 아니라 비디오 컨텐츠를 가져 와서 처리합니다. 다시 감사합니다.
Chopper3
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.