• 홈페이지
  • 문의

KAL의 백서에서는 OS 가상화를 통해 은행이 ATM에서 하드웨어 업그레이드 없이 Windows 10을 실행하는 방법에 대해 설명합니다

중요 내용 요약

2020년 1월에 Windows 7에 대한 지원이 종료되므로 프로그램을 Windows 10으로 대체하여야 합니다. 이러한 마이그레이션은 ATM 소프트웨어 및 하드웨어를 업그레이드하는 데 있어 비용과 복잡성이라는 큰 문제를 안고 있습니다.

2014년 Windows XP에서 Windows 7로의 전환이 있었을 때, 운영 체제 업그레이드는 하드웨어 업그레이드와 동일한 의미가 됨에 따라 전 세계 ATM 업계에서 수십억 달러의 비용이 소요되었습니다. 은행은 Windows 10으로의 업그레이드 시기에 동일한 문제를 다시 겪게 될 것입니다.

하지만 OS 가상화라는 해법이 있습니다. OS 가상화는 하이퍼바이저라는 기술을 사용하여 운영 체제를 하드웨어 마더보드와 분리함으로써 Windows 10에서 지원되지 않는 소프트웨어 드라이버를 하이퍼바이저 소프트웨어에서 대신 지원할 수 있습니다.

하이퍼바이저 기술은 ATM이 Windows 10으로 운영체제를 이전할 때 현재 하드웨어를 업그레이드할 필요가 없게 만듦으로써 전 세계 20,000개 은행의 소프트웨어 및 하드웨어 관련 금전 지출을 방지하는 동시에 PCI 규정을 준수합니다.

이 기술은 Windows 10으로의 마이그레이션 시기에 중요할 뿐만 아니라, 더 잦은 하드웨어 업그레이드를 요하는 Windows 10 환경에서 향후 LTSC(장기 서비스 채널) 소프트웨어 릴리스를 관리할 때 필수적인 요소가 될 것입니다.

이 백서에서 자세한 내용을 알아보십시오.

서론

ATM은 50년 이상 이용되었지만, 변화의 속도는 굉장히 더뎠습니다.

도입 이후 20년 동안 ATM 아키텍처는 ATM 제조업체의 독점 자산이었으며, 하드웨어와 소프트웨어는 동일한 공급업체에서 공급되었습니다. 첫 번째 혁명은 IBM OS2가 ATM 운영 체제 업계에 진출한 1990년경에 표준 운영 체제를 사용하여 ATM의 블랙박스를 조금 열어젖힌 시점에 이루어졌습니다. Windows는 OS2가 시장에서 사라짐에 따라 Windows NT로 먼저 표준 운영 환경으로 자리매김하였으며, 그다음으로 Windows 2000, Windows XP, Windows 7, Windows 10이 그 뒤를 이었습니다. 세계 대부분의 은행 등급 ATM은 현재 일종의 Windows의 형태로 운용되고 있습니다.

2000년경에는 XFS 표준의 도입으로 두 번째 혁명이 시작되었습니다. ATM 내에 있는 모든 특수 하드웨어 장치(예: 현금 인출기, 카드 판독기)에 CEN XFS 표준에 따라 구축된 표준 소프트웨어 드라이버를 설치하기 시작한 것입니다. 이 때문에 소프트웨어 애플리케이션을 하드웨어와 분리해 주는 멀티벤더 소프트웨어의 시대가 도래했습니다.

지금, 우리는 또 다른 혁명의 문턱에 와 있습니다. 이번 혁명의 이름은 OS 가상화이며, 이는 업계가 직면하고 있는 주요 문제를 해결할 것입니다.

지금까지는 ATM 운영 체제에 메이저 버전 업그레이드가 요구될 때마다(예: 2014년 Windows XP에서 Windows 7로의 업그레이드) 하드웨어 업그레이드 또한 필요했습니다. 글로벌 산업에서 이에 드는 비용은 막대합니다. 전 세계 350만 대의 ATM을 업그레이드하는 데는 수십억 달러의 비용이 듭니다.

다시 한번 말씀드리지만, Windows 7에 대한 지원이 종료됨에 따라 Windows 10으로의 새로운 업그레이드 주기가 2020년에 도래합니다. 당연하게도, 은행은 ATM을 업그레이드하는 데 수십억 달러를 추가적으로 지출하기를 망설이고 있습니다.

업그레이드에 얽힌 문제

2014년은 ATM을 운용하는 은행에 있어 힘든 한해였습니다. Microsoft가 XP에 대한 지원을 중단하자, 많은 은행은 모든 ATM을 Windows 7로 업그레이드하는 것 외에는 선택의 여지가 없다는 사실을 금세 깨닫게 되었습니다.

Microsoft에게는 ATM 산업은 작은 부분을 차지합니다. 전 세계적으로 300만 대를 초과하기는 하지만, ATM은 전 세계 20억 대 이상이며 그 중 다수가 Windows를 사용하여 실행되는 PC에 비해서는 작은 규모에 불과합니다. PC 사용자의 경우에는 PC 업그레이드를 미루거나, 은행에서 ATM에 사용하는 것과는 다른 비교적으로 저렴한 마더보드 업그레이드를 구매할 수 있습니다. ATM 마더보드 업그레이드에는 많은 비용이 듭니다. 소규모라도 4000달러만큼이 들고, 전국의 ATM을 업그레이드하도록 숙련된 기술자를 파견하면 추가로 1000달러까지도 소요됩니다.

은행에서는 ATM을 10년 이상 사용하므로, 구형 모델 중 상당수는 업그레이드조차 되지 않고 교체 대상이 됩니다. 새 ATM에는 기능적 성능에 따라 1~3만 달러의 비용이 발생할 수 있으며, 파리 도심, 런던 또는 뉴욕과 같이 유동 인구가 많은 지역의 “벽면 매립형” ATM을 교체하는 경우에는 터무니없는 비용이 들 수 있습니다. ATM 운영 체제 업그레이드는 고객에게 직접적인 이점을 제공하지는 않지만 규정 준수를 위한 막대한 비용을 초래합니다.

ATM은 ATM을 운용하는 데 필요한 소프트웨어 구성 요소 체인에 지원되지 않는 소프트웨어가 있으면 안 된다는 규제 요건(특히 PCI)을 준수해야 합니다. 많은 아시아 은행은 이러한 위험을 무시했습니다. 미국과 유럽의 은행은 그들과 같은 길을 걷지 않고 ATM 네트워크를 업그레이드했습니다. 하지만 많은 은행은 업그레이드 사이클이 멈춰야만 한다고 공공연히 주장합니다.

그러나 2020년이 다가옴에 따라, 은행은 다시 한번 같은 패턴의 업그레이드를 수행해야 하는 곤경에 처하게 됩니다. Microsoft는 Windows 7에 대한 지원을 중단했고, 은행은 ATM 네트워크를 Windows 10으로 업그레이드해야 합니다.

실제로 Windows 10 업그레이드 이후 상황은 더욱 악화될 수 있습니다. Microsoft는 Windows 10이 “마지막” Windows가 될 것이라고 발표했습니다. Windows 11 또는 Windows 12는 출시되지 않을 것입니다. 그러면 Windows 10 이후에는 업그레이드 딜레마가 사라진다는 의미일까요? 업그레이드의 종말을 선언하는 신문 기사도 있었습니다. 그러나 불행히도 현실은 정반대입니다.

Windows의 새로운 전략은 OS 업그레이드 및 개선 작업을 이전보다 더 자주 실행하는 것입니다. 메이저 업그레이드는 “LTSC”, 즉 “장기 서비스 채널” 패키지의 형태로 제공됩니다. Microsoft는 향후 3년마다 LTSC를 출시할 계획입니다. 그것은 ATM 하드웨어를 3년마다 업그레이드해야 한다는 뜻일까요? 짧게 대답하자면, 아마도 그렇습니다!

어쩌다 이렇게 되었을까요?

많은 사람들이 소프트웨어를 너무 자주 업데이트하거나 운영 체제를 충분하게 오래 지원하지 않는다는 이유로 Microsoft를 비난하지만, 글로벌 소프트웨어 업계가 나아가고 있는 방향을 고려해 볼 필요가 있습니다.

DevOps의 개념과 자동화된 테스트의 발전은 소프트웨어 릴리스 주기가 시종일관 빨라지고 있음을 의미합니다. 실제로 소프트웨어 업계의 일각에서는 일일 릴리스도 드문 일이 아닙니다. 따라서 Microsoft도 Windows에 대한 7년 주기 업데이트 주기를 고집할 수 없음이 명백합니다. 실제로 ATM에 권장되는 Windows 10 LTSC 채널은 Microsoft에서 Windows 릴리스를 가장 느리게 실행하는 채널에 해당하게 될 것입니다. 일반적으로 기업용 Windows 버전은 SAC(반기 채널)로, 업데이트하는 속도가 훨씬 빠르며(6개월 주기) Microsoft는 이러한 업데이트를 배포할 것을 요구합니다. 따라서 SAC는 ATM에 적합하지 않습니다.

이 정도의 빠른 업그레이드 주기는 Wintel 에코시스템에 막대한 부담을 초래합니다. Microsoft는 새로운 OS 업데이트를 통해 구형 하드웨어를 지원하기 위해 노력하고 있지만 그 반대는 그렇지 않습니다. 하드웨어 구성 요소 공급업체들은 드라이버 개발을 종료된 후 출시되는 새로운 Windows 릴리스를 지원하기 위해 기존 소프트웨어 드라이버를 업데이트하는 데는 거의 관심이 없습니다. (Microsoft도 여기서는 마찬가지로 구형 OS를 사용하는 신형 하드웨어를 지원하지 않습니다.)

이는 OS 업그레이드와 관련하여 지원 문제를 일으키는 원인입니다. Intel의 칩셋 드라이버와 같은 소프트웨어 드라이버는, 칩셋 발매 당시에 이용 가능한 OS 버전만을 지원하고 칩셋 드라이버의 개발이 완료된 후에 릴리스 될 가능성이 있는 새로운 OS는 지원하지 않습니다.

인텔은 어떤 칩셋이든 최대 2개의 LTSC를 지원할 것이라고 말합니다. Microsoft에서 새 LTSC가 출시하는 빈도에 따라 ATM 하드웨어의 수명이 제한되는 것입니다. 실제로 Microsoft가 Windows 10 LTSC에 대해 처음 발표했을 때는 매 12~18개월마다 LTSC를 릴리스할 계획이었지만, Intel은 칩셋 당 1개의 LTSC만을 지원할 것이라고 밝혔습니다. 이후 정책은 Microsoft가 LTSC당 3년으로 릴리스 주기를 정하고 Intel은 칩셋 당 2개의 LTSC를 지원하기로 합의함으로써 변경된 것으로 보입니다. 지금까지 릴리스된 LTSC는 “1507, 1607, 1809, 19H1”입니다. 이 명칭은 사실 Microsoft의 릴리스 연월(2015년 7월, 2016년 7월, 2018년 9월, 2019년 1분기)을 따른 것입니다. 즉, LTSC는 향후 매 3년마다 릴리스한다는 약속보다 더욱 빠르게 출시되고 있습니다.

보시다시피 이 상황은 ATM 업계에 중대한 골칫거리를 초래합니다. 향후 업그레이드 사이클은 6년이 될 수도 있지만, 앞으로 LTSC와 지원 방식의 진전에 따라 12개월마다 한 번씩으로 짧아질 수도 있습니다. 근본 원인은 소프트웨어 사이클이 빨라지고 있기 때문에 구형 하드웨어 구성 요소 및 드라이버가 포함된 새 OS 릴리스를 지원하려는 지원 체인의 하드웨어 공급업체가 없는 것입니다. 또, 해당 업체들은 장래의 OS 릴리스에 통합하기 위해서 구형 소프트웨어 드라이버의 개발을 재개하려는 의도도 없습니다.

진퇴양난에 빠지다

이로 인해 ATM 업계는 선택의 여지가 거의 없습니다. 은행은 ATM을 보통 10년 이상 운용해왔으며, 많은 은행은 ATM을 훨씬 더 오래 운용하고 있습니다. 실제로 ATM 하드웨어 유지 보수는 PC 유지 보수보다 항공기 유지 보수와 공통점이 더 많습니다. 항공기는 수십 년 동안 사용할 수 있지만, 이 기간 동안 많은 하드웨어 부품이 여러 번 변경되기 때문에 실제로 30년을 묵은 것은 기체뿐일 수도 있습니다.

마찬가지로 15년 된 ATM은 운용되는 동안 카드 판독기, 현금 인출기, PC 코어 등 여러 부품의 교체를 겪었을 것입니다. 그러나, 여기서 다소 까다로운 요소는 운영 체제입니다. Microsoft에서 업그레이드를 보내는 대로 OS를 정기적으로 변경해야 하는 경우 OS와 함께 마더보드까지 업그레이드해야 하므로 은행로서는 상당한 비용이 소요됩니다. 다른 방법으로는 지원되지 않는 OS를 운용하면서 PCI를 준수하지 않고 맬웨어(및 보안 침해를 수반하는 관련 악성 압력)와 같은 매우 현실적인 보안 위험을 무릅쓰는 것이 있습니다.

다른 해답이 있을까요? KAL은 2014년부터 이 문제에 집중하여 다양한 방안을 평가 검토하고 근본 원인을 파악하며 장기적인 해결책을 찾기 위해 노력해 왔습니다.

솔루션을 찾아서

업그레이드 가능한 ATM은 솔루션이 될 수 없습니다.

ATM의 PC 코어를 보다 “업그레이드 가능”하게 만들 수 있는지 여부를 고려하는 방안이 있습니다.

PC 코어 업그레이드가 DVD 플레이어에서 DVD를 바꿔 삽입하는 것처럼 간단한 시나리오를 상상해 보십시오. 실제로 Intel은 “컴퓨팅 카드”를 통해 이러한 개념을 지원합니다. 컴퓨팅 카드란 쉽게 교체 가능한 신용 카드 크기의 PC 코어입니다. 그러나 이를 위해서는 전 세계 ATM을 대대적으로 재설계해야 하며 현장 개입과 함께 비교적 비용이 많이 소요되는 하드웨어 교체가 여전히 필요합니다.

아예 업그레이드를 하지 않는 것은 솔루션이 될 수 없습니다.

현재 일부 아시아 은행 중에서는 아직도 상당히 많은 ATM을 Windows XP를 통해 운용합니다. 단순히 OS를 업그레이드하지 않고 ATM를 Windows XP를 통해 계속 운용하는 방안은 분명 위험한 전략입니다. 지원되지 않는 소프트웨어를 운용하는 것은 PCI에 부합하지 않을 뿐 아니라, 지원되지 않는 운영 체제의 취약성이 범죄 조직에 의해 악용되어 은행과 고객이 맬웨어 및 사이버 공격에 노출될 가능성이 커집니다. 이는 진지하게 선택 대상이 되는 방안으로 고려해서는 안 됩니다.

그러나 ATM을 Windows 10 및 그 이후 LTSC 릴리스에 따른 “업그레이드를 하지 않는” 대안이 있을 수 있습니다.

은행에서 처음에 ATM을 필요에 따라 Windows 10으로 업그레이드한다고 가정해보겠습니다. 2019년 Windows 10 버전은 Windows 10 LTSC 1809로 불리며, 해당 LTSC를 지원하는 칩셋과 함께 작동합니다. Microsoft, Intel 및 ATM 업계는 이 조합을 10년 동안 지원할 것입니다. 업그레이드 딜레마를 해결하는 것처럼 보일 수 있지만 실제로는 그렇지 않습니다. 다음 사항을 고려해야 합니다.

  • 새로운 Windows 10 LTSC는 2019년도 ATM에서 실행할 수 없습니다. 즉, ATM은 원래의 LTSC를 실행하는 데 필요한 10년의 수명 동안만 운용됩니다.
  • 이제 연간 ATM 교체 주기를 고려해보겠습니다. 예를 들어 10,000대 정도의 ATM을 보유한 대형 은행이 ATM의 노후화에 따라 매년 10%의 자산을 대체한다고 합시다. 이 은행은 매년 Microsoft로부터 최신 LTSC와 Intel의 최신 칩셋이 탑재된 1,000대의 신형 ATM을 구입할 수 있습니다. 예를 들어 2023년에는 LTSC 23XX를 받게 됩니다. 이러한 새로운 ATM에서는 LTSC 23XX가 실행되지만, 2019년에 개조된 구형 ATM은 LTSC 1809만 실행할 수 있습니다. 10년 후가 되면, 해당 ATM 네트워크는 서로 다른 OS 버전과 서로 다른 기능을 실행하는 10개의 서로 다른 LTSC 및 칩셋 조합을 가지게 될 것입니다.
  • 각 ATM은 10년 동안 지원되는 소프트웨어 스택을 보유하지만 이는 새로운 LTSC가 출시되었을 때 OS를 업그레이드하지 않아야 가능하고, 결국에는 네트워크 전체에 걸쳐 여러 가지 OS 버전이 존재하는 파편화된 네트워크라는 결과가 발생하게 됩니다. 대부분의 은행에서는 이러한 시나리오를 긍정할 수 없습니다.

Intel의 지원 전략을 ATM에 맞춰 변경하는 것은 솔루션이 될 수 없습니다.

KAL의 CEO인 Aravinda Korala와 ATMIA의 CEO인 Mike Lee는 Intel과 함께 ATM 업계의 칩셋 드라이버에 대한 특별 지원 체제 도입 여부를 파악하기 위한 일련의 대담을 나누었습니다.

이 대담은 Intel 소매 거래 부문 총괄 책임자인 Oania Wei와 Alec Geflides가 주도했습니다. 대담에서는 ATM 산업용 Intel 드라이버에 대한 특별 유료 장기 지원 및 구형 드라이버의 ATMIA에 대한 소스 코드 라이선싱 등의 개념을 탐구해보았습니다. 결국, Intel에게는 ATM 산업이 지금까지의 어떤 제안도 실효성을 갖지 못하는 소규모 산업이라는 것이 분명해졌습니다. 그러나 Intel은 “Linux를 다시 한번 살펴보라”고 말하며 당시 Intel 계열사였던 Linux 배포업체인 Wind River에 KAL을 소개해주었습니다.

ATM을 Linux로 마이그레이션하는 것은 솔루션이 될 수 없습니다.

Linux는 매우 오랫동안 ATM을 위한 선택지로 자리했습니다. 브라질에서는 브라질 내에서 제조된 ATM을 사용하여 Linux에서 ATM을 실행하는 데 일부 성공했지만, 다른 곳에서는 전혀 성공하지 못했습니다.

글로벌 ATM 산업은 전 세계를 통틀어 고작 3.5백만 대의 ATM을 보유하고 있는 비교적 작은 시장입니다. Linux와 Windows를 모두 사용하여 파편화된 시장을 지원하는 것은 공급업체에게 영리적으로 실현 가능성이 없습니다. 전 세계에 약 20,000개의 은행이 있다는 점을 생각해 보십시오. 기본적으로 공급업체가 아닌 은행이 ATM에서 실행할 OS를 결정합니다. 은행은 정책이 없는 OS를 내부 네트워크에 연결하는 것을 일고의 가치도 없이 허용하지 않습니다.

20,000개의 은행이 Linux를 ATM에서 사용할 OS로 받아들이도록 설득하는 데 얼마나 많은 시간이 걸릴까요? 답은 쉽게 추측할 수 있습니다. 매우 오랜 기간 동안 진행된 시장 파편화에 맞서기 위하여는 완전한 Linux 소프트웨어 스택으로 마이그레이션한 사업상 케이스가 하나라도 있었어야 합니다. 결론적으로는 지금까지 주요 ATM 제조업체 중 누구도 이러한 전환기를 거치면서 ATM에서 Linux와 Windows를 모두 지원하는 데 기꺼이 투자할 의향이 없었던 것입니다. XFS 드라이버는 제조업체에서 제어하므로, 이러한 드라이버가 Linux로 포팅되지 않으면 소프트웨어 공급업체의 R&D 여력이 얼마나 되는지와는 관계없이 소프트웨어 공급업체는 ATM에서 Linux 애플리케이션을 실행할 수 없습니다.

Linux를 고려하는 이유는? Linux에는 지원 로그잼을 해결하는 특히 유용한 기능이 하나 있습니다. Intel의 칩셋 드라이버를 포함한 모든 Linux 소프트웨어 드라이버는 Linux의 오픈 소스입니다. 즉, Linux 에코시스템에 속한 Wind River 및 Red Hat과 같은 기업은 해당 소스 코드에 액세스할 수 있으며 상업적 지원을 제공할 수 있다는 의미입니다. 이렇게 하면 은행의 PCI 문제가 해결됩니다.

하지만 전 세계의 수많은 은행은 Windows에서 Linux로 모든 ATM 소프트웨어를 마이그레이션하는 데 소요되는 비용의 딜레마에 빠져 있습니다.

번뜩이는 깨달음을 주는 솔루션

Linux는 장기적인 소프트웨어 지원 문제를 해결할 수 있지만 은행이 Windows에서 작동하는 ATM 소프트웨어에 이미 수십 억 달러를 투자했다는 점 때문에 Windows보다 훨씬 불리한 점도 있습니다. 마이그레이션 비용은 막대할 것입니다.

금전적 장애 이외에 기술적인 장애도 있습니다. ATM에는 Windows에서만 구현되는 XFS 표준을 사용하는 하드웨어 드라이버가 있습니다. 한 은행이 소프트웨어 스택을 Linux로 마이그레이션하려고 한다고 해도 하드웨어 공급업체가 자사의 XFS 드라이버를 Linux로 마이그레이션하려는 의사가 없다면 불가능합니다. 현재 주요 Linux 공급업체들은 ATM용 드라이버를 제공하고 있지 않습니다.

그렇다면 Linux와 Windows의 장점을 결합하는 방법은 존재할까요?

KAL은 2017년 중반부터 Wind River를 사용하여 이 문제를 해결하는 데 착수하였습니다. KAL 팀은 Aravinda Korala와 Kit Patterson이 이끌었고, Wind River 팀은 Kevin Konkos와 Davide Ricci가 이끌었습니다. 결국 도출한 해답은 Linux Hypervisor를 사용하여 Windows 10을 호스팅해야 한다는 것입니다.

Linux는 QEMU라는 하이퍼바이저 기술을 지원합니다. QEMU는 Linux에서 지원되는 가상화 하드웨어 가속을 이용하기 위해 KVM과 함께 실행되며, Linux에서 게스트 운영 체제로 실행할 인터페이스를 Windows 10에 제공할 수 있습니다. 마더보드의 하드웨어 드라이버는 Linux 커널에서 제공되지만, 애플리케이션 환경은 Windows에서 실행됩니다. QEMU, KVM 및 Linux 드라이버에 대한 지원은 Linux 커뮤니티와 Red Hat 및 Wind River와 같은 회사에서 제공합니다. 따라서 Linux 회사들에게 상업적 조건을 맞춰줄 수 있다면 Linux 부분은 일정 기간 동안 지원이 가능합니다.

Windows는 Linux를 기반으로 Microsoft와 은행에서 원하는 만큼 자주 업데이트할 수 있으며, 이러한 모든 작업은 ATM을 현장에서 방문하지 않고도 온라인으로 원격으로 수행할 수 있습니다. 이를 통해 업그레이드 문제는 해결됩니다. Windows 업그레이드 또는 LTSC로 인한 하드웨어 업그레이드가 필요하지 않게 되며, 은행은 늘 완벽하게 최신 상태로 유지하고 모든 소프트웨어를 최신 버전으로 실행할 수 있습니다. 마침내 강제된 하드웨어 업그레이드 사이클로부터 벗어나는 것입니다.

작동 방식

하이퍼바이저와 가상화란?

가상화는 새롭지 않은 개념입니다. IBM은 1960년대에 메인프레임에서의 가상 머신 및 가상화 환경을 최초로 창조했습니다. 이는 현재 전 세계에 있는 거의 모든 데이터 센터에서 널리 사용되고 있는 기술입니다.

하이퍼바이저를 사용하면 동일한 하드웨어 서버에서 여러 운영 체제를 실행할 수 있습니다. 가장 유명한 것은 VMware의 하이퍼바이저입니다. 글로벌 데이터 센터에서는 VMware, Red Hat 등의 하이퍼바이저를 실행하여 운영 환경에서 하드웨어를 분리합니다.

예를 들어 Windows XP와 Windows 7을 VMware 호스트 OS에서 게스트 운영 체제로 동시에 실행하는 것도 가능합니다. 또한 하이퍼바이저를 사용하여 서버를 원격으로 제어하고 관리할 수 있습니다. 실행 중인 시스템은 그대로 멈추었다가 새 하드웨어 서버로 이동한 다음 중단된 위치에서 아무 일도 일어나지 않은 것처럼 다시 시작할 수 있습니다.

Intel 및 AMD의 하드웨어 가상화

소프트웨어 하이퍼바이저는 Intel과 AMD의 하드웨어에 의존합니다.

초창기에는 가상화만이 유일한 소프트웨어 기술이었습니다. 이 기술은 소프트웨어 에뮬레이션에 의존해 호스트 OS에서 게스트 OS를 실행할 수 있도록 했습니다. 그러나 한 OS에서 다른 OS로 하드웨어 액세스 명령을 에뮬레이트하고 변환하는 작업은 비용이 많이 들고 시스템 속도의 상당한 저하를 불러왔습니다.

2005년경 Intel과 AMD는 새로운 CPU에 하드웨어 가상화 지원 기능을 구축했습니다. Intel VT-x 및 AMD-V로 알려진 이러한 기술을 통해 게스트 OS 실행 파일은 CPU에서 기본적으로 실행되지만, 시스템 호출은 올바른 OS에서 처리해야 합니다. 결국 게스트 OS의 애플리케이션 소프트웨어는 성능에 눈에 띄는 영향 없이 전체 CPU를 자체적으로 보유한 것처럼 실행됩니다.

KAL의 테스트 결과, Windows와 Linux를 모두 실행하는 가상화된 ATM의 경우, ATM의 성능에 미치는 영향은 가상화 없이 동일한 하드웨어에서 기본적으로 실행되는 Windows의 경우와 비교할 때 약 2%에 불과한 것으로 측정되었습니다. 정말 마법과 같은 결과입니다.

아래 다이어그램은 OS 가상화 기술이 적용된 ATM 내부의 새로운 ATM 소프트웨어 아키텍처의 모습을 보여줍니다.

 

osv diagram

 

하이퍼바이저는 베어 메탈 PC 코어에서 실행되고, Windows 10은 하이퍼바이저 위에서 게스트 운영 체제로 실행되며, 애플리케이션 소프트웨어와 하드웨어 공급업체의 XFS SP는 Windows 가상 머신 내에서 실행됩니다.

가상화된 ATM 솔루션의 모습은?

개념적 수준에서 소프트웨어 가상화 솔루션은 Windows와 하드웨어 사이에 하이퍼바이저가 추가된 것 말고는 오늘날의 소프트웨어 스택과 완전히 같아 보입니다. 하지만 당연하게도 실제 솔루션을 구현하는 것은 그리 간단하지 않습니다. 먼저 필수 전제 조건을 살펴보겠습니다.

가상화된 ATM 솔루션의 필수 전제 조건

소프트웨어 에뮬레이션을 사용하여 가상화에 대한 내장된 하드웨어 지원이 없는 ATM에서 하이퍼바이저를 실행할 수는 있지만, 실제 운영 환경에서 사용하기에는 속도가 너무 느릴 가능성이 있습니다. 다음은 ATM 가상화를 위한 필수 전제 조건을 나열한 것입니다.

  1. 첫 번째 요건은 Intel 마더보드의 경우 “VT-x”, AMD 마더보드의 경우 “AMD-V”일 것입니다. 이 정도의 하드웨어 성능을 갖춘 CPU는 2006년경에 등장하기 시작했기 때문에, 이보다 오래된 ATM은 상당한 성능 저하 없이는 가상화를 지원할 수 없게 될 것입니다. 또한 ATM 하드웨어 공급업체들이 오랜 기간 동안 구형 CPU를 사용하는 경우가 많기 때문에 2006년 이후까지는 이러한 기능을 갖춘 ATM이 나타나지 않았을 가능성이 높습니다. 따라서 2006년 이후 출시 제품이어야 합니다.

  2. 이를 지원하는 CPU의 가상화 기능은 BIOS 설정을 통해 비활성화할 수 있습니다. 이 설정을 변경하려면 현장 방문을 통한 하이퍼바이저 솔루션 구현 비용이 요구됩니다. 일부 ATM 하드웨어 공급업체는 원격 사용이 가능한 BIOS 관리 도구를 보유하고 있습니다. KAL은 먼저 BIOS 구성을 테스트한 다음 이 옵션을 사용하여 해당 구성을 원격으로 변경하는 방법으로 가상화를 활성화할 것을 권장합니다. 최신 ATM은 이 옵션이 기본적으로 활성화되어 있을 가능성이 높습니다.

  3. 다음으로, 은행에서 하이퍼바이저 공급업체를 선택해야 합니다. ATM 산업 지원에 대해 이미 관심을 표명한 기업으로는 Red Hat, VMware, Wind River의 3개사가 있습니다. KAL은 3개사의 하이퍼바이저를 모두 테스트했으며 모두 작동함을 확인할 수 있습니다. Microsoft 또한 Hyper-V라는 하이퍼바이저를 보유하고 있는데, 이 하이퍼바이저는 Windows의 기본 구성이며 이론적으로는 작동 가능하지만 Windows 자체를 사용할 때와 같은 단점이 있습니다. Windows에서는 서드파티 장치 드라이버에 드라이버 소스 코드를 사용하는 것이 허용되지 않으므로, Microsoft 또는 타사에서 Hyper-V가 설치된 미지원 드라이버를 지원할 수 있는 방법이 없습니다.

  4. 마지막으로 은행은 ATM 하드웨어 및 소프트웨어 공급업체가 가상화 환경에서 소프트웨어 애플리케이션과 드라이버를 지원하는지 확인해야 합니다. 예를 들어 ATM 소프트웨어 공급업체가 KAL이라고 했을 때 KAL이 가상화된 환경을 지원하는지를(지원함) 확인할 필요가 있습니다. 즉, ATM 하드웨어 공급업체가 가상화된 환경에서 XFS SP를 지원하는지 확인해야 합니다. 은행은 향후 모든 은행 RFP에 가상화 지원이 구축되도록 해야 합니다. 2000년에 XFS에 관하여 이미 있었던 일입니다. 은행은 모든 공급업체가 XFS를 지원할 것을 의무화*했으며, 이러한 결정은 ATM 세계를 변화시켰습니다.

*중국에 관한 한 가지 흥미로운 예시가 있습니다. 2001년 이 백서의 저자인 Aravinda Korala와 KAL의 Wenbin Hu가 중국 은행에 XFS 표준에 관한 소식을 알렸을 때, 이를 알고 있는 사람은 아무도 없었습니다. Aravinda와 Wenbin은 중국에서 XFS를 전도하여 공급업체 및 은행이 XFS를 채택하도록 독려하고, 중국에서 KAL의 Kalignite Platform과 XFS 시뮬레이터를 마케팅했습니다. XFS 시뮬레이터는 (상당수 무허가로) 널리 복제되었으며, XFS 호환 소프트웨어를 실행하는 100만 대의 ATM으로 구성된 오늘날의 중국 ATM 네트워크를 만드는 데 중요한 역할을 했습니다. 그러나 이는 단지 중국에만 해당하는 이야기가 아닙니다. 2000년부터 전 세계의 은행이 XFS를 의무화하기 시작했으며, 이를 통해 하드웨어 및 소프트웨어 공급업체 등 모든 공급업체가 XFS를 만드시 로드맵에 추가하게 되었습니다. 이는 오늘날 OS 가상화를 통해 실현되어야 합니다.

이제 가상화 실행 준비가 완료되었습니까?

아직 그렇지 않습니다. 필수 전제 조건을 충족하는 것만으로는 충분하지 않습니다. 은행 또한 다음과 같은 구현 프로젝트를 완료해야 합니다.

  1. OS가 가상화되어도 현재 솔루션의 인수 테스트에 사용된 모든 테스트 스크립트가 계속 작동하는지 확인하기 위해 새로운 하이퍼바이저 솔루션을 테스트해야 합니다.
  2. ATM 보안 잠금을 검토해야 합니다. 새로운 환경에서는 보안 엔벨로프가 바뀝니다. 즉, Windows 환경뿐만 아니라 하이퍼바이저도 잠가야 합니다.
  3. ATM 모니터링 시스템을 검토해야 합니다. 시스템의 나머지 부분과 함께 하이퍼바이저 소프트웨어도 모니터링하는 것이 좋습니다.
  4. 은행은 소프트웨어 배포 메커니즘을 검토해야 합니다. 기술자를 ATM으로 파견할 필요가 없이, 원격 소프트웨어 배포를 통해 시스템 전환을 완전히 수행할 수 있어야 합니다. 소프트웨어 배포 시스템은 패치 및 업데이트를 하이퍼바이저 소프트웨어뿐만 아니라 Windows 및 애플리케이션에도 가급적 온라인으로(DVD만 가능한 경우에는 DVD로) 제공할 수 있어야 합니다.

은행이 이 단계를 완료하면, 가상화를 실행할 준비가 완료된 것입니다.

KAL은 지금 준비되었습니다.

장기 지원 전략

ATM 소프트웨어 스택에는 이제 은행의 지원 계약 체결이 필요한 추가 소프트웨어 구성 요소가 생겼습니다. 고객은 하이퍼바이저 지원이 추가되었는지 확인해야 합니다. 하이퍼바이저 공급업체에게 필요로 하는 것은 다음과 같습니다.

  • ATM 하드웨어에 대한 최소 10년 이상의 장기 지원 약속.
  • Linux에서 마더보드 장치 드라이버를 지원하므로 Windows에서 해당 하드웨어에 대한 서드파티 소프트웨어 드라이버가 새로운 LTSC로 유지보수를 중단하면 가상화를 통해 Linux 오픈 소스 드라이버를 사용하여 대체할 수 있습니다.
  • 네트워크의 구형 ATM을 지원할 수 있도록 하이퍼바이저 공급업체가 제공 가능한 한 Intel 및 AMD 칩셋을 지원합니다.
  • 위에서 지적한 바와 같이 구형 하드웨어의 잠재적인 소프트웨어 드라이버 관련 문제를 염두에 두고 Microsoft의 향후 LTSC를 지원합니다.

이상적으로는 전 세계의 모든 ATM 마더보드 모델을 지원하기 위해 ATM 산업에는 각 공급업체의 단일 글로벌 하이퍼바이저 릴리스가 필요합니다.

결론 및 성공 방법

가상화는 Windows OS 업그레이드와 PC 코어 하드웨어 업그레이드 간의 연결을 끊음으로써 ATM 구축 사용자의 딜레마를 해결합니다. OS와 하드웨어를 별도로 업그레이드할 수 있으므로 Windows 7이 2020년에 지원이 중단될 때 발생할 ATM 네트워크의 막대한 혼란을 제거할 수 있습니다.

두 곳의 하이퍼바이저 공급업체와 함께 와 함께 KAL을 통해 가상화 개념을 테스트한 세계 최초의 은행은 미국의 한 은행이었습니다. 며칠 동안 진행된 PoC(개념 증명)을 통해 은행의 현재 소프트웨어 스택을 가상화 환경에서 실행할 수 있는 능력이 입증되었습니다.

KAL과 함께 이 개념을 시험한 최초의 유럽 은행은 체코 공화국의 Česká spořitelna였습니다. Jiří Charousek는 이 기술을 바로 높이 평가하고 첫 번째 테스트를 진행했습니다. Jiří는 “XP-W7 업그레이드 직후 하드웨어를 업그레이드해야 하는 일을 우려했는데, 가상화가 대체 옵션을 제공해주게 되어 매우 기쁘게 생각합니다. ATM 가상화는 인프라 영역 내에서 장기적으로 Česká가 보유한 개념을 토대로 구축되었으므로 매우 자연스러운 아이디어어로 다가왔습니다. 가상화는 이미 전략에 포함된 사항이었으며, ATM이 예외적인 경우였습니다.”

이 개념은 하드웨어 공급업체에게도 큰 도움이 됩니다. 이들 업체는 종종 마더보드와 칩셋을 대량으로 구입하지만 새로운 OS 업그레이드로 인해 기존 하드웨어 재고가 쓸모가 없다는 사실을 알게 됩니다. KAL은 가상화로 마더보드와 운영 체제 사이의 긴밀한 연결 고리가 끊어짐에 따라 ATM 제조업체도 비용을 절감할 수 있을 것으로 보고 있습니다.

OS 가상화는 새로운 운영 체제를 지원하기 위해 ATM 차량을 지속적으로 업그레이드해야 하는 은행의 부담스럽고 비싼 비용과 시간 소모적인 프로세스를 제거하는 방법을 제공합니다. 하드웨어를 영구적으로 업그레이드할 필요가 없게 만들어주지는 않지만, OS 업데이트 때문에 ATM을 업그레이드할 필요는 없어집니다. 은행으로서는 너무 오래되었거나, 속도가 너무 느리거나, 향후 CPU 기능을 사용하여 고객에게 흥미로운 새 서비스를 제공하려는 등의 이유로 여전히 PC 코어를 업그레이드해야 할 필요가 있습니다. 은행은 이러한 사유가 하드웨어를 업그레이드해야 하는 이유라는 데 동의할 것입니다.

따라서 은행으로서는 보유한 ATM 소프트웨어 및 ATM 하드웨어에 관련된 모든 RFP에 가상화 지원을 의무화하는 것이 중요합니다.

감사한 분들

많은 분들이 이 프로젝트와 그 실효성을 확인하는 데 기여해주셨습니다. KAL은 이러한 해결책을 찾아내는데 도움을 주신 분들께 심심한 감사의 뜻을 표하는 바입니다.

  • ATMIA: Mike Lee
  • Citibank: Peter Kulik
  • Česká: Jiří Charousek
  • Intel: Oania Wei
  • KAL: Kit Patterson, Andrea Vinci, Giuseppe Scardino
  • Microsoft: Pat Telford
  • Payment Redesign: Eric de Putter
  • Red Hat: David Hutchison-Bird, Daniel Schaefer, Rich Feldman
  • VMWare: Thomas Klouwer
  • Wind River: Davide Ricci, Rick Anderson, Kevin Konkos

팔로우업

여러분의 의견, 질문 및 피드백을 환영합니다. 아래의 블로그 토론에 참여해주십시오.

PDF 형식의 백서 사본을 다운로드할 수 있습니다.

이 백서와 관련된 질문이 있으면 주저하지 말고 문의해주십시오.