Instalar el servidor Rancher en RancherOS

Visión de conjunto

RancherOS es un sistema operativo increíblemente liviano (solo unos 60 MB) que ejecuta un demonio Docker "del sistema" PID 0para ejecutar servicios del sistema, (redes, acceso a la consola, etc.), así como un demonio Docker "usuario" para ejecutar no contenedores del sistema, (MySQL, Rancher y más).

Rancher es una plataforma de orquestación gestionada por contenedores para administrar contenedores, así como aspectos más amplios de infraestructura como hosts, entornos y más. Un servidor Rancher controla la orquestación, y se implementa un agente Rancher en cada host administrado por Rancher.

En este artículo, veremos los siguientes pasos para implementar un servidor Rancher:

  • Cloud-init script - Publique un archivo de inicio en la nube para instalar y ejecutar el servidor Rancher.
  • PXE script - Escriba un script PXE para recuperar el archivo de inicio en la nube y arranque el host por primera vez.
  • Firewall - Cree un grupo de firewall, porque la seguridad es primordial.
  • Start it up - Aprovisione el host e instale Rancher.

Requisitos

  • VPS con un mínimo de 1 GB de RAM: instalaremos el servidor Rancher en este host.
  • Almacenamiento en bloque: para almacenar de manera persistente los datos, las configuraciones, los usuarios y más del servidor Rancher.
  • 1 Dirección IP reservada: para proporcionar a los agentes Rancher una IP coherente para usar para unirse al entorno Rancher.

Script de inicio en la nube

Guarde la siguiente secuencia de comandos en una ubicación a la HTTP/HTTPSque pueda acceder su host para que pueda hacer referencia a ella desde su secuencia de comandos PXE.

Reemplace las ssh-...partes con su clave pública SSH para que pueda SSH en el host.

#cloud-config
ssh_authorized_keys:
  - ssh-...

write_files:
  - path: /cloud-config.yml
    permissions: "0700"
    owner: root
    content: |
      #cloud-config
      ssh_authorized_keys:
        - ssh-...

      mounts:
       - ["/dev/vdb1", "/mnt", "ext4", ""] 

      rancher:
        services:
          rancher-server:
            image: rancher/server:stable
            ports:
              - 8080:8080
            restart: always
            volumes:
              - /mnt/rancher-server-mysql:/var/lib/mysql
  - path: /opt/rancher/bin/start.sh
    permissions: "0700"
    owner: root
    content: |
      #!/bin/bash
      echo y | ros install -f -c /cloud-config.yml -d /dev/vda

Tenga en cuenta que esto es realmente plantar un cloud-config.ymlinterior de otro cloud-config.yml. El externo se carga cuando iPXE inicia el host por primera vez, e instala Rancher en la unidad del host /dev/vda. La configuración interna es para arranques posteriores y en realidad iniciará el servidor Rancher.

Los datos MySQL se almacenan en el almacenamiento en bloque /dev/vdb, por lo que los datos y las configuraciones críticas del servidor Rancher pueden sobrevivir al reemplazo del host VPS.

Puede cargar el script en cualquier número de ubicaciones gratuitas a las que se pueda acceder públicamente como una URL, o puede alojarlo en un VPS diferente para que solo sus hosts puedan acceder a través de una red privada.

Script PXE

Copie lo siguiente como un script de inicio PXE llamado " Rancher Server" mientras lo reemplaza CLOUD_CONFIG_URLcon la URL de su cloud-config.ymlarchivo (algo así como https://example.com/cloud-config.yml).

#!ipxe

# Location of Kernel/Initrd images
set base-url https://releases.rancher.com/os/latest

kernel ${base-url}/vmlinuz rancher.state.dev=LABEL=RANCHER_STATE -- rancher.cloud_init.datasources=[url:CLOUD_CONFIG_URL]

initrd ${base-url}/initrd

boot

Esto extraerá la última ISO de RancherOS y la iniciará en la memoria usando su script de inicio en la nube. Su script de inicio en la nube procederá a instalar RancherOS en el disco, y el segundo arranque ejecutará el contenedor del servidor Rancher.

Cortafuegos

Cuando Rancher esté disponible por primera vez, cualquiera que llegue al punto final tendrá inmediatamente privilegios de administrador.

Para evitar que extraños secuestren su servidor Rancher, cree un firewall llamado "Servidor Rancher" con las siguientes reglas:

  • TCP 22 en su IP, para que pueda SSH en el host.
  • TCP 8080 en su IP, para que pueda cargar la página web del servidor Rancher.
  • TCP 8080 para cualquier host de agente Rancher, para que puedan registrarse con el servidor Rancher.

Ponlo en marcha

Aprovisione su host de más de 1 GB en la misma región que su almacenamiento en bloque y Server Typeconfigúrelo en el script de inicio personalizado iPXE "Rancher Server".

Una vez que se haya iniciado, asegúrese de convertir su IP a una IP reservada para que sus agentes Rancher tengan un punto final con el que puedan registrarse de manera consistente.

IPXE tardará ~ 4 minutos en extraer el ISO de RancherOS, el primer arranque para instalar RancherOS /dev/vda, y el segundo arranque en extraer la rancher/server:stableimagen de Docker e iniciar sus contenedores.

Una vez que esté arriba, podrás alcanzarlo en http://YOUR_RESERVED_IP:8080.

Felicitaciones, acaba de configurar el servidor Rancher en RancherOS.

Puede reiniciar su instancia o incluso destruirla / reinstalarla, y el almacenamiento en bloque preservará sus datos y configuraciones, mientras que su IP reservada permitirá que los nuevos agentes Rancher sepan dónde encontrar su servidor.

Algunos pasos siguientes:

  • Set up access control - como mínimo, cree un usuario administrador local con una contraseña segura.
  • Add hosts- en la Add Hosts -> Customsección, copie la URL que contiene un token largo específico para su servidor Rancher. Necesitará esto para registrar agentes Rancher con su servidor.
  • Explorela última documentación del servidor Rancher .


Leave a Comment

Instalación de Docker en Ubuntu 14.04

Instalación de Docker en Ubuntu 14.04

¿Usando un sistema diferente? Docker es una aplicación que permite implementar programas que se ejecutan como contenedores. Fue escrito en el popular programa Go

Setup Sentry via Docker on Ubuntu 16.04

Setup Sentry via Docker on Ubuntu 16.04

Using a Different System? Introduction Sentry is an open source solution for error tracking. Sentry tracks exceptions and other useful messages fro

Cómo usar Docker: Creando tu primer contenedor Docker

Cómo usar Docker: Creando tu primer contenedor Docker

Este tutorial explica los conceptos básicos para comenzar a usar Docker. Supongo que ya tienes instalado Docker. Los pasos de este tutorial funcionarán en un

Balance de carga con Docker

Balance de carga con Docker

Al ejecutar una aplicación web, normalmente desea aprovechar al máximo sus recursos sin tener que convertir su software para usar subprocesos múltiples o

En CoreOS, configure su propio registro de Docker

En CoreOS, configure su propio registro de Docker

Todos conocemos y amamos Docker, una plataforma para crear, administrar y distribuir contenedores de aplicaciones en múltiples máquinas. Docker Inc. proporciona un servicio t

Create a Docker Swarm on Alpine Linux 3.9.0

Create a Docker Swarm on Alpine Linux 3.9.0

Introduction This guide will show you how to create and configure a Docker swarm using multiple Alpine Linux 3.9.0 servers and Portainer. Please be aware tha

Implemente una aplicación Node.js con Docker

Implemente una aplicación Node.js con Docker

Este artículo le mostrará cómo implementar su aplicación Node dentro de un contenedor Docker. Nota: Este tutorial asume que tienes Docker instalado y leído

Instalar Rancher OS a través de iPXE

Instalar Rancher OS a través de iPXE

Rancher OS es una distribución de Linux muy ligera construida alrededor de Docker. El sistema operativo en sí pesa alrededor de 20 MB. Este tutorial lo pondrá en funcionamiento con

Deploy Kubernetes With Kubeadm on CentOS 7

Deploy Kubernetes With Kubeadm on CentOS 7

Overview This article is meant to help you get a Kubernetes cluster up and running with kubeadm in no time. This guide will be deploying two servers, on

Instalación de docker-compose en CoreOS

Instalación de docker-compose en CoreOS

Este artículo explica cómo instalar docker-compose en CoreOS. En CoreOS, la carpeta / usr / es inmutable, por lo que la ruta estándar / usr / local / bin no está disponible para

Cómo instalar Harbor en CentOS 7

Cómo instalar Harbor en CentOS 7

Harbor es un servidor de registro de clase empresarial de código abierto que almacena y distribuye imágenes de Docker. Harbor extiende el código abierto Docker Distribution b

Install Docker CE on Ubuntu 18.04

Install Docker CE on Ubuntu 18.04

Introduction Docker is an application that allows us to deploy programs that are run as containers. It was written in the popular Go programming language

Comience con SQL Server 2017 (MS-SQL) en CentOS 7 con Docker

Comience con SQL Server 2017 (MS-SQL) en CentOS 7 con Docker

Requisitos previos Docker engine 1.8+. Mínimo de 4 GB de espacio en disco. Mínimo de 4 GB de RAM. Paso 1. Instalar Docker Para instalar SQL-Server, Docker mus

Comenzando con Kubernetes en CentOS 7

Comenzando con Kubernetes en CentOS 7

Kubernetes es una plataforma de código abierto desarrollada por Google para administrar aplicaciones en contenedores en un grupo de servidores. Se basa en una década y

Implemente una aplicación PHP usando Docker-compose

Implemente una aplicación PHP usando Docker-compose

Las aplicaciones PHP generalmente están compuestas por un servidor web, un sistema de base de datos relacional y el propio intérprete de idiomas. En este tutorial estaremos apalancando

Instalar Rancher en Ubuntu 16.04

Instalar Rancher en Ubuntu 16.04

¿Usando un sistema diferente? Introducción Rancher es una plataforma de código abierto para ejecutar contenedores y crear un servicio de contenedor privado. Ranchero es base

Sticky Session With Docker Swarm (CE) on Debian 9

Sticky Session With Docker Swarm (CE) on Debian 9

Using a Different System? Introduction Docker Swarm turns your individual servers into a cluster of computers; facilitating scaling, high-availability an

Instalación de Docker CE en CentOS 7

Instalación de Docker CE en CentOS 7

La tecnología de contenedores Docker le permite ejecutar aplicaciones en un entorno específico y aislado. Docker Community Edition (CE) es el nuevo nombre para el fre

Instalación de Docker CE en Debian 9

Instalación de Docker CE en Debian 9

¿Usando un sistema diferente? Introducción Docker es una aplicación que permite la implementación de software en contenedores virtuales. Fue escrito en el G

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición

ReactOS: ¿Es este el futuro de Windows?

ReactOS: ¿Es este el futuro de Windows?

ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

¿Qué es un sistema de archivos de diario y cómo funciona?

¿Qué es un sistema de archivos de diario y cómo funciona?

Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

A medida que la ciencia evoluciona a un ritmo rápido, asumiendo muchos de nuestros esfuerzos, también aumentan los riesgos de someternos a una singularidad inexplicable. Lea, lo que la singularidad podría significar para nosotros.

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

El impacto de la inteligencia artificial en la atención médica 2021

El impacto de la inteligencia artificial en la atención médica 2021

La IA en la salud ha dado grandes pasos desde las últimas décadas. Por tanto, el futuro de la IA en el sector sanitario sigue creciendo día a día.