모든 k3s 정보 - 경량 Kubernetes

Kubernetes는 소스 용기 배열 도구로 업계에서 자동화 응용 프로그램 배치, 자동 확장과 관리에 광범위하게 사용된다.Kubernetes (k8s) 그룹을 만드는 것은 상당히 번거로운 작업입니다.그러나 k3s - Lightweight Kubernetes을 사용하면 더 이상 존재하지 않는다.몇 개의 명령만 있으면 집단을 시작하고 실행할 수 있다.우리 좀 더 깊이 들어가자.

K3s 및 그 역사


K3s는 Kubernetes의 오픈소스, 경량급 발행판으로 모두 100mb 이하의 바이너리 파일로 포장되어 있다.처음에는 Rio의 일부로 시작됐으며 Rancher Labs에서 시작한 실험 프로젝트였으나 효율성과 높은 수요 때문에 개별적인 오픈소스 프로젝트로 시작됐다.K3s는 2019년 2월 26일 공식 출시됐다.
k3s는 엣지, 사물인터넷, CI, 개발, ARM과 K8s 삽입에 큰 성공을 거두었다.이것은 단일 노드 그룹으로 설치할 수도 있고 다중 노드 그룹으로 설치할 수도 있으며, 생산이 완료된 Kubernetes 발행판에 완전히 부합된다.

K3s 아키텍처



위의 그림은 k3s의 기본 구조를 보여 준다.당신은 k3s에 대해 우리는 두 개의 주요 구성 요소가 있는데 그것이 바로 k3s serverk3s agent입니다. 마치 k8s의 master nodeworker node과 같습니다.serveragent에서 모든 다른 구성 요소를 조합하여 하나의 단독 프로세스로 실행합니다. 이것은 k8s의 모든 구성 요소가 단독 프로세스로 실행되지 않도록 합니다.사실상 단일 노드 집단에 대해 serveragent은 모두 단일 노드 중의 단일 프로세스로 운행할 수 있으며 90초 안에 집단을 가속화하는 데 도움이 된다.대부분의 구성 요소는 k8s에서 사용하는 구성 요소와 비슷하고 그 기능도 k8s의 구성 요소와 매우 비슷하다. k3s에 도입된 SQLite, Tunnel ProxyFlannel을 제외하고는.개별 구성 요소에 대한 자세한 내용은 k8s documentation을 참조하십시오.SQLite은 k8s에서 사용하는 etcd의 대체품으로 etcd에서 의존항을 삭제하고 SQLite을 사용하여 단일 노드 집단을 실행할 수 있으나 단일 노드의 경우에만 사용된다.K3s는 HA K3s 클러스터에서 외부 데이터베이스를 사용합니다.Tunnel Proxy에 대해 말하자면 기본적으로 kube-proxy은 여러 개의 포트를 사용하여 api-server을 연결하지만 k3s의 경우 api-server의 도움으로 tunnel proxy에 연결한다.막후에서 tunnel proxy은 단방향 연결을 만들어 api-server과 연결했지만 연결이 이루어지면 양방향 통신을 사용하며 단일 포트를 사용하여 통신을 통해 더욱 안전한 연결을 실현한다.집단 네트워크의 경우 그림에서 Flannel을 볼 수 있으며 k3s에서 용기 네트워크 인터페이스(CNI)로 사용된다.
이것은 k3s 체계 구조에 대한 총체적인 인식이다.자세한 내용은 documentation을 참조하십시오.

k3s를 사용하여 집단 설정


Kubernetes (k8s) 그룹을 만드는 것은 매우 바쁜 작업이지만, k3s에겐 그렇지 않다.몇 개의 명령만 있으면 k3s 단일 노드나 다중 노드 그룹을 쉽게 설정할 수 있습니다.이 블로그에서 우리는 단일 노드 설정부터 이 두 가지 방법을 이해할 것이다.

단일 노드 클러스터


단일 노드 k3s 그룹을 만들거나 k3s 서버를 설정하는 것은 식은 죽 먹기입니다.명령 하나만 배치하면 k3s 서버를 만들 수 있습니다.
다음 명령을 실행하십시오 -
curl -sfL https://get.k3s.io | sh -s - --write-kubeconfig-mode 644
위의 명령에서, 우리는 --write-kubeconfig-mode이라는 추가 표지를 사용했다.기본적으로 /etc/rancher/k3s/k3s.yaml에 있는 KUBCECONFIG 파일은 루트 사용자에게만 읽기 권한이 있습니다.따라서 다른 사용자에게도 읽을 수 있도록 (추천하는 방법) 해야 한다.
이것으로 우리는 k3s 단일 노드 집단을 성공적으로 세웠다.

다중 노드 클러스터


k3s에 다중 노드 집단을 설치하는 것도 매우 간단하다.몇 개의 명령만 있으면, 우리는 우리의 주 노드에 가능한 한 많은 작업 노드를 제공할 수 있다.HA(고가용성) 프로덕션 k3s 클러스터를 구성하려면 다음 절차를 따르십시오.
첫걸음우선, 우리는 단일 노드 집단에서처럼 같은 명령을 사용하여 서버를 설정해야 한다-
curl -sfL https://get.k3s.io | sh -s - --write-kubeconfig-mode 644
두 번째 단계.다음에 다음 명령에서 노드 영패를 찾아야 합니다. k3s 에이전트는 이 영패를 사용하여 그룹에 임의의 작업 노드를 추가합니다.
sudo cat /var/lib/rancher/k3s/server/node-token
세 번째.다음 명령은 주 노드에서 k3s 에이전트를 만드는 데 사용됩니다. 상기 명령에 따라 이 에이전트를 설정하고 주 노드에서 추출한 서버 IP와 노드 영패를 사용합니다.위 명령에 따라 생성된 마스터 IP 및 토큰에서 my-servernode-token을 교체하십시오.
별도의 인스턴스/시스템에서 다음 명령을 실행하여 만든 마스터 노드의 작업 노드로 만듭니다.
curl -sfL https://get.k3s.io | K3S_URL=https://my-server:6443 K3S_TOKEN=node-token sh -
정답!우리는 HA 생산급 k3s 클러스터를 성공적으로 구축했습니다.현재 우리는 이미 k3s 집단에 배치할 준비가 되어 있다.
현재 우리가 집단을 구축하는 다양한 방식을 이해한 후에 k3s를 사용하는 장점과 업계가 정말 k3s를 사용했는지 살펴봅시다.

k3s의 장점

  • 빠른 설치,
  • 필요한 리소스 감소
  • 클러스터 설정 용이,
  • 로우 프로파일,
  • 은 노드 등을 쉽게 추가/삭제할 수 있습니다.
    이것들은 k3s 집단의 일부 우세이다.지금 문제가 생겼는데, 그것이 정말 이 업계에서 사용되고 있습니까?
  • k3s를 사용하는 회사


    간단한 배치와 유연성 때문에 Raspberry Pi에서 AWS a1.4xlarge 32GiB server까지의 물건을 지원할 수 있기 때문에 생산에서 고도로 사용되고 있다.K3를 사용하는 회사들-

  • Civo - 클라우드 로컬 서비스 제공업체

  • Qubitro-사물인터넷 플랫폼으로 사물인터넷 프로젝트를 설계하고 개발하는 데 사용된다.

  • LoyaltyHarbour- 전자상거래 상점에 지원.

  • TWave - 상태 모니터링 시스템

  • Lunar Ops, Inc-DevOps는 서비스 회사로서 뉴욕주 브롱크스시
  • 에 본사를 두고 있다
    이 때문에 생산에서 K3를 사용하는 회사는 손꼽힌다.

    나 이제 뭐 할 거야?


    따라서 본 블로그에서 우리는 k3s, 그 체계 구조, 집단 설정, 그 장점과 이를 사용하는 회사에 대해 깊이 있게 분석했다.궁금한 사항이 있으면 언제든지 저에게 연락하거나 질문에 대한 의견을 달아 주십시오.우리는 반드시 가능한 한 빨리 해결할 것이다.
    현재 저는 또 다른 블로그에서 일하고 있습니다. k3s 단일 노드 집단의 맨 위에 Devtron을 세우고 곧 지역 사회와 제 일을 공유할 것입니다.

    데프톤 실험실 / 데프트랑


    Kubernetes의 소프트웨어 제공 워크플로우

    좋은 웹페이지 즐겨찾기