L'une des potentialités les plus importantes des distributions Linux est la possibilité d'étendre leur potentiel à des niveaux beaucoup plus élevés que ceux fournis par le système par défaut grâce à l'open source.
Nous avons mentionné les milliers d'options pour les applications, les programmes et les utilitaires que nous trouvons dans tous les types de catégories pour rendre un serveur plus productif et aujourd'hui, nous nous concentrerons sur Apache CouchDB qui est une application logicielle noSQL open source.
Nous effectuerons cette analyse sur CentOS 7.
Qu'est-ce qu'Apache CouchDBApache CouchDB est une ressource logicielle gratuite qui nous permet d'accéder aux données partout où cela est nécessaire en définissant le Coach Replication Protocol, qui a été mis en œuvre par une variété de projets et de produits qui couvrent tous les environnements informatiques, des clusters de serveurs répartis dans le monde entier. navigateurs Internet. Les logiciels compatibles avec le Couch Replication Protocol incluent : PouchDB, Cloudant et Couchbase Lite.
Apache CouchDB a été développé en 2005 et est devenu membre de l'Apache Software Foundation en 2008.
CouchDB dispose d'un langage de requête simple pour le développeur et peut éventuellement inclure MapReduce pour une récupération de données simple, efficace et complète.
Fonctionnalités d'Apache CouchDBParmi les différentes caractéristiques d'Apache CouchDB nous avons :
- Base de données à nœud unique : CouchDB possède une excellente base de données à nœud unique qui fonctionne comme n'importe quelle autre base de données utilisant un serveur d'applications, la meilleure chose est qu'elle peut être étendue à tout moment.
- Cluster : Apache CouchDB est une base de données en cluster qui nous permet d'exécuter un seul serveur de base de données logique sur n'importe quel nombre de serveurs ou de machines virtuelles. Un cluster CouchDB améliore la configuration d'un seul nœud en lui donnant une plus grande capacité et une haute disponibilité sans modifier les API internes.
- CouchDB utilise le protocole HTTP et le format de données JSON et est compatible avec tous les logiciels qui les prennent en charge.
- Il comprend Offline First Data Sync, qui est un protocole de réplication CouchDB unique, constituant la base d'une toute nouvelle génération d'applications « Offline First » pour les applications mobiles et autres environnements avec les infrastructures réseau actuelles.
- Apache CouchDB est conçu pour les serveurs (de Raspberry Pi aux grandes installations cloud), tandis que PouchDB est conçu pour les navigateurs Web de bureau et mobiles et Couchbase Lite est conçu pour les applications iOS et Android natives couvrant tous les domaines de l'informatique.
- Les nœuds individuels utilisent une structure de données en attachement uniquement résistante aux pannes. Un cluster CouchDB multi-nœuds enregistre toutes les données de manière redondante, de sorte qu'elles soient toujours disponibles en cas de besoin.
1. Installer les référentiels EPEL et Apache CouchDB sur CentOs 7
Avant d'installer Apache CouchDB sur CentOS 7, il sera nécessaire d'ajouter un nouveau référentiel EPEL (Extra Package for Enterprise Linux).
Étape 1
Nous pouvons ajouter le référentiel EPEL avec la commande suivante :
miam -y installer epel-release
Étape 2
Pour installer Apache CouchDB, nous avons des packages rpm à installer dans RedHat ou CentOS, donc pour cela, nous allons installer CouchDB à partir du référentiel Apache, en allant dans le répertoire /etc/yum.repos.d et créer un nouveau fichier de référentiel appelé " apache -couchdb.repo" en utilisant l'éditeur nano :
cd /etc/yum.repos.d/ nano apache-couchdb.repoÉtape 3
Dans le nouveau fichier déployé, nous collerons les éléments suivants :
[bintray - apache-couchdb-rpm] name = bintray - apache-couchdb-rpm baseurl = http: //apache.bintray.com/couchdb-rpm/el$releasever/$basearch/ gpgcheck = 0 repo_gpgcheck = 0 enabled = 1
Étape 4
Nous enregistrons les modifications à l'aide de la combinaison de touches suivante :
Ctrl + O
Nous quittons l'éditeur en utilisant :
Ctrl + X
Étape 5
Nous procédons à l'installation d'Apache CouchDB en exécutant la ligne suivante :
miam -y installer couchdb
Étape 6
Là, nous espérons que tous les packages sont téléchargés et installés correctement. Une fois l'installation terminée, nous allons démarrer le service et l'activer au démarrage du système :
systemctl démarrer couchdb systemctl activer couchdb
2. Vérifier le service et les ports CouchDB dans CentOs 7
Étape 1
Nous pouvons vérifier l'état actuel du service CouchDB en exécutant la ligne suivante :
systemctl status couchdb
Étape 2
Il est important de vérifier sur quels ports la communication Apache CouchDB est établie pour les activer dans le pare-feu. Pour vérifier cela, nous exécutons ce qui suit :
netstat -plntuNoterSi vous n'avez pas netstat, nous devons l'installer en exécutant ce qui suit. Par défaut, Apache CouchDB utilisera le port 5984.
miam installer net-tools
3. Activer le serveur HTTP Apache CouchDB sur CentOs 7
Apache CouchDB fournit le serveur HTTP pour l'accès administrateur sur le port par défaut, comme nous l'avons déjà mentionné, 5984. Il possède une interface utilisateur Web du panneau d'administration appelée «Fauxton».
Étape 1
Pour activer le serveur HTTP Apache CouchDB il faut aller dans le répertoire d'installation d'apache couchdb/opt/couchdb et éditer le fichier de configuration appelé default.ini dans le répertoire etc/ :
cd / opt / couchdb nano etc / default.iniÉtape 2
Dans le fichier affiché, nous irons dans la section "[chttpd]" et là nous entrons notre adresse IP dans le champ "bind_address":
Étape 3
Nous sauvegardons les modifications et sortons du fichier. Nous procédons au redémarrage du service Apache CouchDB avec la ligne suivante :
systemctl redémarrer couchdbÉtape 4
Nous procédons à l'activation du port Apache CouchDB en exécutant les lignes suivantes :
firewall-cmd --add-port = 5984 / tcp --permanent firewall-cmd -reload
4. Accéder et configurer le compte administrateur dans Apache CouchDB
Étape 1
Maintenant, pour accéder à Apache CouchDB, nous allons dans un navigateur et entrons la syntaxe suivante. Ce sera l'environnement Apache CouchDB initial sur CentOS 7.
http : // adresse_IP : 5984 / _utils /
Étape 2
Ce point est vital pour la sécurité et la confidentialité car à ce stade, l'accès à la plateforme Web CouchDB est direct et ne nécessite pas d'informations d'identification, de sorte que tout utilisateur peut créer, modifier ou supprimer des objets.
Pour cela, cliquez sur l'icône flèche bidirectionnelle en haut à droite puis cliquez sur l'icône « Bases de données » :
Étape 3
Là, on clique sur la "Partie Admin!" Et dans la nouvelle fenêtre, nous allons créer l'utilisateur administrateur avec les informations d'identification respectives. Cliquez sur le bouton Créer un administrateur pour créer l'utilisateur.
Étape 4
Avec cette méthode, la prochaine fois que nous essaierons d'accéder à nouveau, il sera nécessaire de saisir les informations d'identification définies :
Étape 5
Apache CouchDB propose une API pour gérer le système CouchDB, nous pouvons utiliser l'utilitaire de commande 'curl' pour gérer le système CouchDB en général.
Bonjour CouchDBPour obtenir des informations sur le serveur couchdb installé dans CentOS 7, nous pouvons utiliser le paramètre GET comme suit :
curl -X GET http : // localhost : 5984 / ou curl -X GET http : // IP : 5984 /
Nous pouvons voir que la version installée est 2.1.1.
Créer une nouvelle base de donnéesL'essence d'Apache CouchDB sont les bases de données, pour créer une nouvelle base de données, il sera nécessaire d'avoir des privilèges d'administrateur. Ensuite, nous utiliserons le paramètre PUT. Nous allons créer une nouvelle base de données appelée solvetic_db :
curl -X PUT http://192.168.0.8:5984/solvetic_dbLors de l'exécution de cette ligne, nous pouvons voir une erreur d'autorisations, nous pouvons tester en utilisant la ligne suivante :
curl -X PUT http: // utilisateur: mot de [email protected]: 5984 / solvetic_db
Nous pouvons voir que la base de données a été créée correctement :
Lister la base de données et ses informationsPour obtenir des informations sur une base de données, il faudra utiliser le paramètre GET comme suit :
curl -X GET http : // nom d'utilisateur : mot de passe @ localhost : 5984 / _all_dbsCela affichera toutes les bases de données créées pour le moment. Maintenant, nous allons exécuter ce qui suit pour obtenir les informations de l'une des bases de données déployées :
curl -X GET http : // nom d'utilisateur : mot de passe @ localhost : 5984 / solvetic_db
Supprimer une base de donnéesPour le moment, nous voulons supprimer une base de données d'Apache CouchDB, nous pouvons exécuter les opérations suivantes :
curl -X DELETE http : // nom d'utilisateur : mot de passe @ localhost : 5984 / solvetic_dbNous pouvons valider qu'il a été supprimé en exécutant :
curl -X GET http : // nom d'utilisateur : mot de passe @ localhost : 5984 / _all_dbs
On comprend la diversité des tâches qu'Apache CouchDB nous permet d'effectuer pour la gestion de nos bases de données de manière simple.