Table des matières:
- Étape 1: Enregistrez/Créez un compte Google Cloud Platform
- Étape 2: Création d'instances par script
- Étape 3: Création de l'instance de VM
- Étape 4: Configuration de Swap sur la VM
- Étape 5: Installation du logiciel du contrôleur
- Étape 6: Configuration des sauvegardes
Vidéo: Contrôleur Unifi sur Google Cloud Platform (GCP) : 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Le contrôleur Unifi d'Ubiquity permet la gestion Web de leurs produits Unifi, y compris les points d'accès sans fil, les routeurs et les commutateurs. Ils ont un excellent guide pour configurer le contrôleur sur Amazon AWS en utilisant le niveau gratuit qui donne une machine virtuelle gratuite pendant 12 mois. Une fois l'année écoulée, vous devez payer pour continuer à utiliser la VM.
Installer un contrôleur UniFi Cloud sur Amazon Web Services
Google Cloud Platform (GCP) propose également un niveau gratuit avec une micro VM gratuite pour toujours avec des spécifications similaires à celles de l'offre Amazon. Le but de ce guide est de documenter les étapes de configuration d'un contrôleur Unifi dans GCP.
Remarque: un autre utilisateur, Petri, a écrit un excellent guide ainsi qu'un script qui configure des fonctionnalités supplémentaires telles que les certificats Let Encrypt, les limites Fail2Ban et la maintenance générale. Découvrez-le pour compléter cette instructable:
Étape 1: Enregistrez/Créez un compte Google Cloud Platform
- Accédez à: https://cloud.google.com/free/ et cliquez sur le bouton "Essayer gratuitement" pour commencer à créer un compte.
- Connectez-vous avec votre compte sur:
-
Sélectionnez le projet que vous souhaitez utiliser pour le contrôleur Unifi. Si vous créez un compte gratuit, vous aurez "Mon premier projet" sélectionné.
Cela peut être renommé en allant dans Menu> IAM & admin> Paramètres et en modifiant le nom du projet
Étape 2: Création d'instances par script
Plutôt que de cliquer sur l'interface graphique étape par étape pour créer l'instance, Google fournit Google Cloud Shell pour créer à partir d'une ligne de commande. Cela élimine les erreurs de configuration dues à des étapes manquées ou à des erreurs de frappe.
Remarque: L'offre gratuite n'est disponible que dans les régions suivantes: us-east1, us-west1 et us-central1
Si vous utilisez cette méthode avec le script de Petri, aucune autre étape n'est nécessaire car tout le reste est automatisé sur Debian. Pour ceux qui veulent le construire manuellement ou comprendre les écrous et les boulons dans les coulisses, les étapes qui suivent parcourent la configuration.
Remarque: en raison de la mise en forme Instructable, parfois copier/coller ne fonctionne pas comme prévu. Vous trouverez ci-joint un fichier texte avec toutes les commandes qui doivent être correctement copiées et collées et peuvent être plus faciles à modifier pour vos noms de compartiment, noms DNS et régions spécifiques.
Remarque finale: à compter du 9/5/2018, le logiciel Unifi nécessite toujours une version de MongoDB antérieure à celle fournie avec Ubuntu 18.04, nécessitant soit un système d'exploitation différent, soit des solutions de contournement manuelles, comme décrit ici. En conséquence, les commandes ci-dessous utiliseront Debian 9
Après vous être connecté au site de la console, cliquez sur le bouton dans le coin supérieur droit pour activer Cloud Shell. Une boîte noire apparaîtra dans la partie inférieure de la page avec l'interface Cloud Shell. Copiez et collez les commandes, en remplaçant le texte si nécessaire
Créer un bucket de stockage
Un compartiment de stockage conservera les sauvegardes dans un emplacement séparé afin que nous puissions détruire le contrôleur et restaurer très rapidement à partir d'une sauvegarde relativement récente. Assurez-vous de remplacer some-unique-name par un nom de votre choix. D'autres régions sont disponibles dans le niveau gratuit tant qu'elles se trouvent aux États-Unis, à l'exception de us-east4 (consultez les détails ici:
gsutil mb -c regional -l us-central1 gs://some-unique-name
Créer une IP externe statique
Pour éviter que l'IP externe ne change au fil du temps, l'IP peut être réservée et reste libre tant qu'elle est attachée à une instance de VM en cours d'exécution. Si vous détruisez l'instance sans créer de remplacement ou si vous l'éteignez pendant plus d'une heure, l'adresse IP statique peut vous être facturée jusqu'à ce que vous la supprimiez.
les adresses de calcul gcloud créent unifi-external
--région us-central1
Créer les règles de pare-feu
Cette série de lignes créera plusieurs règles de pare-feu nécessaires au contrôleur Unifi et les ajoutera à une balise nommée unifi-server qui sera également attribuée à l'instance de serveur
gcloud compute firewall-rules create "unifi-http"
--allow tcp:80, tcp:8443, tcp:8880, tcp:8843 / --description="Ports utilisés pour HTTP et HTTPS sur des ports non standard" / --target-tags=unifi-server
gcloud compute firewall-rules create "unifi-inform"
--allow tcp:8080 / --description="Port pour la communication entre l'appareil et le contrôleur" / --target-tags=unifi-server
gcloud compute firewall-rules create "unifi-stun"
--allow udp:3478 / --description="Port utilisé pour STUN" / --target-tags=unifi-server
gcloud compute firewall-rules create "unifi-throughput"
--allow tcp:6789 / --description="Port utilisé pour le test de vitesse mobile UniFi" / --target-tags=unifi-server
Création de l'instance de VM
Cette série de lignes créera l'instance dans les limites du niveau gratuit. Modifiez la première ligne après la création pour changer le nom de l'instance. Si vous ne souhaitez pas utiliser le script de configuration automatique fourni par Petri ou souhaitez inclure des options supplémentaires, modifiez ou supprimez la dernière ligne commençant par --metadata. (Remarque: si vous éliminez complètement la ligne, vous devrez peut-être appuyer à nouveau sur Entrée après avoir collé pour terminer l'action)
Les instances de calcul gcloud créent un unifi-controller
--machine-type f1-micro / --image-family debian-9 / --image-project debian-cloud / --boot-disk-type pd-standard / --boot-disk-size 25 Go / --zone us-central1-c / --description "Unifi Controller" / --scopes=default, storage-rw / --tags unifi-server / --address unifi-external / --metadata=startup-script-url=gs: //petri-unifi/startup.sh, timezone=US/Central, dns-name=your.domain.com, bucket=some-unique-name
Si vous souhaitez utiliser d'autres images du système d'exploitation, vous pouvez obtenir la liste complète à partir de Cloud Shell à l'aide de la commande suivante
liste d'images de calcul gcloud
Prenez note de la famille et du projet, dans ce cas "debian-9" et "debian-cloud"
Étape 3: Création de l'instance de VM
- Depuis le bouton Menu dans le coin supérieur gauche, sélectionnez "Compute Engine" puis "VM Instances"
- Attendez la fin de l'initialisation de Compute Engine si vous y êtes invité.
-
Sous « Instances de VM » dans le volet de gauche, cliquez sur « Créer » dans le volet de droite.
- Saisissez un nom pour votre machine virtuelle. Dans ce cas "unifi-controller"
- Sélectionnez une zone ou laissez par défaut
- Changez le type de machine en "micro" si vous utilisez l'offre gratuite
-
Cliquez sur "Modifier" sur le disque de démarrage. Sélectionnez une image Ubuntu, telle que "Ubuntu 16.04 LTS"
Les images plus récentes d'Ubuntu contiennent une version incompatible de MongoDB. Debian est une autre option
-
Augmentez le type de disque en Disque persistant standard et taillez 25 Go
Remarque: 30 Go peuvent être requis pour le bon fonctionnement du logiciel du contrôleur. Le Cloud Shell consomme 5 Go et peut dépasser les limites libres, sauf si cette instance est dimensionnée à 25 Go
- Laissez les options de pare-feu décochées. Ceux-ci seront configurés ultérieurement.
- Si vous configurez des sauvegardes comme décrit plus loin dans ce guide, sous Étendues d'accès, sélectionnez « Définir l'accès pour chaque API » et remplacez Stockage par « Lire et écrire »
-
Cliquez sur le lien "Gestion, disques, réseau, clé SSH", puis cliquez sur l'onglet Réseau. Sous « Balises réseau », entrez: unifi-server
Ceci sera utilisé lors de la création de règles de pare-feu
- Cliquez sur "Créer" pour commencer le processus
- Donnez quelques minutes pour que la création de la VM se termine. Une case à cocher verte apparaîtra à gauche du nom une fois terminé.
-
Cliquez sur le menu Google Cloud Platform > Réseau > Réseau VPC > Règles de pare-feu
-
Cliquez sur "Créer une règle de pare-feu" en haut de la page. Plusieurs règles seront nécessaires. Ils peuvent être divisés en règles individuelles ou en une règle pour inclure tous les ports nécessaires. Liste des ports
- Nom: unifi-ports
- Balises cibles: unifi-server
- Plages d'adresses IP sources: 0.0.0.0/0
- Protocoles et ports spécifiés: tcp:80; TCP: 8880; TCP: 8443; TCP: 8843; TCP: 8080; TCP: 6789; udp:3478
- Créer
-
-
Cliquez sur le menu Google Cloud Platform > Réseau > Réseau VPC > Adresses IP externes.
- Modifiez l'affectation existante d'Ephemeral à Static pour empêcher l'IP de changer au fil du temps.
- Remarque: Si l'instance est arrêtée, des frais de 0,01 $/h par IP seront facturés pour les IP statiques
Étape 4: Configuration de Swap sur la VM
Si vous utilisez l'instance f1-micro, il est fort possible que la VM manque de 600 Mo de RAM et cesse de fonctionner. Pour vous aider, configurez un fichier d'échange. Si vous utilisez une machine virtuelle plus grande, cela peut ne pas être nécessaire. Cet article vous guide à travers les étapes pour Ubuntu:
Configuration de l'échange
Les commandes suivantes peuvent être copiées et collées dans la session SSH sur votre machine virtuelle pour créer le fichier d'échange et le rendre permanent
sudo fallocate -l 1G /swapfilesudo chmod 600 /swapfilesudo mkswap /swapfilesudo swapon /swapfilesudo cp /etc/fstab /etc/fstab.bakecho '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Pour vérifier la quantité de mémoire utilisée, à la fois RAM et swap, utilisez la commande suivante
libre -h
Étape 5: Installation du logiciel du contrôleur
- Cliquez sur Menu > Compute Engine > Instances de VM. En ligne avec la VM du contrôleur, cliquez sur le bouton SSH. Une nouvelle fenêtre apparaîtra avec une session SSH vers la VM.
-
Exécutez les commandes suivantes pour ajouter le référentiel Ubiquity et ajouter la clé GPG. Ceux-ci peuvent être copiés et collés dans la fenêtre SSH: echo "deb https://www.ubnt.com/downloads/unifi/debian stable ubiquiti" | sudo tee -a /etc/apt/sources.listsudo apt-key adv --keyserver keyserver.ubuntu.com --recv 06E85760C0A52C50
- Remarque: après une mise à niveau vers une nouvelle version, la source peut être désactivée. Modifiez le fichier sources.list pour supprimer le # au début de la ligne ubnt
- sudo nano /etc/apt/sources.list
- Exécutez les commandes suivantes pour mettre à jour le référentiel des serveurs et commencer l'installation d'Unifi: sudo apt-get updatesudo apt-get install unifi
- Si vous y êtes invité, appuyez sur Y pour continuer à télécharger les packages requis et installer
- Pour accélérer le temps de démarrage initial sur la VM, installez haveged pour une génération d'entropie plus rapide. Avec haveged, le premier démarrage d'Unifi au démarrage de la VM prendra 6 à 10 minutes. Sans cela, cela peut prendre 20 à 25 minutes. Plus d'informations: https://www.digitalocean.com/community/tutorials/how-to-setup-additional-entropy-for-cloud-servers-using-havegedsudo apt-get install haveged
- Une fois terminé, tapez exit pour fermer la session SSH
- Dans la fenêtre VM Instances, notez l'IP externe de la VM
-
Ouvrez un navigateur Web sur
remplacez External-IP par l'IP externe de votre VM
-
Si une page Web apparaît, la configuration du contrôleur est terminée.
Remarque: l'étape 2 ne découvrira aucun périphérique car le contrôleur ne se trouve pas sur le même sous-réseau que les périphériques. Voir l'article d'Ubiquity sur l'adoption de la couche 3
Étape 6: Configuration des sauvegardes
Dans le cadre de l'offre gratuite de Google, 5 Go de stockage régional sont inclus. En créant un compartiment de stockage et en configurant Unifi pour copier les sauvegardes dans ce compartiment, les fichiers ne sont plus uniquement stockés dans le moteur de calcul, ce qui permet des restaurations si l'intégralité de l'instance devient indisponible.
Créer un bucket Google Cloud Storage
- Dans la console GCP, cliquez sur le bouton Menu dans le coin supérieur gauche, sélectionnez "Stockage" sous l'en-tête Stockage, puis cliquez sur Créer un bucket.
-
Saisissez un nom globalement unique. Créez une fois terminé Sélectionnez une région.
- Aux États-Unis, le stockage gratuit est disponible dans les régions se terminant par 1, comme indiqué ici:
- Sélectionnez Régional pour le niveau gratuit
- Cliquez sur Continuer lorsque vous avez terminé
- Dans la console GCP, cliquez sur le bouton Menu dans l'angle supérieur gauche, sélectionnez "Compute Engine", puis cliquez sur Instances de VM
- Arrêter l'instance Unifi
- Cliquez sur le nom de l'instance et sélectionnez Modifier Sous "Étendues d'accès", sélectionnez "Définir l'accès pour chaque API"
- Remplacez "Stockage" par Lire Écriture
- Démarrer l'instance
Créer un script pour copier quotidiennement les sauvegardes dans le bucket
- Utilisez les commandes suivantes pour créer le script de sauvegarde, en veillant à remplacer [name_of_storage_bucket] par le nom que vous avez créé ci-dessus. echo '#!/bin/sh' | sudo tee /etc/cron.daily/unifi-backup-to-bucket echo sudo gsutil rsync -r -d /var/lib/unifi/backup gs://[name_of_storage_bucket] | sudo tee -a /etc/cron.daily/unifi-backup-to-bucket
- Définissez le fichier comme exécutable sudo chmod +x /etc/cron.daily/unifi-backup-to-bucket
- Les fichiers de sauvegarde doivent maintenant être copiés quotidiennement dans le compartiment de stockage. Vous pouvez afficher les fichiers en allant dans Stockage> Navigateur et en cliquant sur le compartiment.
Remarque: j'ai eu des problèmes avec la copie de texte à partir d'Instructables et le collage dans la console ne fonctionnant pas complètement. Le texte serait copié, mais les commandes ne s'exécuteraient pas correctement. Les taper manuellement a corrigé le problème.
Conseillé:
[Souris portable] Contrôleur de souris portable basé sur Bluetooth pour Windows 10 et Linux : 5 étapes
[Souris portable] Contrôleur de souris portable basé sur Bluetooth pour Windows 10 et Linux : j'ai créé un contrôleur de souris basé sur Bluetooth qui peut être utilisé pour contrôler le pointeur de la souris et effectuer des opérations liées à la souris PC à la volée, sans toucher aucune surface. Le circuit électronique, qui est intégré à un gant, peut être utilisé pour suivre h
Curseur de caméra de suivi d'objet avec axe de rotation. Imprimé en 3D et construit sur le contrôleur de moteur à courant continu RoboClaw et Arduino : 5 étapes (avec photos)
Curseur de caméra de suivi d'objet avec axe de rotation. Imprimé en 3D et construit sur le contrôleur de moteur à courant continu RoboClaw et Arduino : Ce projet est l'un de mes projets préférés depuis que j'ai pu combiner mon intérêt pour la réalisation de vidéos avec le bricolage. J'ai toujours regardé et voulu imiter ces plans cinématographiques dans les films où une caméra se déplace sur un écran tout en faisant un panoramique pour suivre le
Contrôleur de jeu DIY basé sur Arduino - Contrôleur de jeu Arduino PS2 - Jouer à Tekken avec la manette de jeu DIY Arduino : 7 étapes
Contrôleur de jeu DIY basé sur Arduino | Contrôleur de jeu Arduino PS2 | Jouer à Tekken avec la manette de jeu DIY Arduino : Bonjour les gars, jouer à des jeux est toujours amusant, mais jouer avec votre propre contrôleur de jeu personnalisé DIY est plus amusant. Nous allons donc créer un contrôleur de jeu utilisant arduino pro micro dans cette instructables
YABC - Encore un autre contrôleur Blynk - Contrôleur de température et d'humidité du cloud IoT, ESP8266 : 4 étapes
YABC - Encore un autre contrôleur Blynk - Contrôleur de température et d'humidité du cloud IoT, ESP8266 : Salut les fabricants, j'ai récemment commencé à cultiver des champignons à la maison, des pleurotes, mais j'ai déjà 3x de ces contrôleurs à la maison pour le contrôle de la température du fermenteur pour ma bière maison, femme fait aussi ce truc de Kombucha maintenant, et en tant que thermostat pour la chaleur
ESP8266/ESP12 Witty Cloud - Contrôleur RVB SmartThings alimenté par Arduino : 4 étapes
ESP8266/ESP12 Witty Cloud - Contrôleur RVB SmartThings alimenté par Arduino : le RVB du RVB est partout ! Qui n'aime pas avoir un éclairage colorisé cool autour de sa maison ces jours-ci? Ce petit projet montre l'ESP8266 mélangé avec le contrôle SmartThings et se transforme en un véritable contrôleur RVB soigné pour LED str