비밀 뒤에 LOL IT 인프라 슈 제품보다는 서비스

텅스텐 원단 사용자의 경우 시리즈에 오신 것을 환영합니다 함께 더 TF 시나리오 것을 발견했다. "비밀 LOL"시리즈의 주인공은 텅스텐 직물 사용자 라이 엇 게임 게임을 회사 LOL 같은 "리그"은 "영웅"뒤에 우리에게 비밀 LOL을하자, 개발자 및 운영자가, 라이 엇 게임즈는 전 세계적으로 복잡한 배포에 도전하다 그들은 온라인 서비스를 실행하는 방법을 찾습니다.
저자 : 니콜라스 Tittley와 알라 Shiban (출처 : 라이 엇 게임즈) 번역 : TF 컴파일 그룹

비밀 뒤에 LOL IT 인프라 슈 제품보다는 서비스
기사의이 긴 시리즈, 그리고 폭동 게임, 배포를 개발하고 백엔드 인프라의 과정을 운영 녹음하는 방법에 대해 설명합니다. 우리는 개발 경험 폭동 니콜라스 Tittley 소프트웨어 아키텍트 및 제품 관리자와 알라 Shiban의 팀입니다. 우리는 선수, 배포를 구축하고 게임을 운영하는 개발자를 돕는 책임 팀,하지만 폭동 어디든지 클라우드에 초점을 의식하지 않고 (클라우드 불가지론) 플랫폼이 플랫폼 쉽게 게임을 운영의 발행.

기사에서 전 지난 2 년, 맥스 필드 스튜어트는 관련 개발 생태계뿐만 아니라, 그 시간에 사용되는 다양한 도구를 소개했다. 여기서 우리는 새로운 도전이 문제를 해결하는 방법에 직면 포함하고, 우리가 배운, 최신 내용의 일부를 업데이트합니다.

빠른 검토

다시 가서 이전 기사를 읽어 우리는 강력 추천합니다,하지만 당신이 직접이 문서를 읽으려면, 당신은 잡을 수 있도록 슈퍼 유선형 버전이있다.

폭동 백 엔드 시스템은 베어 메탈 및 클라우드 인프라의 조합을 사용하여 세계적 규모 실행합니다. 이 백엔드 시스템이 완전히 다른 전개에 따라, 서로 다른 지리적 위치에 분산되어, 서비스의 상호 작용의 패키지 LOL '영웅 연합 (EU) "로 실행하는 플레이어를 할 수 있습니다. LOL 시작할 때 특수 작전 팀 전체와 같은 백엔드 시스템의 대부분의 게임, 마찬가지로 백엔드 작업에 대한 책임을 져야합니다. 시간이 지남에 폭동이 점차 개발 운영 사례 및 서비스 기반 마이크로 아키텍처를 받아 들인다. 이 시리즈의 첫 번째 기사 위하여, 자세히 소개는 폭동 서비스 포장이 도커 컨테이너에 크게 의존, 우리의 개발자가 빠른 선수를 서비스하는 데 도움이, 그들은 클러스터 스케줄러에서 실행하기 시작했다. 까지 최근 기사 , 우리는이 목적과 사용 도구를 논의했다.

어떻게 효과를 실행합니까?

아주 소,하지만, 고통과 행복.

지난 글이 게시되었을 때 (편집자 주 : 12 월 2017 포스트 시간), 우리는 5000 개 이상의 생산 용기를 운영하고 있습니다. 이 그림은 우리보다 14,500 용기를 실행 만 지역 (폭동 운영하는 지역) 폭동 독립적 인 작업으로, 오늘날 성장 중지하지 않습니다. 폭동 개발자는 쓸 때, 더 쉽게, 배포 및 서비스의 동작이, 더 많은 사람들이 흥미 진진한 새로운 경험을 만들 수있는 선수를 위해 새로운 것을 만드는 것을 좋아합니다.

개발 운영 팀은 실제 방법을 개발하고, 자신의 서비스에 대한 책임을 져야합니다. 그들은 배포, 모니터에 워크 플로우를 생성하고 해당 서비스가 찾을 수 없습니다 필요가 무엇을 할 때, 단순히-발명 재를 운영하고 있습니다. 개발자, 이것은 매우 자유 시간, 그들은 거의 문제가 해결 될 수 없다 발생하지 않습니다.

그러나, 우리는 천천히 몇 가지 걱정 동향을 주목하기 시작했다. 월간 QA 및 부하 테스트 환경은 점점 더 불안정하게된다. 우리는 오류 또는 오래된 구성 종속성을 찾기 위해 더 많은 시간을 보내고 있습니다. 이 고립 된 사건은 중요하지 않은, 그러나 일반적으로, 그들은 팀에 많은 시간과 에너지를 소비 - 우리는 가치를 만드는 선수에 대한 지출을 더하고자합니다.

더 나쁜 것은, 분열 지역 (비 폭동 파편) 폭동이 아닌 독립적 인 작동뿐만 아니라 비슷한 어려움을 표시하기 시작했다,뿐만 아니라 다른 문제의 시리즈를 끊었다. 파트너는 점점 더 많은 개발자와 도킹, 그리고 점점 더 많은 마이크로 서비스의 사용을해야합니다, 각 서비스는 서로 동일하지 마이크로의 다른 방법을 가지고 있습니다. 이제, 운영 직원은 효과적이고 안정적인 슬라이스 영역을 만들기 위해 더 열심히 그 어느 때보 다 작업해야합니다. 이 조각은 독립적 인 지역 비 작동 폭동, 문제 발생 빈도는 훨씬 높은, 직접적인 이유의 실시간 버전에서 호환 마이크로 서비스 또는 기타 유사한 국경 문제가 아닙니다.

개발 운영 폭동의 상태

포장, 배포 및 작업을 해결하는 방법을 논의하기 전에,이 폭동의 운영 환경을 탐험하기 위해 잠시 시간을내어 보자. 이러한 고유하지 않은 폭동,하지만이 모든 세부 사항을 중복, 우리는 모든 플레이어에게 가치를 제공하기 위해 구성되는 방법을 표시했다.

개발자 모드

폭동 엔지니어는 자신의 물건을 구축하고자! 그들에게이 작업을 수행하기 위해, 우리는 생각의 강력한 개발 운영 방법을 사용합니다. 팀 구축 및 서비스 성능은 예상대로 때 그들의 지원 및 분할을 보장하기 위해 자신의 백엔드 서비스를 제공합니다. 전반적으로, 폭동 엔지니어는 자신의 실시간 서비스에 대한 책임을 빠른 반복을 달성 할 수, 매우 행복 기쁘게 생각합니다. 이 개발 운영 팀의 매우 표준 집합입니다, 폭동은 어떤 방식으로 추세를 벅하지 않았다.

분할 모드 상태

때문에 역사적인 이유로, 문제의 규모뿐 아니라 요인의 법적 측면, 폭동 제품 백엔드 시스템은 방식 슬라이스로 구성됩니다. 상기 식에서 조각의 생산은 일반적으로 지리적으로 타겟 고객 닫습니다. 이 개선 지연 문제, 더 나은 경기, 제한 오류 도메인 및 명확한 오프 피크 시간 창 (유지 보수 작업을 수행 할 수있는) 등 많은 장점을 가지고 있습니다. 물론, 우리는 또한 "영웅 연합"공개 테스트 서버 (PBE) 많은 내부 및 외부 개발 및 QA 조각을 실행합니다.
https://technology.riotgames.com/sites/default/files/engineeringesports_4.gif

비즈니스 모델

일을 더 복잡 곳이다. 폭동은 개발자이지만, 규정 준수 및 노하우의 이유로, 우리는 일부 서비스 조각을 제공하기 위해 현지 사업자의 번호와 협력 있지만. 실제로, 개발자 폭동은 각 구성 요소가 슬라이스를 포장해야한다는이 수단, 그것은 그들이 배포, 구성 및 모든 조각을 어떻게 작동하는지에 운영 요원에게 전달하고 안내한다. 라이 엇 자체가 작동하지 않습니다 개발자, 심지어 액세스는 조각을 볼 수 있습니다. (편집자 주 : 조각의 텍스트는 논리 컴포넌트 블록은 하위 영역을 정의하는 것이 이해 될 것이다)

반복 솔루션

새로운 동맹 배포 도구를 시도 1

상황을 개선하기 위해 새로운 접근 방식을 취할 우리의 첫 번째 시도는 구축 및 운영을 사전에 오픈 소스 구성 요소와 최소한의 정의 폭동, 폭동을 사용하려고합니다. 이 작업이 성공적으로 완료 "영웅 연합"조각을 배치,하지만 디자인은 원하는 도구 개발자 및 운영 직원을 달성하는 방법은 아니지만. 팀이 도구에 대한 불만을 표현 - 도구는 운영자 용도, 개발자가 너무 제약이 너무 어려웠다.

이러한 도구 은퇴하게 - 따라서, 배포의 첫 번째 조각 후, 우리는 고통스러운 결정을 만들었습니다. 그것은 매우 급진적처럼 보이지만 때문에 모든 팀은 여전히 ​​자신의 유지 보수를 가지고 있으며, 우리는 신속하게 새로운 도구를 제거 할 수 있도록 시스템의 구축이 아직 완전히 전환되지 않습니다.

더 처리하기 위해 시도 2

첫 번째 시도가 예상대로 성공하지 때문에, 우리는 요구 사항을 충족하는 프로세스를 추가하여, 전통을 켜십시오. 광범위한 통신, 명확한 출시 날짜, 문서화 된 프로세스 변경 관리 회의 및 행사뿐만 아니라 항상 존재 스프레드 시트, 어느 정도, 약간의 진전을하지만 항상 나쁜 생각했다. 팀은 모두가 자신의 작업을보다 힘든하게, 자유 개발 운영팀, 변화의 거대한 양의 변화의 속도를 선호합니다. 상황이 개선 된 파트너를 가지고 있지만,하지만 우리가 원하는 운영 수준을 달성 못하고있다.

시도 3 메타 데이터를

우리는 다른 접근 방식을 바꾸기로했습니다. 우리는 주요 고객과 개발자 도구를하기 전에, 지금 시스템 작동을 운영 / 배포 파트너 운영 직원에 대한 공부를 시작했다. 우리는 개발자는 필요한 구성 및 확장 특성 등의 마이크로 서비스 도커 용기에 표준화 된 메타 데이터 패키지를 추가 할 수있는 도구를 설계했습니다. 이 과정을 제공, 운영자는 필요한 서비스 구성 및 배포 기능을 이해하고 자신의 일상 업무에서 개발자에 대한 의존도를 줄이기 위해 더 표준화 된 방법을 채택 할 수있다.

이 경우, 실패율과 현지 파트너 사이트를 운영, 이벤트 속도와 추가 다운 타임 개선,하지만 우리는 여전히 자주 배포 및 피할 수있는 운영 실패를 경험하고 있습니다.

모드 4 폭동의 응용 프로그램과 환경을보십시오

우리는 마침내 초점이 전체 제품 개인 서비스에서 이동합니다, 새로운 접근 방식을 채택했다. 우리는 높은 수준의 선언적 사양, 그리고 뭔가 특별하게 행동 규범과 도구를 수행하기위한 도구 세트를 만들었습니다. 자세한 전에, 문제가 무엇인지에 세 이전의 시도에서 살펴 보자.

와 반사 잘못

오히려 서비스에 비해 배포 및 제품의 작동,

포옹 개발 운영팀 및 마이크로 서비스에도 불구하고 우리에게 많은 혜택을 가져왔다,하지만 위험한 피드백 루프를 생성하고있다. 개발 팀은 마이크로 서비스의 배포 작업을 생성하고, 성능에 대한 책임이 있습니다. 그들은 자신을 위해 최적화되어 있음이 수단도 기능을 설계하지 않는 개발 배경을 포함하여 다른 사람들이 이해할 서비스 능력, 거의 관련하여, 일반적으로 측정 및 프로세스 등을 기록합니다.

점점 더 많은 개발자들이 마이크로 서비스 사업자를 만들기 위해 함께 전체 제품은 점점 더 많은 오류가 매우 어렵고 리드된다. 가장 중요한 것은 흐름 팀 구조의 폭동은 일부 마이크로 서비스의 소유권은 명확하게,, 그것은 파악하기 어려운 누가해야 재산의 많은에게 잘못된 페이지를 일으키는 원인이되는 션트에서 I 접촉. 점점 더 많은 이기종 마이크로 서비스 배포 프로세스 및 조직 변경, 손실에서 팀을 운영 지역 파트너.

"왜"알아

우리는 실패 폭동 폭동 지역의 운영 및 비 운영 지역과 실패의 차이 주파수가 키 관측이다 정제를 조사 :

결국 예방이 사건으로 이어질 것입니다 분산 시스템에 연속적 변화의 흐름을 허용합니다.

팀이 국경을 조정하고자 할 때 종속성이 몇 가지 변화와 함께 번들로 출시 될 필요가 있기 때문에, 그것은 실패하기 시작합니다. 팀 또는 호환되는 버전을 찾는 과정에서 혼란에 팀을 이끌고, 프로젝트 관리, 릴리스 또는 일시 해제 작은 변화에 출시 행사를 조정하는 게시주기를 만들기 위해 수동 프로세스를 사용합니다.

둘 다 자신의 장점과 단점을 가지고 있지만 대규모 조직에 붕괴하는 경향이있다. 팀의 상상 수십 조율 된 방식으로, 마이크로 공유 서비스의 수백 대신 제품의 지속적인 공급이 필요하고, 다른 서비스는 이러한 마이크로 개발 관행을 사용할 수 있습니다. make가 더 중요하기 위해, 파트너, 그것은 이러한 프로세스를 적용하려고하는 것은 매우 어렵습니다, 그 직원은 다양한 부품이 결합되는 방식과 관련이 없습니다.

새로운 솔루션 : 폭동 응용 프로그램 및 환경 모델

환경 - 이전의 시도의 결과가 예상 생산하는 데 실패 감안할 때, 우리는 전체 분산 된 제품을 캡처 할 수 있습니다 선언적 사양의 조작을 제거하기 위해 (독단) 상태의 개인적인 용도로 고유 한 부분에 대한 선언적 사양을 만들하기로 결정했다. 환경이 완전히, 배포, 구성, 실행을 지정 마이크로 서비스에 필요한 분산 모든 선언적 메타 데이터의 집합을 운영 포함, 이러한 마이크로 서비스가 함께 제품을 나타내며, 완전하고 변경되지 않은 버전입니다. 그것이 가장 남용의 단어 폭동이 아니기 때문에 우리는 "환경"그 이름을 선택했다. 그것을 명명하는 것은 어려운 작업입니다.

게임 LOR "룬 전설의 땅"의 출시와 함께, 우리는 증명할 수있는 제품으로 (게임 서버를 포함) 및 자치 지역 및 폭동 데이터 센터의 전 세계 파트너에서 그것을 운영 할 마이크로 게임 백엔드 서비스의 전체 설명, 배치, 동작, 및 동작. 우리는 또한 개발 운영 방식을 개선하는 것이 훨씬 사랑의 장점을 가지고있는 동안이 목표를 달성 할 수있는 능력을 증명하고있다.

규정에 설명 된 어떤 (자기 의견을 고집 ON 무엇)

이 사양은 서비스 번들 또는 환경 사이의 계층 적 관계를 설명합니다.

비밀 뒤에 LOL IT 인프라 슈 제품보다는 서비스

응용 프로그램 환경 사양 사양으로 번들

그리고 높은 수준의 선언

선언적 사양의 장점 중 하나는 조작이 쉽다는 점이다. 운영 직원 파트너의 경우, 자신의 어려움 중 하나는, 그냥 이해 조정 및 배치는 잠재적으로 전체 게임 백엔드를 자동화 할 수 없습니다. 그것은 필요가 없습니다 엔지니어 스크립팅 또는 프로그래밍 전문 지식, 당신은 내용 사양의 대부분을 변경할 수 있습니다 않는 것을 의미 사양의 선언적 성격.

사양의 높은 수준을 유지하기 위해, 그것은 정의하고 기본 게임의 후단의 감 달성하는 데 도움이됩니다. 이것은 우리가 내부 이끌 다음 게임에 대 한 스튜디오에서 상황의 영향을 최소화 할 수 있습니다 / 스케줄러는 제독, 메소 기반 스케줄러로 마이그레이션뿐만 아니라는 Kubernetes로 마이그레이션을 고려했다. 또한 필요한 경우 파트너의 작전은 인프라 구성 요소를 교환 할 수 있습니다. 예를 들어, 운영 담당자는 마이크로 서비스 도구를 변경할 필요없이 다른 통계 집계 시스템을 사용할 수 있습니다.

불변의 버전 화

우리는이 공유 언어의 사용이 서비스를 참조하는 급속한 발전의 개발 운영 세계를 구축 및 운영에 효과가 발견하고 환경이 필수적이다. 버전 관리 및 환경 서비스 및 관련 메타 데이터, 우리는 모든 위치가 올바른 버전을 배포 한 것을 보장 할 수 그래서. 그것은 우리의 운영자 파트너가 실행중인 버전을 확인하고, 우리에게 다시 알 수 있습니다. 전체 환경에 적용 할 때 또한, 그것은 잘 알려진 서비스의 집합 확인하고 "좋은"품질로 표시 할 수 있습니다. 이 번들은 파트너 종속성으로 통신 할 때 새 버전 누락의 가능성을 제거합니다.

그래서 이러한 버전은 변경할 수 없습니다, 우리가이 공통의 언어를 유지하도록 할 수 있습니다. 서비스의 동일한 버전이 두 개의 서로 다른 조각에 배포 할 때, 우리는 이제 그들이 동일한 확신 할 수 있습니다.

작업에 초점

우리의 목표는 파트너 운영 직원 서비스 수준의 선수를 개선하는 것입니다 감안할 때, 우리는 신속하게 소프트웨어의 배포는 첫 번째 단계는 것을 깨달았다. 분류, 운영 및 실시간 시스템의 유지 보수하는 방법을 알아보십시오, 그것은 동등하게 중요한 일이다.

역사적으로, 우리는 수동 작업에 매우 의존한다. 성공의 학위를 변화와 개발자가 수동 유지 보수, 그들은 높은 수준의 아키텍처에 필요한 구성 값에 이르기까지 모든 것을 기록했다. 수 있도록하기 위해 파트너 구성하려면 운영 직원을 가지고 있으며 각 서비스에 필요한 모든 지식은, 우리가 처음 서비스 사양 설명서에 포함 된 많은 정보로 실행하기로 작동합니다. 이것은 크게 새로운 서비스로 시간 지역 파트너를 감소시키고, 그들이 들었다 수 있도록하는 마이크로 업데이트 서비스의 모든 중요한 변화.

오늘, 파트너 사업자를 포함하여, 메타 데이터의 작업에 대한 내용은이 규격을 사용할 수 있습니다 필수 / 선택, 확장 기능, 유지 보수 작업, 중요한 지표 / 경보 정의, 구축 전략, 서비스 간의 종속성뿐만 아니라 점점 더 유용한 정보를 제공합니다.

조각 차이

물론, 조각은 서로 동일한 복사본이 없습니다. 우리는 가능한 한 가깝게을 만들고 싶어하지만,이 있지만 일부 구성은 달라야합니다. 데이터베이스 암호, 언어 지원, 확장 파라미터뿐만 아니라 특정 조정 매개 변수는 각 슬라이스로 변경해야합니다. 이 모드를 지원하기 위해, 우리는 여전히이 알려진 좋은 버전에서 파생 된 것을 알고 있지만, 운영자는 특정 전문화를 배포 할 수 있도록 환경 규범을 계층 적 시스템 구축을 충당하기 위해 사용하는 도구. 이제 어떻게 작동하는지 보자!

응용 프로그램

간단한 게임 백엔드는 두 가지 환경, 게임 서버 다른 하나는 달러 게임 서비스 (순위, 매칭 시스템 등)를 포함 할 수있다. 그래서 목록, 매칭 시스템, 게임 역사,하십시오 서비스의 다양한에서 위안 게임 환경을 제공합니다. 각 서비스는 하나 개 이상의 이미지가 도커 개념적들이는 Kubernetes 용기 동등 포함한다. 모든 환경의 경우, 동일한 계층 구조가 올바른지, 그리고 철학적 인 관점에서 지원되는 클라우드 또는 인프라에 배포 예외 캡슐화없이 모든 환경은 게임 및 백엔드 작업을 실행하는 데 필요한 모든 것을, 그리고 모든 종속성.

사양은 또한 환경을 실행하고 운영하는 데 필요한 모든 메타 데이터를 포함합니다. 구성, 기밀, 표시, 알람, 문서, 배포 및 롤아웃 전략, 인바운드 네트워크 제한뿐만 아니라, 스토리지, 데이터베이스 및 캐시 요구 사항을 포함하여 모듈의 성장 모음입니다.

여기에서 우리는 두 지역에 배치 된 두 개의 가상 슬라이스 게임을 설명하는 예제가 있습니다. 당신은 달러와 게임 환경의 게임 서버 환경 구성 요소를 볼 수 있습니다. 게임 환경의 미국과 유사한 조각 뒤에 게임 서버 제작 환경의 유럽 슬라이스합니다. 이 기술 및 게임 패치 배포 및 운영 팀에 대해 서로 다른 게임을 비교하기위한 공통 언어를 제공한다. 서비스의 수는 각 환경 확실 단편 수십 배포 할 단순 증가를 유지할 수있다.
비밀 뒤에 LOL IT 인프라 슈 제품보다는 서비스
예시적인 게임 전개 조각

우리의 다음 단계 : 지연 알고 스케줄링

우리는 서비스 사이의 예상 및 허용 지연을 설명 할 수 있도록 노력하겠습니다, 지역과 낮은 수준의 PaaS를 서비스의 기초에 최적화 된 도구는 이러한 요구를 충족 할 수 있도록. 이것은 오히려 다른 서비스에서의 배포를 허용하는 것보다, 같은 랙에 일부 서비스에 호스트 또는 클라우드 영역을 이끌 것입니다.

게임 서버 및 지원 서비스의 성능 특성 때문에 매우 우리와 상관 관계. 폭동 흐린 이미 우리 자신의 데이터 센터를 가진 회사입니다, 또한 AWS 클라우드 및 파트너,하지만 우리는 정적 설계 토폴로지에 의존하고 있습니다. 카드 게임과 슈팅 게임은 위의 게임에 집중할 수 있도록 엔지니어의 시간을 절약 할 두 경우 모두에서 토폴로지 최적화를위한 매뉴얼을 가지고 있지 않은 다른 프로파일을 가지고있다.

마지막 단어

우리는 비즈니스 파트너가 게임의 조각 주로에서 실행 게임에서 감소 안정성의 문제에 직면하고 있습니다. 도구 개발 팀은 오픈 소스 배포 도구와 함께 번들, 용기에 메타 데이터를 추가하고, 게임은 팀이 중앙 게시 프로세스를 구현한다. 이러한 방법은 증상을 해결하지만, 우리가 목표 수준을 달성 할 수 있음을 의미 문제의 근본 원인을 해결하기 위해 실패 할 수 있습니다.

우리의 솔루션은 결국 새로운 사양의 도입을 채택하는 캡처 전체 게임, 계층 구조 및 메타 데이터의 백 엔드 토폴로지의 모든 및 모든 종속성. 이 버전 바인딩 컨테이너, 그들 사이의 의존성 상호 작용, 그리고 시작하고 전체 게임을 운영하는 데 필요한 모든 메타 데이터 지원의 일관성있는 자료를 제공하기 때문에이 방법은 효과적입니다. 불변성은 결정 및 예측 작업을 배포 가져왔다.

플랫폼 팀, 우리의 목표는 선순환에 선순환을 생성하고 블록을 구축 할 수있는 시스템을 선택하는 것입니다, 기능 개발 작업은 자연적으로 제품을 작동하기 쉬운 가져올 것이다. 조합 제품의 동작 모드의 개발 운영의 민첩성과 편의성 장기 조직의 민첩성의 열쇠입니다. 우리의 환경이 직접 연결되어 방법은 플레이어의 경험의 질을 개선하는 것입니다, 운영 지표를 향상 더 중요하다. 우리는 매우 우리 업계에서 다른 사람이 비슷한 문제를 해결하는 방법을 볼 수 기쁘게 생각합니다. 우리는 많은 클라우드 공급자를 보이고 한 아이디어와 프로젝트 (예 : Microsoft 개방형 사양 응용 프로그램 모드 등) CNCF에서 (재단을 계산하는 기본 클라우드). 이 프로젝트의 일부는 우리 자신의 결정의 규범을 대체 할 수 있기를 바라며, 업계 전반의 솔루션으로 이동.

세부 폭동 사양이 예제와 디자인의 장단점 및 폭동 특정 단축키에 대한 논의를 설명보다 미래의 기사에서, 우리는에서 모색 할 것입니다.

읽어 주셔서 감사합니다! 당신은 질문이있는 경우에는, 저희에게 연락하는 환영합니다.


더 "비밀 LOL"시리즈
비밀 슈 LOL IT 여행에 대한 다양한 세트 발 배포 뒤에 인프라
"예약"의 IT 인프라 슈 키 역할 LOL 뒤에 비밀
LOL 뒤에 비밀 IT 인프라 슈 SDN 잠금 해제 새로운 인프라
비밀 뒤에서 코드되는 IT 인프라 슈 인프라 LOL
뒤에 비밀 서비스 IT 인프라 슈 마이크로 생태계 LOL
IT 인프라 슈 개발자 LOL 뒤에 어떤 비밀 않는다 "경기장"도구?


비밀 뒤에 LOL IT 인프라 슈 제품보다는 서비스

비밀 뒤에 LOL IT 인프라 슈 제품보다는 서비스

추천

출처blog.51cto.com/14638699/2485581