Solaris 10 OS에서 영역의 「Update on Attach」기능과 패치 적용Enda O'Connor, 2009년 6월 소개Solaris 10 5/08 운영 체제 이후, 시스템 관리자는 영역을 분리 및 연결할 수 있게 되었습니다. 즉 1개의 시스템에서 영역을 분리하여 다른 시스템에 연결하는 것입니다. 초기 기능에는 비전역 영역이 연결되어 있는 원본과 대상의 두 시스템이 같은 소프트웨어 레벨의 패키지 버전, 패치 레벨 및 아키텍처를 가질 필요가 있었기 때문에 몇 가지 제한이 있었습니다. 즉, sun4v 시스템에서 sun4u 시스템으로, 혹은 이전의 Solaris 릴리스에서 최신의 Solaris 업데이트 릴리스로 영역을 이동할 수는 없었습니다. Solaris 10 10/08 릴리스에서는 이 기사에서는 「Update on Attach」에 대해 기술하며 다음의 항목을 다룹니다.
어느 패키지가 업데이트될지 결정하는 기준「Update on Attach」를 사용하면, 연결된 영역은 다음 규칙에 따라 전역 영역과 같은 소프트웨어 레벨로 업데이트됩니다. 어느 패키지가 업데이트되는지는 이러한 규칙에 의해 결정됩니다.
한 번 패키지를 업데이트하도록 선택하면, 영역을 최초로 설치했을 때 패키지를 설치한 것과 같은 처리가 다음 처리를 실행하기 위해서 행해집니다.
예를 들어 때문에 상기 3번 항목의 예로 패키지 A에 비전역 영역이 사용하는 계승된 패키지 디렉토리를 고려하는 경우, 선택 기준은 중요합니다. 전체 루트 비전역 영역의 경우에는 계승된 패키지 디렉토리는 없습니다. 따라서 같은 소프트웨어 레벨에서 실행되는 스파스 영역에 비해 업데이트하도록 선택되는 패키지는 적어집니다. 또한 「Update on Attach」와 통상 업그레이드앞으로 진행하기 전에 지원받고 있는 업그레이드 기구 중 하나에 의한 표준 업그레이드와 「Update on Attach」를 사용하는 방법의 차이를 이해하면 좋을 것입니다. 표준 업그레이드를 실시하면 Solaris에 속한 비전역 영역은 모두 업그레이드됩니다. 즉 업그레이드 과정에서 전달되는 모든 새로운 패키지와 기능이 수신되고 구 패키지는 삭제됩니다. 또한 비전역 영역과 전역 영역은 업데이트 릴리스로 전달되는 패치와 패키지 버전이 같은 소프트웨어 레벨이 됩니다. 바꾸어 말하자면 업데이트 이미지는 전역 영역 및 비전역 영역에 적용됩니다. 업그레이드를 하는 동안 전역 영역과 비전역 영역에 관한 의존 관계 검사는 행해지지 않습니다. 또한 이미지의 일부인 패키지는 모두 전역 영역을 포함한 모든 영역에 걸쳐 배치됩니다. 이에 비해 「Update on Attach」를 사용하는 경우, 전역 영역 및 업데이트되는 비전역 영역 모두의 소프트웨어 목록이 취득됩니다. 그 다음, 앞서 말한 3가지 기준에 따라 따라서 시스템에서 비전역 영역을 모두 분리하여 전역 영역에서 후속 업데이트 릴리스로 표준 업그레이드한 다음, 비전역 영역에 대해 「Update on Attach」를 사용할 경우, 업그레이드 시에 연결된 영역에 대하여 시스템 전체의 표준 업그레이드를 행한 경우와는 다른 결과가 됩니다. 다음의 항목이 1개라도 해당되지 않는 경우, 업데이트로 전달된 새로운 패키지는 모두 연결된 비전역 영역에 전파되지 않습니다.
「Update on Attach」의 주요 사용 목적은 사용자에 의한 대화적 처리를 최소한으로 억제하면서 어떤 시스템에서 다른 시스템으로 비전역 영역을 이행할 수 있도록 하는 것입니다. Solaris 10 10/08 릴리스 이전에는 연결된 비전역 영역의 시스템 소프트웨어가, 연결된 비전역 영역이 존재하는 시스템과 정확하게 같은 소프트웨어 레벨에 있도록 해야 했습니다. 영역의 「Update on Attach」를 사용하면 시스템 관리자는 낮은 패치 레벨 영역에 연결할 수 있게 되고, 영역은 자동적으로 연결 위치의 전역 영역과 같은 패치 레벨로 업데이트됩니다. 또한 sun4v 시스템에서 sun4u 시스템으로, 혹은 sun4u 시스템에서 sun4v 시스템으로 비전역 영역을 이행할 수도 있게 되었습니다. 「Update on Attach」의 주요 사용 목적 한 가지는, 다른 시스템 간에 Solaris Containers를 신속하고 용이하게 이행할 수 있게끔 하는 것입니다. 컨테이너란 비전역 영역과 리소스 제어를 조합한 것을 말합니다. 사용 예를 들겠습니다. Sun Fire T2000 서버에서 각각 특정 데이터베이스를 가지는 5개의 컨테이너가 실행되고 있으며, 시간의 흐름에 따라 그 중 1개의 데이터베이스가 특별히 증대한 경우, 시스템 리소스가 고갈되어 성능 문제가 발생하는 일이 있습니다. 영향을 받은 컨테이너를 더욱 고성능 시스템으로 이행하지 못하면 최종 사용자는 컨테이너, 컨테이너 내의 소프트웨어 및 소프트웨어 구성을 다른 시스템에 복제하여 최종적으로는 구 컨테이너에서 새로운 컨테이너로 스위치를 만들어야 하는 경우가 있습니다. 그러나 영역 이행으로 이 작업이 훨씬 용이해집니다. 영향을 받은 컨테이너를 데이터베이스, 구성 및 관련된 작업 부하별로 새로운 시스템으로 이동할 수 있게 되어, 이에 따라 이 컨테이너와 구 시스템상의 나머지 4대의 컨테이너를 사용할 수 있는 리소스가 증가하기 때문입니다. 패치 적용과 영역의 「Update on Attach」비전역 영역을 전역 영역과 같은 패치 레벨로 만들 수 있는 「Update on Attach」는 많은 관심을 모았습니다. 일례를 들겠습니다. 시스템 관리자는 패치 번들을 적용하기 전에 모든 비전역 영역을 분리하고, 그 후에 전역 영역에 패치 번들을 적용할 수 있습니다. 그리고 번들을 적용해 시스템을 재부트한 뒤, 영역의 이것을 실행하는 주된 이유는 「Update on Attach」를 사용하는 것이 연속해서 영역에 패치를 적용하는 것보다 훨씬 속도가 빠르기 때문입니다. 복수의 이러한 일이 일어나는 이유를 설명하기 위해 조금 부자연스럽지만, 한 가지 예를 들겠습니다. 비전역 영역 중 1개가 전체 루트 영역이고, 적용된 패치 중 1개가 Mozilla Firefox에 패치를 적용하는 패치 125539-05인 경우, 전역 영역에는 125539-05가 적용되지만 영역의 「Update on Attach」에서는 비전역 영역의 대신, 연결된 영역에 또한 전체 루트 비전역 영역에서는 이것은 119254/119255가 패치를 적용하는 따라서 통상 업데이트되는 패키지는 모두 처음에 비전역 영역에서 삭제됩니다. 다음으로, 영역을 처음 설치하기 위해 사용된 것과 같은 기능을 사용하여 그 패키지는 전역 영역에서 재설치됩니다. (이 기능은 CR 6818813으로 인해 후속 업데이트 릴리스로 변경될 예정입니다. CR 6818813이 수정된 뒤에는 업데이트 패키지로 선택된 패키지 중 전역 영역에 설치된 패키지와 버전이 일치하는 것은 모두 삭제되지 않고 비전역 영역의 패키지가 단순히 대체됩니다. 이로 인해 「Update on Attach」 성능의 고속화도 전망됩니다.) 따라서 영역을 최초로 설치하기 위해 사용된 것과 같은 기능이 「Update on Attach」에서도 사용됩니다. 업데이트되는 패키지의 경우에는 패키지의 모든 패치 패키지 최종 사용자가 단순히 전체 루트 영역과 스파스 루트 영역전체 루트 영역이 아닌 스파스 루트 영역(양 영역은 같은 시스템으로 동시에 프로비저닝되고 있기 때문에 같은 패키지 및 패치 레벨에 있습니다)에 「Update on Attach」를 사용하면 업데이트되는 양 영역에서 다른 수의 패키지가 업데이트됩니다. 따라서 Solaris 10 5/08 OS 상에서 작성되어 Solaris 10 10/08 레벨로 업데이트된 스파스 루트 영역에서는 505개의 패키지가 업데이트 패키지로 선택됩니다. 한편, 전체 루트 영역에서는 311개의 패키지가 업데이트 패키지로 선택됩니다. 때문에 패치 적용의 속도 향상을 위해 영역의 「Update on Attach」 사용을 검토하기 전에, 「Update on Attach」를 사용해 비전역 영역을 전역 영역과 같은 패치 레벨로 하는 방법과, 연결되어 있으면서 패치를 적용할 수 있는 모든 비전역 영역에 단순히 IDR(Interim Diagnostic Relief) 패치와 특별 패치의 존재Sun에서 제공되는 IDR 패치가 연결된 영역에 설치되어 있는 경우, 비전역 영역을 분리하기 전에 완전히 똑같은 IDR이 대상의 전역 영역에 적용되고 있거나, IDR이 원본의 비전역 영역에서 삭제되어 있어야 합니다. Solaris 10 5/09 OS에서는zoneadm attach 명령으로 제공되고 있는 -b 인수로 영역 연결 중에 IDR을 삭제함으로써 이 문제에 대응하고 있습니다.
또한 Solaris 10 업데이트 이미지 구축에만 사용되고 지금까지 릴리스되지 않은 「특별 패치」라고 불리는 패치의 존재도 해결해야 합니다. 특별 패치에 대해서는, 현재 릴리스되고 있는 패치 140197의 CR 6743776으로 대응하고 있습니다. 이러한 특별 패치 처리에 관한 영구적인 해결책은 Solaris 10 5/09 OS의 패치 139555-08에서 전달되는 CR 6791625로 대응하고 있습니다. 「Update on Attach」를 실행하기 위한 순서1. 원본 시스템에서 2. 대상 시스템으로 영역 경로를 이동합니다. 3. 대상 전역 영역의 커널 패치 레벨이 139555(Solaris 5/09 이후의 업데이트 레벨)가 아닌 경우, 다음 명령을 실행하고, 원본 비전역 영역 패키지를 강제로 재생성합니다. 관련된 CR은 6685069입니다. #rm <zonepath>/SUNWdetached.xml 4. 대상 시스템에서 5. 마지막으로 다음의 명령을 실행합니다. #zoneadm -z <zonename> attach -u 영역 이행에 필요한 순서의 상세 설명에 대해서는 비전역 영역을 이행하는 방법을 참조하십시오. Solaris 10 5/09에서는 에러 보고 기능도 개선되었습니다. 다운그레이드로 간주되는 패키지(즉, 연결되어 있는 비전역 영역의 패키지 버전이 연결되어 있던 원본 전역 영역의 패키지 버전보다 높은 경우)에 대해, 이전 릴리스에서는 모든 사례가 하나씩 보고되었습니다. 다시 말해서, 상세 정보다음으로 추가 리소스를 몇 가지 소개합니다.
Comments (latest comments first)Discuss and comment on this resource in the BigAdmin Wiki
Unless otherwise licensed, code in all technical manuals herein (including articles, FAQs, samples) is provided under this License. |
BigAdmin SubscriptionsBigAdmin Areas
BigAdmin Sun Center
BigAdmin Topics | ||||