개발, 스테이징, 프로덕션 및 QA 환경을 설정하는 방법


8

조직에 새 서버를 설정하는 중입니다. 개발, 테스트, 스테이징 및 프로덕션으로 새로운 환경을 설정하기위한 표준 또는 모범 사례는 무엇입니까 (또는 익숙하지 않은 다른 수준에 공개되어 있습니까)? 또한 조직이 서버를 SQL, 응용 프로그램, 웹 서버 등으로 분류하는 것에 대해 들었습니다. 서버 설정을위한 가능한 솔루션의 좋은 예는 어디에서 찾을 수 있습니까?

몇 개의 물리적 상자에서 이러한 환경을 가상화하는 것이 좋은 방법입니까?

다른 조직의 환경 설정 방법에 대한 아이디어를 온라인에서 검색했지만 특별히 도움이되는 것은 없습니다. 중소 기업을위한 전체 엔터프라이즈 솔루션 구축에 대해 설명 할 수있는 링크를 환영합니다.

: 난 그냥이 링크를 발견 http://dltj.org/article/software-development-practice/ 나는 누군가가 날 지점 수있는 좋은 사람으로 알고있는 경우이 같은 더 많은 기사를 찾으려면합니다.

내 질문에 투표하기 전에 의견을 게시하여 자세한 설명을 드리겠습니다. 올바른 질문을하기에 충분하지 않을 수도 있습니다.


2
가장 먼저해야 할 일은 수행해야 할 실제 작업을 설명하는 것입니다. 신청은 무엇입니까? 얼마나 많은 부하가 있습니까? 어떤 변화가 생길 것이라고 생각하십니까? (As : Dev, Test, Stage, Prod, 4 개의 계층이 필요하십니까)
MichelZ

1
요구 사항은 50 개 미만의 많은 사용자 지정 인트라넷 응용 프로그램을 호스팅하는 것입니다. 이들은 모두 Microsoft 스택에 있습니다. 현재 개발을 위해 개발 Sql 서버와 로컬 웹 서버를 사용하고 있으며 테스트 환경과 프로덕션 환경을 모두 호스팅하는 별도의 Sql 서버와 웹 서버를 사용하고 있습니다. 나는 우리가 현재하고있는 것보다 훨씬 더 잘 할 수 있다는 것을 알고 있기 때문에 독창성 이이 질문을 게시 한 이유입니다. 내 경험에 "더 나은"것이 무엇인지 알 필요는 없습니다.
TreK

2
답변 자체는 아니므로 의견으로 작성하겠습니다. 한 가지 확실한 사실은 테스트 환경이 프로덕션 환경에 액세스 할 수 없도록하는 메커니즘 (예 : API 키, IP 유효성 검사)이 있다는 것입니다.
HTTP500

답변:


8

이것은 꽤로드 된 질문입니다. 저의 일반적인 조언은 복잡성 관리에주의를 집중하고 시스템이 유기적으로 성장할 수 있도록하는 것입니다.

가상화 :

서버 스프롤을 피하고 싶고 요즘에는 모든 것이 가상화됩니다. 가상 서버를 신속하게 추가하고 효율적으로 관리 할 수있는 플랫폼을 선택하십시오. 내가 본 트렌드 중 하나는 2 개의 AIX 또는 VMWare 클러스터 (하나는 prod, 하나는 비 prod)입니다. 비 제품은 모든 개발, 테스트 및 준비 환경에 사용됩니다. 이러한 환경은 웹 서버 또는 응용 프로그램 서버에 적합하지만 점점 커지고있는 프로덕션 데이터베이스를 VM (적어도 Windows에서는)으로 두는 것을 피하려고합니다.

데이터베이스

이들은 다른 서버와 리소스를 공유해야 할 때마다 쉽게 벗어날 수 있습니다. 특별한 이유가없는 한 항상 전용 OS에서 데이터베이스를 실행하고 응용 프로그램이나 웹 서버와 공유하지 마십시오. VM을 사용하든 하드웨어를 사용 하느냐가 유일한 질문입니다.

예를 들어 클러스터 된 솔루션으로 이동해야 할 경우 확장 가능한 인프라가 필요합니다. 대부분의 데이터베이스는 VM에서 잘 될거야,하지만 결국 VM 환경에서 제공하는 편리한 것보다 더 많은 마력이 필요합니다 그 몇 가지를 들어, 당신은 당신이에 넣어 줄하고자하는 자신을 찾을 대신 원시 하드웨어 .

창에 대해 이야기하지 않는다면 이러한 지침 중 일부는 관련이 없습니다. 예를 들어, 커지고있는 데이터베이스를 AIX 하이퍼 바이저에 LPAR로 배치하는 것이 일반적으로 일반적입니다.

저장

공유 스토리지가 없으면 실제 가상화 (VM 이동성 및 호스트 클러스터링 사용)를 수행 할 수 없습니다. 제품, 개발, 테스트 및 QA 서버는 모두 스토리지와 동일하게 보이지만 제품의 우선 순위를 정하는 방법을 찾는 데 시간을 투자 할 수 있습니다. 예를 들어 dev 서버와 디스크 (레이드 세트, 풀 등)를 과도하게 세금을 부과하는 것은 매우 나쁜 생각입니다. 개발자는 때로는 제품만큼이나 하드 디스크를 강타 할 수 있으며, 마지막으로 필요한 것은 일종의 테스트가 생산 속도를 늦추고 있는지 알아내는 것입니다.

스토리지를 아는 사람이 앉아 잠재적 인 모든 병목 현상 (포트, 캐시, 컨트롤러, 디스크 등)을 분석하고 가능한 많은 제품과 비 제품 간의 경합을 막기 위해 최선을 다하십시오.

즉, 응용 프로그램 사람들은 새로운 패치 나 그 밖의 효과를 정량화하기 위해 개발자 벤치 마크를 실행해야 할 때가 있습니다. 이 상황에서 비슷한 양 (또는 적어도 수량 적으로 다른 양)의 스토리지 마력을 제공 할 수 있어야합니다.


1

이 환경이 필요한 것은 무엇입니까? 공급 업체 소프트웨어 또는 귀사 자체 개발을하고 있습니까?

이것이 도움이된다면 HP와 Dell은 모두 현재 데이터 센터를 방문하여 평가하고 처음부터 개선하거나 새로 만들 것을 권장합니다. 포럼 독자들은 좋은 답변을 줄 수는 있지만 "내가 가지고있는 것, 원하는 곳과 필요한 곳"을 보지 않으면 확실한 대답을하기가 어려울 것입니다. 관리상의 이유로 하나의 하드웨어 공급 업체를 선호하십시오.

우리는이를 염두에두고 데이터 센터를 보유하고 있습니다 (하드웨어를 갖추고 있습니다)

EMC SAN 백엔드가 포함 된 VMWare 환경 C7000 Hp 블레이드 인클로저, 8 기가 섬유 연결.

이를 통해 스폴, 전기 사용 및 에어컨 비용을 제한 할 수 있습니다. 테스트 머신, 개념 증명 서버, 애플리케이션 고유의 하드웨어가 필요없는 프로덕션 서버 (USB 동글, 팩스 보드 등)에 사용됩니다.

물리적 블레이드 서버 환경 8 블레이드 광섬유를 통해 EMC SAN 백엔드에 연결된 16 블레이드 HBA가있는 C7000 Hp 블레이드 인클로저.

많은 양의 RAM 및 CPU가 필요하지만 고유 한 하드웨어 추가가없는 시스템에 적합합니다. 가상 머신은 많은 양의 CPU 또는 RAM이 필요한 경우를 제외하고는 정상입니다. VMWare를 사용하면 하드웨어 사용량의 균형을 유지하기 위해 vmserver를 호스트 시스템으로 vmotion으로 이동할 수 있습니다. VM 부동산은 최대로 사용될 때만 비용 효과적입니다. 즉, 몇 개의 큰 기계 대신 더 작은 기계를 의미합니다. 이것은 또한 일어 서려는 시스템에 달려 있습니다.

물리적 서버 (1U-5U)

HP DL360-DL 5xx 서버. 4x 8 코어 CPUS 및 256Gig 램, 텔레콤 인터페이스 용 직렬 카드 또는 여러 전화선에 연결된 고급 팩스 보드와 같은 특수 하드웨어. 이 그룹에는 공급 업체가 큰 로컬 스토리지를 요구 한 서버가 포함됩니다.

이것은 예이지만 완전한 대답은 아닙니다. 하드웨어 공급 업체에 문의하여 현재 위치와 더 나은 /보다 효율적으로 만드는 방법에 대한 아이디어를 제공하십시오.


0

개발, 테스트, 준비 및 프로덕션으로 새 환경을 설정하기위한 표준 또는 모범 사례는 무엇입니까?

이것은 다른 고려 사항 중 예산에 달려 있습니다. 표준이 있는지 확실하지 않지만 모든 상자에서 OS 및 기타 소프트웨어를 동일하게 유지하려고합니다. Puppet과 같은 자동화 도구를 사용하여 빌드를 자동화하고 표준화하십시오.

몇 개의 물리적 상자에서 이러한 환경을 시각화하는 것이 좋습니다?

가상화? 예. 좋은 연습. 그러나 가상 머신으로 실행하기에 적합한 구성을 확인해야합니다.

조직이 서버를 SQL, 응용 프로그램, 웹 서버 등으로 분류하는 것을 들었습니다. 서버 설정을위한 가능한 솔루션의 좋은 예를 어디에서 찾을 수 있습니까?

아마도 다른 사람들이 침입 할 수도 있지만 OS와 응용 프로그램 업그레이드 및 가용성 중 여러 가지 이유로 다른 서버에 다른 구성 요소를 설치하려고 할 것입니다.


1
그것은 모두 그의 프로젝트 규모에 달려 있습니다. 나는 당신이 당신의 개인 홈 영화 데이터베이스를 위해 그 중 어느 것도 필요하다고 생각하지 않습니다 ... :) OP에서 더 많은 정보가 필요하다고 생각합니다
MichelZ
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.