개발자

“파란 화면의 마법” 유용한 파워셸 툴 7종

Jonathan Hassell | Computerworld 2023.03.28
간소한 파란 화면과 텍스트로 구성된 파워셸은 포인트 앤 클릭 GUI 방식의 윈도우 관리를 스크립트로 바꿔 놓았다. 이 스크립트는 모든 것을 자동화하고, 로그 및 ID 수명 주기를 제어하고, 어느 서버가 어느 업데이트를 받을지 관리한다. 최신 버전의 윈도우 서버 외에도 마이크로소프트 365, 애저, 인튠, 비바, 그 외의 온갖 클라우드 서비스의 모든 기능을 파워셸로 액세스할 수 있다. 일부 서버의 GUI나 웹 인터페이스로는 아예 접근이 불가능한 부분도 있어서, 파워셸은 이제 필수 툴이라고 해도 과언이 아니다.
 
ⓒ Getty Image Bank

다만 제대로 쓰고 있는지 헛갈릴 때가 종종 있는데, 이때 필요한 것이 업무 효율을 높여줄 부가 툴이다. 여기서는 파워셸 세계의 유용한 툴 7가지를 살펴본다. 스크립트를 쓰고 있든, 데브옵스 환경에서 일하든 혹은 파워셸을 사용해 마이크로소프트가 아닌 업체의 소프트웨어를 관리하든 상관없이, 이 툴 중에서 필요한 것을 찾을 수 있을 것이다. 2개 유료 제품(하나는 제한된 기능으로 영구 무료이며 다른 하나는 45일 무료 평가판이 있다)을 제외하면 모두 무료다. 하나씩 자세히 살펴보자.
 

아이언맨 파워셸 유니버설

아이언맨 파워셸 유니버설(Ironman PowerShell Universal)은 웹 기반 파워셸 스크립트를 작성하고 한 곳에서 실행할 수 있는 매우 유용한 관리 및 개발 툴이다. 새로 생성된 API 또는 직접 만든 API를 포함해 다양한 스크립트를 작성하고, 기본 파워셸 cmdlet과 많은 서버 애플리케이션에 함께 제공되는 스크립트 포함해 다른 스크립트를 호출하고, 다른 관리자에게 기능을 위임하는 화이트보드라고 생각하면 된다. 각자 사용자 환경에 맞게 구성된 관리 기능의 중앙 저장소 개념이다.
 
파워셸에서 작업해야 할 일이 있다면 파워셸 유니버설이 더 효율적으로 처리할 수 있도록 도와준다. ⓒ Jonathan Hassell/IDG

파워셸 유니버설은 다양한 작업을 시작하는 데 도움이 되는 여러 템플릿을 기본으로 제공한다. 액티브 디렉터리 사용자 및 그룹 관리, 다양한 입력 및 사례를 처리하기 위한 더 복잡한 스크립트용 터미널 기반 사용자 인터페이스 구축, C# 코드와 파워셸의 상호 변환 등이 대표적이다. 파워셸에서 작업해야 한다면 이 툴을 사용하면 더 보기 좋고 접근성이 좋은 것은 물론 나중에 반복해서 사용하기에도 더 쉽다.

무료 버전에는 엔터프라이즈 기능이 빠져있다. 엔터프라이즈 기능은 서버당 500달러이며(여기서 서버의 정의는 스크립트와 서버 인터페이스가 호스팅되는 시스템), 둘 이상의 서버에는 할인을 제공된다. 윈도우, 리눅스, 맥, 도커를 포함한 거의 모든 플랫폼을 지원한다.
 

스크립트러너 액션팩 스크립트 모음

가끔, 특히 파워셸을 배우는 데 종일 시간을 쓸 수는 없는 경우 다른 스크립트의 예제를 통해 배우는 것이 가장 빠른 방법일 때가 있다. 다른 스크립터가 어떻게 툴을 만들었는지 보고, 내 필요에 맞게 조정하는 것이다. 예를 들면 “이 사람은 결과를 가져와서 배열에 넣은 다음 그 결과를 다른 cmdlet에 하나씩 넘기는구나. 나도 이 데이터로 똑같은 방법을 사용하면 되겠다”는 식이다. 이렇게 하면 스크립트를 만드는 시간을 크게 줄일 수 있다.
 
1,500가지 이상의 스크립트 예제가 포함돼 있다. ⓒ Jonathan Hassell/IDG

이런 영감과 예제를 찾아보는 데 스크립트러너 액션팩(ScriptRunner ActionPacks)보다 좋은 것은 없다. 액티브 디렉터리, 익스체인지, 마이크로소프트 365, VM웨어, 윈도우 서버 등 다양한 주제에 걸쳐 1,500가지 이상의 스크립트가 있다. 모두 깃허브에서 손쉽게, 무료로 다운로드할 수 있다. 이 샘플 스크립트와 앞서 소개한 아이언맨 파워셸 무제한 버전의 자동화 및 접근성 기능을 결합하면 관리 자동화를 시작할 수 있는 강력한 기반을 갖추게 된다. 무료다.
 

비주얼 스튜디오 코드와 비주얼 스튜디오 코드용 파워셸

비주얼 스튜디오 코드가 나오기 전에는 (과장을 조금 보태면) 세상은 지금보다 더 암울했고 스크립트 편집은 메모장이나 타사 텍스트 편집기에서 했으며 색상도 밋밋했고 음식도 맛이 없었다. 반면 비주얼 스튜디오 코드는 매우 유용한 무료 코드 편집기로, 비주얼 스튜디오 통합 개발 환경(IDE)의 가벼운 버전이면서 여전히 강력하다.
 
비주얼 스튜디오 코드와 비주얼 스튜디오 코드용 파워셸은 당장 다운로드해도 후회하지 않을 것이라고 장담한다. ⓒ Jonathan Hassell/IDG

비주얼 스튜디오 코드에는 코드와 스크립트를 조작하고 작성하기 위한 여러 유용한 기능이 있고, 비주얼 스튜디오 코드용 파워셸 플러그인은 비주얼 스튜디오 코드 내에서 파워셸 언어를 위한 여러 특별한 혜택을 제공한다. 예를 들면, 구문 강조 표시, 코드 스니펫, 인텔리센스(편집기 창의 컨텍스트 내에서 올바른 cmdlet 구문을 작성하는 데 도움이 됨), 이동(Go To), cmdlet 및 변수 찾기(Find)와 같은 탐색 기능, 로컬 스크립트 디버깅, 그리고 아마도 가장 중요한 색 조합 선택 등이다.

비주얼 스튜디오 코드는 빠른 텍스트 편집, HTML 문서 마크업, 간단한 셸 스크립트 작성 등 많은 작업에서 매우 유용한 툴이고, 파워셸 플러그인은 그 유용성을 더 높여준다. 둘 다 무료이며, 즉시 다운로드해서 설치할 것을 권한다.
 

사피엔 테크놀로지 파워셸 스튜디오 2023

숙련된 파워셸 개발자와 관리자에게는 더 고급 툴이 필요하다. 이들이 가장 먼저 살펴볼 툴은 사피엔 테크놀리지(Sapien Technologies)의 파워셸 스튜디오 2023(PowerShell Studio 2023)이다. 파워셸 스튜디오를 처음 열면 바로 비주얼 스튜디오가 연상된다. 그도 그럴 듯이, 비주얼 스튜디오가 통합 개발 환경이라면 파워셸 스튜디오는 통합 스크립팅 환경이기 때문이다.
 
고급 파워셸 스크립트를 만들고 싶다면 파워셸 스튜디오를 살펴볼 필요가 있다. ⓒ Jonathan Hassell/IDG

주요 기능을 보면, 리본, 원격 디버깅 지원, 스크립트를 실행 파일로 바꿔주는 컴파일러 기능, 스크립트 코드 체크인/체크아웃을 위한 소스 제어, 여러 개발자 지원 등이 있다. 특히 여러 파워셸 버전 지원하므로, 다양한 수준의 윈도우 서버 운영체제를 실행하는 다양한 서버를 대상으로 하는 스크립트에 유용하다. 이러한 모든 기능은 관리자와 개발자가 함께 다양한 시나리오에 대처하는 고급 파워셸 스크립트를 쓰는 기업에 안성맞춤이다.

가격은 좀 비싸다. 영구 라이선스는 499달러, 1년 구독은 월 25달러 또는 1년 일시불 250달러다. 또한 설치 프로그램을 실행하면 5GB의 여유 공간이 필요하다. 다행히 요즘 스토리지 비용이 저렴한 편이다. 파워셸에 주력하고 있다면 이 제품의 다양한 기능을 고려했을 때 감수할 만한 비용이다. 45일 동안 평가판을 사용하면서 구매할 필요가 있는지 판단할 수 있다.
 

파워셸용 AWS 툴

파워셸은 2006년 출시된 이후 대규모 서버 시스템의 관리를 위한 보편적인 스크립팅 언어로 자리 잡았다. 아마존 웹 서비스와 같은 경쟁 관계의 클라우드 서비스도 윈도우 서버가 거대한 시장이며, 많은 관리자가 파워셸을 배우고 있고, 관리자가 아마존 서비스를 더 쉽게 관리할 수 있게 해주는 모든 것이 결국 기업을 아마존 서버에 묶어두는 데 도움이 된다는 사실을 인식하고 있다. 그런 인식을 바탕으로 탄생한 것이 파워셸용 AWS 툴(AWS Tools for PowerShell)이다.
 
파워셸용 AWS 툴은 아마존 서비스를 관리하는 데 유용하다. ⓒ Jonathan Hassell/IDG

파워셸용 AWS 툴을 사용하면 일래스틱 컴퓨트 클라우드(EC2)에서 실행되는 가상 머신과 서비스 인스턴스를 관리하거나, 다양한 아마존 서비스에서 실행 중인 워크로드의 관리를 자동화하는 스크립트를 쓸 수 있다. 이 툴은 파워셸의 “영향권” 내에 여러 cmdlet을 설치하고, EC2의 가상 머신 데이터를 심플 스토리지 서비스(S3)로 백업하거나 메트릭을 로깅해서 아마존 클라우드워치(CloudWatch) 개인 대시보드에 게시하는 등의 작업을 관리하고 스크립팅할 수 있다. 파워셸을 잘 알고 아마존 클라우드 서비스를 사용하는 사람에게는 매우 유용한 툴이다. 가격도 무료다.
 

비주얼 스튜디오 및 비주얼 스튜디오 코드용 파워셸 툴

아이언맨 소프트웨어가 제공하는 또 다른 유용한 패키지이다. 마이크로소프트의 비주얼 스튜디오 제품과 무료 비주얼 스튜디오 코드 편집기에서 더 쉽게 파워셸 코드를 작성할 수 있게 해주는 소프트웨어 번들인 파워셸 프로 툴(PowerShell Pro Tools)이다.
 
아이언맨의 파워셸 프로 툴은 파워셸 코드를 더 쉽게 쓸 수 있도록 지원한다. ⓒ Jonathan Hassell/IDG

이 프로젝트는 비주얼 스튜디오 내에 통합되어 구문 강조 표시와 색을 구현하고, 비주얼 스튜디오 창 내에서 입력할 때 변수와 cmdlet, 인수 등의 구문 요소를 자동으로 완성하기 위한 인텔리센스 지원을 추가한다. 또한 비주얼 스튜디오 프로젝트를 위한 옵션을 확장해 스크립팅 작업을 체계화하고, MS 빌드(Build) 컴파일러에서 스크립팅 인수 지원을 확장하고, 중단점 및 중단점 창 지원을 통해 스크립트 디버깅을 지원한다. 또한 페스터(Pester), PSate 테스트 어댑터로 일부 테스트 기능도 확장한다.

개인용의 경우 월 10달러부터 영구 라이선스 100달러까지 있다. 파워셸 프로 툴과 파워셸 유니버설을 합쳐 150달러에 영구 라이선스를 부여하는 아이언맨 번들 상품도 있다. 기업용 가격은 개인용보다 꽤 높은 편으로, 사용자당 월 20달러이며 영구 라이선스의 경우 사용자당 200달러다.
 

VM웨어 파워CLI

VM웨어 역시 아마존과 마찬가지로 상호 고객의 이익을 위해서는 경쟁사와의 우호적 관계도 나쁘지 않다는 것을 인식했다. VM웨어는 전체적으로 파워셸을 통합하는, VM웨어 v스피어 리소스를 관리하기 위한 명령줄 기반 환경인 파워CLI(PowerCLI)를 만들었다.
 
파워CLI는 VM웨어 환경 관리에 파워셸을 통합한다. ⓒ Jonathan Hassell/IDG

기본적으로 파워CLI 환경은 v스피어 및 v클라우드와 상호작용하는 cmdlet 묶음이다. 또한 VM웨어 제품에 의해 노출되는 다양한 API를 위한 C# 및 파워셸 기반 인터페이스를 제공한다. VM웨어를 사용하고 있고, 파워CLI를 써 보고 싶다면 이 링크를 방문하면 된다. 샌드박스에서 모두 사이좋게 지내면(?) 좋지 않은가? 무료이고, cmdlet 레퍼런스도 마찬가지다.
editor@itworld.co.kr
Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.