RancherOS에 Rancher 서버 설치
RancherOS는 시스템 서비스를 실행하기 위해 시스템 Docker 데몬을 PID 0으로 실행하는 매우 가벼운 운영 체제 (약 60MB)입니다.
이 안내서는 여러 개의 Alpine Linux 3.9.0 서버와 Portainer를 사용하여 Docker swarm을 생성하고 구성하는 방법을 보여줍니다. Vultr은 현재 CentOS 7 x64와 Ubuntu 16.04 x64를 모두 지원 하는 원 클릭 도커 앱 을 제공합니다 .
시작하려면 Alpine Linux 3.9.0을 실행하는 VC2 서버가 두 대 이상 필요합니다. Docker swarm 내에서 이러한 서버 중 하나는 manager node
외부 네트워크와 인터페이스하고 작업자 노드에 작업을 위임 하는 역할을합니다 . 그런 다음 다른 서버는 worker node
관리자 노드에 의해 위임 된 작업을 수행합니다.
응용 프로그램에 중복성 및 / 또는 더 많은 컴퓨팅 성능이 필요한 경우 두 개 이상의 서버를 시작할 수 있으며이 가이드에 제공된 단계가 계속 적용됩니다.
Vultr 서버 배포 인터페이스를 방문하십시오 .
Vultr Cloud (VC2)
페이지 상단에서 탭이 선택되어 있는지 확인 하십시오.
Server Location
섹션 에서 임의의 위치를 선택할 수 있지만 모든 서버는 동일한 위치에 있어야합니다 . 그렇지 않으면 Docker 스웜을 배치 할 수 없습니다.
섹션 의 ISO Library
탭을 Server Type
선택하고 Alpine Linux 3.9.0 x86_64
이미지를 선택하십시오 .
Server Size
섹션 에서 적절한 옵션을 선택 하십시오. 이 가이드는 25GB SSD 서버 크기를 사용하지만 응용 프로그램의 리소스 요구 사항을 충족하기에는 불충분 할 수 있습니다. Vultr을 사용하면 서버가 이미 시작된 후 서버 크기를 쉽게 업그레이드 할 수 있지만 응용 프로그램이 최적으로 수행해야하는 서버 크기를 신중하게 고려해야합니다.
에서 Additional Features
섹션, 당신이 선택해야합니다 Enable Private Networking
옵션을 선택합니다. 이 안내서를 따르는 데 다른 옵션이 필요하지는 않지만 응용 프로그램의 맥락에서 각 옵션이 적합한 지 여부를 고려해야합니다.
이전 Multiple Private Networks
에 계정 에서 옵션을 활성화 한 경우 서버를 위해 기존의 기존 네트워크를 선택하거나 새 개인 네트워크를 만들어야합니다. 활성화하지 않은 경우이 섹션을 무시할 수 있습니다. 개인 네트워크 수동 구성에 대한 자세한 내용은 이 안내서를 참조하십시오 .
Firewall Group
지금 은 섹션을 건너 뛰십시오 . Docker swarm에서 관리자 노드 역할을하는 서버 만 노출 된 포트가 필요하며 서버 배치 후에 구성해야합니다.
페이지 맨 아래 Server Qty
에 적어도 2 개를 입력해야합니다 . 앞에서 언급했듯이 둘 이상의 서버가 필요할 수 있지만이 가이드를 따르기에 충분합니다.
마지막으로, Server Hostname & Label
섹션에서 각 서버에 대해 의미 있고 기억하기 쉬운 호스트 이름과 레이블을 입력하십시오. 이 설명서의 목적을 위해, 제 서버의 호스트 이름과 라벨 것 docker-manager
및 Docker Manager
,과 respectively- docker-worker
및 Docker Worker
각각 초.
모든 구성을 다시 확인한 후 Deploy Now
페이지 하단의 버튼 을 클릭 하여 서버를 시작할 수 있습니다.
Vultr의 ISO 라이브러리에서 OS를 선택 했으므로 각 서버에 Alpine Linux 3.9.0을 수동으로 설치하고 구성해야합니다.
Vultr에 1 분 또는 2 분 동안 서버를 할당 한 후 서버 관리 인터페이스 에서 서버 의 3 점 more options
아이콘을 클릭 한 다음 옵션 을 선택하십시오 .Docker Manager
View Console
로그인 프롬프트가 표시된 콘솔로 리디렉션되어야합니다. 그렇지 않은 경우 Vultr가 서버 배치를 완료 할 때까지 1 분 정도 기다리십시오.
해당 로그인 프롬프트 root
에서 사용자 이름으로 입력하십시오 . 서버에서 현재 실행중인 Alpine Linux 3.9.0의 라이브 버전에서는 로그인 할 때 수퍼 유저가 비밀번호를 입력하지 않아도됩니다.
루트 계정에 성공적으로 로그인하면 시작 메시지와 함께 다음과 같은 셸 프롬프트가 나타납니다.
localhost:~#
Alpine Linux 설치 프로그램을 시작하려면 다음 명령을 입력하십시오.
# setup-alpine
먼저 적절한 키보드 레이아웃을 선택하십시오. 이 가이드는 us
레이아웃과 변형을 사용합니다 .
호스트 이름을 설정할 때 배포 중에이 서버에 설정 한 것과 동일한 호스트 이름을 선택하십시오. 이 안내서를 정확히 따른다면 호스트 이름은이어야합니다 docker-manager
.
두 개의 네트워크 인터페이스를 사용할 수 있어야합니다 : eth0
및 eth1
. 이 표시 만되면 eth0
서버의 개인 네트워크를 올바르게 구성하지 않은 것입니다. 을 eth0
사용하여 dhcp
초기화 eth1
하고이 서버에 배치 된 개인 IP 주소, 넷 마스크 및 게이트웨이를 사용하여 초기화 하십시오. 서버의 설정 인터페이스에서 이러한 세부 사항에 액세스 할 수 있습니다. 메시지가 표시되면 수동 네트워크 구성을 수행하지 마십시오.
루트 계정의 새 비밀번호를 입력 한 다음 서버를 배치하기로 선택한 위치에 적합한 시간대를 선택하십시오.
HTTP / FTP 프록시를 사용하려면 URL을 입력하십시오. 그렇지 않으면 프록시 URL을 설정하지 마십시오.
시스템 시계 동기화를 관리 할 NTP 클라이언트를 선택하십시오. 이 안내서는를 사용 busybox
합니다.
사용할 패키지 저장소 미러를 요청하면 번호를 입력하여 명시 적으로 하나를 선택하십시오. 자동으로 가장 빠른 것을 감지하고 선택하십시오 f
. 또는를 입력하여 저장소 구성 파일을 수동으로 편집하십시오 e
. 이는 Alpine Linux에 익숙하지 않은 경우 권장되지 않습니다. 이 안내서는 첫 번째 미러를 사용합니다.
SSH를 사용하여 서버에 액세스하거나 SSH 기반 파일 시스템을 호스팅하려는 경우 사용할 SSH 서버를 선택하십시오. 이 안내서는를 사용 openssh
합니다.
사용할 수있는 디스크에 대한 메시지가 나타나면 디스크 선택 vda
과 같은 sys
유형입니다.
이제 Alpine Linux 3.9.0이 서버에 설치되어 있어야합니다. 이전에 배치 한 다른 모든 서버에 대해이 프로세스를 반복하여 호스트 이름 및 eth1
네트워크 인터페이스에 올바른 값을 대체하십시오 .
이 시점에서 서버는 여전히 Alpine Linux 3.9.0의 라이브 ISO 버전을 실행하고 있습니다. SSD 설치로 부팅하려면 서버의 설정 인터페이스를 방문하여 Custom ISO
사이드 메뉴 항목으로 이동 한 후 Remove ISO
버튼을 클릭하십시오 . 서버를 재부팅해야합니다. 그렇지 않은 경우 수동으로 재부팅하십시오.
서버 재부팅이 완료되면 서버의 웹 콘솔로 돌아갑니다 Docker Manager
.
설치 과정에서 이전에 설정 한 비밀번호를 사용하여 루트 계정에 로그인하십시오.
세 번째 줄의 주석을 해제하여 지역 사회 패키지 저장소 사용을 /etc/apk/repositories
사용하여 vi
. Edge 및 테스트 리포지토리를 비슷한 방식으로 활성화 할 수 있지만이 가이드를 따를 필요는 없습니다.
다음 쉘 명령을 입력하여 서버의 로컬 패키지 색인을 이전에 선택한 원격 저장소와 동기화하십시오.
# apk update
그런 다음 오래된 패키지를 업그레이드하십시오.
# apk upgrade
이전과 같이 이전에 배포 한 각 서버에 대해이 구성 프로세스를 반복하십시오.
Docker 패키지 자체를 설치하기 전에 별도의 docker
사용자 를 만들 수 있습니다 . 다음 명령을 사용하여이를 수행 할 수 있습니다.
# adduser docker
참고 : Docker 패키지가 설치되면 이 새 사용자와 새 docker
그룹에 추가 된 모든 사용자에게 루트 권한이 부여됩니다. Moby Github 저장소에서 다음 문제 를 참조하십시오 .
인
--privileged
도커 로 인해 'docker'그룹에 추가 된 사람은 모두 루트에 해당합니다. 도커 그룹의 모든 사람은 시스템에 대한 모든 권한 에스컬레이션 정책 및 감사에 대한 백도어를 가지고 있습니다.이는 누군가가 sudo to root를 실행하여 정책을 적용하고 감사를 적용하는 것과는 다릅니다.
docker
사용자 에게 sudo 권한을 부여 하려면 먼저 sudo
패키지를 설치하십시오 .
# apk add sudo
그런 다음 sudo
그룹을 작성하십시오 .
# addgroup sudo
마지막으로 docker
사용자를 sudo
그룹에 추가하십시오 .
# adduser docker sudo
이제이 안내서의 4 단계에 따라 sudo 구성을 완료 할 수 있습니다 .
이제 Docker 패키지를 설치할 준비가되었습니다. docker
Docker를 설치하고 구성하기 위해 별도의 sudo 가능 사용자 가 반드시 필요 하지는 않지만이 안내서는 해당 규칙을 따릅니다.
다음 명령으로 Docker 패키지를 설치하십시오.
# apk add docker
그런 다음 Docker init 스크립트를 활성화하십시오.
# rc-update add docker
마지막으로 Docker 데몬을 시작하십시오.
# rc-service docker start
이 명령으로 Docker가 실행 중인지 확인할 수 있습니다.
# docker info
마지막으로, 처음에 배치 한 각 서버에 대해이 Docker 설치 프로세스를 반복하십시오.
모든 설정이 완료되면 Docker swarm을 만들 준비가 된 것입니다.
Docker Manager
서버 의 웹 콘솔로 다시 이동하십시오 . 이 서버는 웜에서 관리자 노드로 구성합니다. docker
이전에 사용자 를 작성하기로 선택한 경우 수퍼 유저가 아닌 해당 계정을 사용하여 로그인하십시오.
다음 명령을 입력하되 서버에 할당 된 192.0.2.1
개인 (공용 아님) IP 주소로 바꾸 십시오 Docker Manager
.
$ docker swarm init --advertise-addr 192.0.2.1
Docker는 개인 네트워크의 다른 서버에서 실행할 수있는 ���령을 표시 하여이 새로운 떼에 작업자 노드로 추가합니다. 이 명령을 저장하십시오.
이제 Docker Worker
서버 의 웹 콘솔로 이동 하여 docker
사용자가 작성한 경우 로그인 하십시오.
이 서버를 방금 생성 한 떼에 작업자 노드로 추가하려면 swarm creation 명령의 출력에서 저장 한 명령을 실행하십시오. 다음과 유사합니다.
$ docker swarm join --token SWMTKN-1-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXX 192.0.2.1:2377
Docker는 노드가 떼에 합류 할 수 있는지 여부를 출력합니다. 웜에 작업자 노드를 추가하는 데 문제가 발생하면 개인 네트워크 구성을 다시 확인 하고이 안내서 에서 문제 해결을 참조하십시오 .
처음에 두 대 이상의 서버를 배포 한 경우 위 명령을 사용하여 나머지를 작업자 노드로 웜에 추가하여 응용 프로그램에서 사용할 수있는 리소스의 양을 늘릴 수 있습니다. 또는 추가 관리자 노드를 추가 할 수 있지만이 안내서의 범위를 벗어납니다.
이제 Docker swarm을 사용할 준비가되었습니다. 그러나 선택적으로 웜의 관리자 노드에서 Portainer 스택을 시작할 수 있습니다. Portainer는 웜과 그 안의 노드를 관리하기위한 편리한 웹 인터페이스를 제공합니다.
이제 떼를위한 방화벽 그룹을 만들 차례입니다. 응용 프로그램에 특별히 필요한 경우가 아니면 관리자 노드의 포트만 노출하십시오 . 신중하게 고려하지 않고 작업자 노드에 포트를 노출하면 취약점이 발생할 수 있습니다.
방화벽 관리 인터페이스로 이동하여 새 방화벽 그룹을 작성하십시오. 응용 프로그램은 노출 할 포트를 지정해야하지만 최소한 9000
Portainer의 노출 포트 를 지정해야합니다. 이 방화벽 그룹을 Docker Manager
서버에 적용하십시오 .
필수는 아니지만 SSL을 사용하여 Portainer를 보호하는 것이 좋습니다. 이 가이드를 위해 자체 서명 된 OpenSSL 인증서 만 사용 하지만 프로덕션 환경에서 Let 's Encrypt 사용 을 고려해야 합니다.
Docker Manager
서버 의 웹 콘솔로 이동 하여 docker
사용자 를 사용하여 로그인 한 후 다음 명령을 사용하여 자체 서명 된 OpenSSL 인증서를 생성하십시오.
$ mkdir ~/certs
$ openssl genrsa -out ~/certs/portainer.key 2048
$ openssl req -new -x509 -sha256 -key ~/certs/portainer.key -out ~/certs/portainer.pem -days 3650
~/portainer-agent-stack.yml
다음 내용 으로 새 파일을 작성하십시오 .
version: '3.2'
services:
agent:
image: portainer/agent
environment:
AGENT_CLUSTER_ADDR: tasks.agent
CAP_HOST_MANAGEMENT: 1
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/lib/docker/volumes:/var/lib/docker/volumes
- /:/host
networks:
- agent_network
deploy:
mode: global
portainer:
image: portainer/portainer
command: -H tcp://tasks.agent:9001 --tlsskipverify --ssl --sslcert /certs/portainer.pem --sslkey /certs/portainer.key
ports:
- target: 9000
published: 9000
protocol: tcp
mode: host
volumes:
- portainer_data:/data
- /home/docker/certs:/certs
networks:
- agent_network
deploy:
mode: replicated
replicas: 1
placement:
constraints: [node.role == manager]
networks:
agent_network:
driver: overlay
attachable: true
volumes:
portainer_data:
이 Docker 스택 구성 파일을 요구 사항에 맞게 수정 한 후 배포 할 수 있습니다.
$ docker stack deploy --compose-file ~/portainer-agent-stack.yml portainer
Portainer가 작동하는지 확인하려면 Docker에 1 ~ 2 분 정도 시간을 준 후 다음 명령을 실행하여 스택을 배포하십시오.
$ docker ps
당신은 이미지 두 개의 컨테이너를 볼 수 portainer/portainer:latest
와 portainer/agent:latest
Portainer이 제대로 시작되었는지 확인.
이제 HTTPS를 사용하여 Docker Manager
포트에서 서버 의 공용 IP 주소를 방문하여 Docker swarm을 구성하고 관리 할 수 있습니다 9000
.
RancherOS는 시스템 서비스를 실행하기 위해 시스템 Docker 데몬을 PID 0으로 실행하는 매우 가벼운 운영 체제 (약 60MB)입니다.
PHP 응용 프로그램은 일반적으로 웹 서버, 관계형 데이터베이스 시스템 및 언어 인터프리터 자체로 구성됩니다. 이 튜토리얼에서 우리는 활용할 것입니다
소개 Docker는 컨테이너로 실행되는 프로그램을 배포 할 수있는 응용 프로그램입니다. 인기있는 Go 프로그래밍 언어로 작성되었습니다.
다른 시스템을 사용하십니까? Docker는 컨테이너로 실행되는 프로그램을 배포 할 수있는 응용 프로그램입니다. 인기있는 Go 프로그램에서 작성되었습니다.
이 기사에서는 Docker 컨테이너 내에 Node 응용 프로그램을 배포하는 방법을 보여줍니다. 참고 :이 튜토리얼은 Docker가 설치되어 있고 읽은 것으로 가정합니다.
Harbor는 Docker 이미지를 저장하고 배포하는 오픈 소스 엔터프라이즈 급 레지스트리 서버입니다. 하버, 오픈 소스 Docker Distribution b 확장
LXC 컨테이너 (Linux 컨테이너)는 단일 호스트에서 여러 개의 격리 된 Linux 시스템을 실행하는 데 사용할 수있는 Linux의 운영 체제 기능입니다. 그
Kubernetes는 서버 클러스터 전체에서 컨테이너화 된 애플리케이션을 관리하기 위해 Google에서 개발 한 오픈 소스 플랫폼입니다. 그것은 10 년을 기반으로하고
다른 시스템을 사용하십니까? 소개 Rancher는 컨테이너를 실행하고 개인 컨테이너 서비스를 구축하기위한 오픈 소스 플랫폼입니다. 목장주 기지
개요이 기사는 Kubernetes 클러스터를 kubeadm과 함께 시작하고 실행하는 데 도움을주기 위해 작성되었습니다. 이 가이드는 두 대의 서버를 배포합니다.
이 기사에서는 CoreOS에 docker-compose를 설치하는 방법에 대해 설명합니다. CoreOS에서는 / usr / 폴더를 변경할 수 없으므로 표준 / usr / local / bin 경로를 사용할 수 없습니다.
다른 시스템을 사용하십니까? 소개 Rancher는 컨테이너를 실행하고 개인 컨테이너 서비스를 구축하기위한 오픈 소스 플랫폼입니다. 목장주 기지
다른 시스템을 사용하십니까? Docker는 가상 컨테이너 내에 소프트웨어를 배포 할 수있는 응용 프로그램입니다. Go 프로그램에서 작성되었습니다.
다른 시스템을 사용하십니까? Docker Swarm은 개별 서버를 컴퓨터 클러스터로 전환하여 확장 및 고 가용성을 용이하게합니다.
다른 시스템을 사용하십니까? Docker Swarm은 개별 서버를 컴퓨터 클러스터로 전환합니다. 스케일링, 고 가용성
이 튜토리얼은 Docker 시작의 기본 사항을 설명합니다. Docker가 이미 설치되어 있다고 가정합니다. 이 튜토리얼의 단계는
웹 응용 프로그램을 실행할 때 일반적으로 멀티 스레딩을 사용하도록 소프트웨어를 변환하지 않고도 리소스를 최대한 활용하려고합니다.
우리는 여러 시스템에서 애플리케이션 컨테이너를 생성, 관리 및 배포 할 수있는 플랫폼 인 Docker를 알고 있습니다. Docker Inc.는 서비스를 제공합니다
전제 조건 Docker 엔진 1.8 이상. 최소 4GB의 디스크 공간. 최소 4GB의 RAM. 1 단계. Docker 설치 SQL-Server를 설치하려면 Docker mus
랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.
오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.
Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능
인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.
최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.
빅데이터의 13가지 상용 데이터 추출 도구
우리 컴퓨터는 모든 데이터를 저널링 파일 시스템이라고 하는 체계적인 방식으로 저장합니다. 검색을 누르는 즉시 컴퓨터에서 파일을 검색하고 표시할 수 있는 효율적인 방법입니다.https://wethegeek.com/?p=94116&preview=true
과학이 빠른 속도로 발전하고 우리의 많은 노력을 인수함에 따라 설명할 수 없는 특이점에 처할 위험도 높아집니다. 특이점이 우리에게 무엇을 의미할 수 있는지 읽어보십시오.
26가지 빅 데이터 분석 기법에 대한 통찰: 1부
의료 분야의 AI는 지난 수십 년 동안 큰 도약을 했습니다. 따라서 의료 분야에서 AI의 미래는 여전히 나날이 성장하고 있습니다.