Databases containers and pods: SQL Server on Kubernetes – THR2096

안녕하세요, 모두, 포드 SQL 서버의 데이터베이스 컨테이너에 오신 것을 환영합니다 쿠퍼 넷티의 컨설턴트 데니 체리 (Denny Cherry Associates)의 컨설턴트 인 데니스 체니 컨설턴트가 즐겁습니다

다음 20 분 안에 우리는 데모 팩 세션을 가질 예정입니다 컨테이너에서 실행되는 SQL 서버에 대해 간략하게 이야기 할 것입니다 그리고 왜 당신이 하얀 컨테이너에서 뛰고 싶은지에 대한 좋은 생각이 있습니다 나는 데이터베이스 소프트웨어를 설치하는 것과 같습니다

약 50 회 클릭하고 보통 약 30 시간이 소요됩니다 나는 그것이 내 일상의 가장 생산적인 부분이 아니라는 것을 안다 당신이 이미 자동화하지 않았다면, 장점 중 하나입니다 컨테이너를 사용하는 과정에서 우리는 고통스러운 긴 설치 작업을 걱정할 필요가 없습니다 미디어를 기계로 가져 오는 것에 대해 배웁니다

우리는 프로세스 또는 그 이상을 크게 단순화합니다 또한 Cooper Nettie는 장애 조치 클러스터링과 같은 고 가용성 솔루션 구축 프로세스를 단순화합니다 또는 항상 가용성 그룹에 관해서는 SQL Server의 각 버전에 적용된다는 것을 알고 논의했으며, 롤링 패치 업그레이드 방법에 대한 데모를 몇 가지 할 것입니다 가용성 그룹 데모에서 페일 오버 및 어쩌면 지원할 수 있습니까? 쿠퍼 넷티에 익숙하지 않다면 요 네가 버넷 쿠퍼 네티 했니? 이것이 Google을 생각할 수 있다고 생각한다면 Google에서 나온 프로젝트입니다

이것이 데이터 센터를 운영하는 데 사용되었습니다 그리고 내가 본 최선의 방법은 클라우드를위한 가상화 플랫폼의 일종입니다 Azure와 같은 공개 클라우드에있는 경우뿐만 아니라 실제로 적용됩니다 다른 공중 죄수 중 하나 그러나 자신 만의 인프라를 구축하고 있다면

On Prem, Cabanis에서 배울 수있는 이러한 개념 중 많은 부분은 소프트웨어로드 밸런서 소프트웨어를 기본적으로 사용하는 것과 같습니다 또는 소프트웨어가 네트워킹 인프라를 코드로 정의했습니다 그것들은 모두 적용 할 예정이며 Prem Cooper에 있습니다 Nettie의 세계와 그들은 또한 클라우드에 적용될 것입니다 대부분의 데모

나는 미니 Q를 실행하는 노트북에서 할 것입니다 그러나 저는 또한 Azure, Cooper Nettie Service를 운영하는 AG 데모를 가지고 있습니다 따라서 배포 방법에는 여러 가지 옵션이 있지만 오케스트레이션을 얻는 주요 요소는 있습니다 기본적으로 컨테이너 화는 가상화와 크게 다르지 않습니다 우리는 단지 두 개의 레이어를 스택 아래로 내려 가서 OS에 더 가깝게 갈 것입니다

그리고 왜 우리가 이것을 원할까요? SQL Server 2019 큰 데이터 오늘 아침에 발표를 듣지 못했다면 비용이 많이 들었습니다 마이크로 소프트는 정말 흥미로운 새로운 솔루션을 선보였습니다 SQL 2019 SQL Server 2019 그리고 Cooper Nettie의 스파크와 파이썬 및 HDFS와 관련된 모든 다른 데이터베이스를 연결할 수 있습니다 그것은 지금 쿠바의 소용돌이 모양과 다른 두 가지 옵션으로 만 진행될 것입니다 그 이유는 많이 있습니다

그러나 가장 큰 장점은 배포의 용이성에서 많은 유연성을 얻을 수 있다는 것입니다 그래서 쿠퍼 넷티 (Cooper Nettie 's)는 Google에서 오케스트라 컨테이너 오케스트레이션 시스템으로 이사회라고합니다 또한 헬름 만 (helmsman)을 의미하는 헬라어 단어에서 온 것이고, 그것은 배를 조종하는 사람입니다 로고는 선박 판매의 바퀴입니다 그것은 많은 일을하므로 스케일링자가 치유로드 밸런서를 판매하고 있으며 우리는 이러한로드 밸런서를 활용하기 위해 SQL 인프라에 상당히 집중하고 있습니다

그것이 우리가 지속될 것이기 때문입니다 우리의 서버 이름 그것은 당신이 SQL 서버 장애 조치 클러스터 인스턴스로 작업 한 적이 있다면 개념입니다 그것은 자연과 매우 유사합니다 그것은 약간 다를 것이지만 비슷한 종류의 것이이 글에 쓰여 있습니다

의사 또는 어쩌면 Microsoft Container Registry와 함께 사용하는 경우가 많습니다 SQL Server 2019 베타 이미지의 경우 Cooper Nettie가 10000 피트에 위치합니다 새로운 것을 처음 접한다면 핵심 라이브러리에 대한 조명에 가깝게 가상화를 생각해보십시오 그리고 컨테이너마다 SQL 서버가 누구에게도 SQL Server 2017이 Cooper Nettie를 지원한다는 것을 알았 기 때문에 각 컨테이너에 대해 전체 운영 게스트 운영 체제가 필요 없기 때문에 Denser를 얻을 수 있습니다 손을 대면 뉴스가 많이 나오지 않았습니다

커뮤니티의 기본 몇 가지 데모를 지원했습니다 우리는 할 것입니다 2017 년이 될 것으로 보입니다 저는 이것이 이것이 완벽한 특징이 아니며 두 가지 종류의 큰 격차가 있다고 생각합니다 이것이 더 이상 나아지지 않은 이유는 아마도 내가 본 가장 큰 제한 인 인증 취소를 지원하지 않았습니다

또한 SQL 서버 에이전트가 없어서 에이전트 작업을 사용할 수 없었습니다 그래서 그것은 개념의 더 많은 증거 였지만 온라인으로 완벽하게 지원되고 문서화되었습니다 2019 우리는이 큰 데이터 클러스터 옵션을 가지고 있지만 더 많은 옵션이 있습니다 현재 사용 가능한 가용성 그룹이 있습니다 Active Directory 인증은 진행 중이며 Matt에서 작업 중이며 SQL 서버의 전체 표면적과 일치합니다

우리는 또한 가상화에서 이러한 규모를 가지고 있습니다 나는 20 분 안에 그것을 커버하지 않을 것이다 그러나 부스에서 질문이 있으면 우리는 많은 질문에 답할 것입니다 이제 데모에 들어가 첫 번째 데모를 시작해 보겠습니다 나는 당신이 기본적인 장애 극복의 종류임을 보여줄 것입니다

그리고 우리가 SQL 서버 인터넷을 배치하는 방법은 클러스터입니다 그래서 여기에 진짜로 로그인해야합니다 이것은 내 우분투 서버입니다 이것은 단지 VM입니다 Mini Cube를 실행하면 학습 커뮤니티를 시작하려는 경우 좋은 것입니다

꽤 쉽고 빠르게 설치할 수있는 설치 프로그램입니다 하지만 몇 가지를 보여 드리겠습니다 중요하고 항상 컨테이너에서 데이터베이스를 실행하는 데 문제가되는 것은 처음입니다 VMS 컨테이너가 사라짐에 따라 컨테이너가 훨씬 일시적인 것으로 생각되며 데이터가 사라지는 것을 원하지 않습니다 어쨌든 마지막으로 확인한 것은 좋지 않습니다

따라서 우리는 영구 저장 장치를 정의해야합니다 그래서 여기에서이 디렉토리를 공유 할 것이며 PV 소유권 점 DMO라는 파일이 있습니다 여기에서는 컨테이너에 영구 저장소를 정의하는 방법을 보여주는 저장소를 정의합니다 이 모든 파일에서 인프라를 모두 찾아야한다는 영구적 인 볼륨 요청을 사용하고 있습니까? 나는 공간과 대소 문자를 구별하여 오류가 발생할 때이를 잘 모릅니다 너에게 보여줄거야

당신이 잘못 복사하거나 붙여 넣기했거나 공간이 틀렸습니까?하지만 이것은 10 기가 바이트 볼륨으로 계속됩니다 내 데이터베이스의 경우, 그게 무슨 뜻이야? 내가 본다면 항상 여기에있는 볼륨을 갖게 될 것인가? 그리고 나는 말한다 통제력을 유지하십시오 부하 분산 장치가 있음을 알았습니다 로드 밸런서가 내 서버 이름이되도록 SQL 배포입니다

나는이 저장 장치를 유지하도록 할 것이고 그 다음에 포드 (pod)에 포드 (pod)를 갖도록 할 것입니다 컨테이너 배치의 포함 된 단위입니다 잉크 리본은 일부에서는 SQL 서버 포드를 가질 예정이며 MS SQL 배치라고합니다 이런 종류의 Goo Edition은 실제로 좋은 이름이 아닙니다 그럼 내가 어떻게 만들 었는지 봅시다

그리고 다시 한번, 저는이 배치가 배치 스크립트 맨 위에 있다는 것을 압니다 로드 밸런서를 정의합니다 우리는 1433 번 API 버전의 베타 1 API를 사용 중이며 리눅스의 SQL 서버 인 2017 누적 업데이트 10을 사용하고 있습니다 내 비밀 번호를 비밀로 정의했습니다, 그래서 그것을 끌어낼거야하지만이 지금 실행하고 있습니다 우리는 또한 내가 언급 한 스토리지가 var opt Ms SQL로 해당 스토리지를 마운트 할 것임을 반영하고 있습니까? 그래서 내가 여기에 로그인하면

그리고 ignite 데모라는 데이터베이스를 만들겠습니다 여기에 SQL CMD를 사용하고 있지만 Azure Data Studio라는 훌륭한 크로스 플랫폼 도구가 있습니다 그것은 매우 편리합니다 그래서 여기에 사고가 생기면 장애 조치 시나리오가 될 것입니다 그래서 이것은 더 비슷합니다

우리는 장애 조치 클러스터 인스턴스로 무엇을 할 것이므로 공격적인 VM VM 관리자가 필요합니까? 누가 말할 것인가 데이터베이스 포드가 많은 시스템 리소스를 사용하고 있는지 확인하십시오 잘라내어 붙여 넣는 동안 용서해주십시오 그리고 나는 내 화분이 지금 가고있는 것을 보았습니다 그러나 내가 여기서 보았던 것은 그것이 방금 삭제 한 포드를 끝내는 것입니다

그리고 그것은 다시 새로운 것을 창조합니다 서비스는 약 30 초 정도 걸리고 거기에 몇 초 안에 나의 새로운 컨테이너에서 나의 나이를 볼 수 있습니다 그리고 내가 로그인 할 때 몇 초 더 기다려야합니다 그렇지 않으면 실패 할 것입니다 삶으로 돌아갑니다

나는 이것을 한 번 더해야 할 수도있다 우리가 들어가면 SQL 서버가 정상적인 충돌 복구를하고 있다는 것을 알 수 있습니다 이는 서비스를 중지하고 다시 시작한 경우와 같은 느낌입니다 sys dot 데이터베이스에서 이름을 선택하면 서비스가 시작되었습니다 내 발화 데모 데이터베이스가이 프레젠테이션을 수행 한 다른 데모와 함께 있음을 알 수 있습니다

그것이 그녀에게 접근 한 기본적인 장애 조치입니다 이는 고 가용성을 기본적으로 갖추고 있습니다 클러스터를 구성 할 필요가 없었습니다 클러스터 된 SQL을 재미있는 방법으로 설치할 필요가 없었습니다 이것은 쿠퍼 넷티 (Cooper Nettie)의 작품에서 SQL 서버의 종류가 어떻게 구현되는지를 보여줍니다

이제 저는 비디오를 보여 드리겠습니다 그것은 약간 다른 시나리오입니다 여기가 우리가 SQL 서버를 패치 한 곳이기 때문에 집에서만 히트 플레이를 할 수 있습니다 그래서 우리는 우리의 꼬투리를 봅니다 그리고 우리는 연결하거나 실제로 여기에 버전을 보여줄 것입니다

Azure Data Studio 사용하기 이것은 이것을 실행할 때 누적 업데이트 9가 될 것입니다 내 전화 블링과 타이핑 여기서 우리는 당신이 9를 보는 곳을 보았습니다, 그래서 나는 그것을 고치고 싶다면 배포 파일을 업데이트 할 것입니다 10을보기 위해 그것을 변경하려면 여기를 클릭하고 지금 큐브 컨트롤이 적용된다는 말로 배포 할 것입니다

내 배치가 구성된 대시 FUC도 비슷한 일이 발생합니다 새 컨테이너가 생깁니다 그것은 앞으로 나아가고 창조 할 것입니다 그리고 그것은 나의 오래된 파스만이 이걸 실행하는 것을 끝낼 것입니다 현실에서는 왜 내가 비디오

이 작업에 약 6 ~ 7 분이 걸렸습니다 배포 환경의 환경에서 새로운 컨테이너가 온라인 상태가되도록 그리 오래 걸리지 않았습니다 패치를 적용하는 데는 SQL 서버가 필요합니다 따라서 SQL Server는 인스턴스에 대해 수행되는 업그레이드 단계를 6 분 동안 수행하는 것이 일반적으로 경험할 때보 다 오래갑니다 그러나 그것은 오랜 시간이 걸렸으므로 여기서 약간 앞으로 확대합시다

말하자면 우리는 SQL 로그를 볼 수 있습니다 그리고 다른 창문에서 다른 종류의 패치가 나옵니다 여기에 연결하면됩니다 이 작업이 완료되면 다시 실행하십시오 우리는 그것이 주목해야 할 다른 것들 중 하나가되고 있음을 알 수 있습니다

큐브 제어 명령을 사용하여 모든 작업을 수행합니다 그리고 내 환경에서 로그를 생성 할 수 있습니다 큐브 제어 로그를 사용하여 시스템 오브젝트가 유죄를 나타낼 때마다 이 경우에 사용하고 싶습니다 내 속편 컨테이너에서 로그를 가져오고있어

그것들은 표준 출력에 쓰려고하는데, 이것은 클러스터 내에서 찾기가 약간 어렵습니다 그러나 명령 행에서 쉽습니다 여기서 데이터베이스 메일 업그레이드 위치를 볼 수 있습니다 복구가 완료되었으므로 여기서 로그인하는 것이 좋습니다 이제 재방송 할 때 버전 추가를 선택하십시오

지금 SQL Server의 10 가지 인 2017을 보시도록 업그레이드되었습니다 따라서 이것은 단순한 일종의 Pat 시나리오였습니다 OB 클러스터 된 환경에서 롤링 업그레이드를 수행하는 것과 매우 유사합니다 문제는 적당한 다운 타임이 필요하다는 것입니다

우리는 잠시 들렀다 그 패치들과 우리는 단지 하나의 노드만을 가지고 있습니다 SQL Server에있는 가용성 그룹 및 SQL Server 2019에 대한 픽스입니다 그러니 잠깐 파워 포인트로 돌아 갑시다 그래서 방금 전 소개 한 것은 SQL 서버와 Cooper Nettie의 상호 작용면에서 매우 간단합니다

가용성 그룹을 사용하면 SQL 컨테이너 이외에도 훨씬 더 깊은 솔루션 세트가 제공됩니다 우리도하지 않았습니다 에이전트는 비밀 키가있는 R 포드로 실행될 수 있으며 가용성 그룹에 대한 오케스트레이션을 수행하게됩니다 우리에게는 우리를 위해 모든 것을 관리 할 운영자도 있습니다 이것들은 모두 쿠바 소용돌이 모양의 것들입니다

우리는 이것을 확장하여 3 노트의 예가 될 것입니다 이것은 온라인 서적의 데모가 갖는 것입니다 여기서 어떤 일을 겪게됩니까? 그래서, 여기에 파일 경로를 보여 주기만하면됩니다 나는 나의 지속적인 주장으로 똑같은 것을 가지고있다 여기에서는 3 개의 노드가 있으므로 여기서도 SQL 데이터 하나의 Ms SQL 데이터에 대한 지속적인 소유권을가집니다

이 모든 것에 대해 80 기가를 지정하고 있습니다 탄소를 사용하면 모든 인프라를 코드로 쉽게 정의 할 수 있고 인프라에 대해 코드로 많이 이야기했음을 알 수 있습니다 그리고 여러분 모두는 여러분의 인프라와 소스 컨트롤을 올바르게 유지합니다 다시 한번 손을 뗄 필요는 없습니다 실제로 여기가 있어야합니다

실제로는 현실이되기 때문입니다 대신 우리는 이들 볼륨을 정의한 다음이를 정의합니다 그런 다음 못생긴 스크립트 나 스크립트가이를 듣습니다 둘 다 연산자를 정의합니다 그리고 이것은 정의 할 것입니다

우리가 어떻게 관리하고 있고 또한 작업중인 네임 스페이스를 찾은 다음 마침내 SQL 서버를 찾을 것입니다 이제 우리는 모든 SQL 서버를 찾을 것입니다 Microsoft로부터 라이센스 계약에 동의해야합니다 컨테이너 이미지를 가져오고 우리는 RSA 패스워드로 그 패스를 풀어 볼 것입니다 계속해서 배포하십시오

그래서 여기에 당신을 보여 드리겠습니다 Ossory는 오타를 터치합니다 그래서 나는 여기에 하나의 주 (主)에 대한 나의 봉사를 가지고있다 내 코에는 각각 하나씩있는 것을 볼 수 있습니까? 로드 밸런서가 있고 에이전트가 실행 중이므로 누드가 각각 실행되고 연결할 수 있습니까? 지금 당장, 나는 나의 초등 학생과 만 연결할 수있다 그건 잘못된 IP 주소 였어

그리고 우리는 그 것을 포기할 것입니다 네가 할 수있는 걸 보여주고 싶은 또 하나의 일은? Azure Cooper Nettie 서비스는 귀하의 컴퓨터에서 로컬로 실행되는 Cooper Nettie의 관리 인터페이스를 얻을 수 있습니다 나는 내 컴퓨터에서 이걸 시작할 시간을 시작하려고한다 그리고 나는 내가 AG를 가지고 있다는 것을 알 수있다 나는 좀 더 많은 것을 보면서 내 이름 공간을 gewonnen으로 바꿀 수있다

여기에서 나는 iPods를 보인다 내 환경 용 인프라에서 얼마나 많은 CPU를 소비 하는지를 알 수 있습니다 그리고 제가 언급했듯이 이것은 모두 Azure에서 관리 서비스로 실행됩니다 안녕

나는 여전히이 인터페이스를 내 컴퓨터에 로컬로 가져 오므로이 작업을 수행하는 데 정말 멋진 방법입니다 따라서 Cooper Nettie의 데이터베이스 컨테이너에서 실행하는 것이 가장 큰 장점은 최소한의 구성만으로 고 가용성을 얻을 수 있다는 것입니다 따라서 인프라가 인스턴스화되면 훨씬 적은 작업을 수행해야합니까? 다른 한편으로는 배포와 관련된 많은 유연성을 얻을 수 있으므로 Prem Cloud에 배포 할 수 있습니다 그리고 당신은 같은 종류의 배치를 가지고 있으며, 항상 누군가를 클릭하여 매번 설치해야한다는 것을 알 필요가 없기 때문에 일관된 배포를 얻을 수 있습니다 인프라 스트럭처를 VM 크기까지 코드로 사용하고 있습니다

따라서 환경을 표준화하는 매우 쉬운 방법이됩니다 15 초 안에 약 1 분 남았습니다 질문이 있으면 누구나 손을 들고 소리를 질렀습니다 네, 질문은 레녹스 컨테이너로해야만할까요? 대답은 지금입니까? 99 % 레녹스 솔루션에 관한 마이크입니다 그리고 솔직히 말해서 Cuban eddies는 Windows Server 2019가 어떤 지원을했는지를 아는 Lennox 것입니다

하지만 당신이 여기있는 곳에서 SQL 서버가 있다면 레녹스를 실행하고 있다고 생각합니다 Lennox 전용 솔루션 다른 질문 네 문제가 커질 것 같아서 SQL 2019 또는 2017이라고 생각합니다

모든 것은 내가 당신에게 새로운 롤빵을 보여주었습니다, 2는 SQL 2017과 함께, 당신에게 보여준 가용성 그룹의 것입니다 IIS에서 실행 중입니다 SQL 2019, 단지 당신이 고 가용성 컴포넌트를 원한다면 SQL Server 2920, 17에서이를 실행할 수 있습니다 한계가 있습니다

다른 질문이라도, 나는 모두에게 고마워 한 후에 여기에있을 것이다