Een van de belangrijkste mogelijkheden van Linux-distributies is de mogelijkheid om hun potentieel uit te breiden tot veel hogere niveaus dan die welke standaard door het systeem worden geboden, dankzij het feit dat ze open source zijn.
We hebben de duizenden opties voor applicaties, programma's en hulpprogramma's genoemd die we in alle soorten categorieën vinden om een productievere server te maken en vandaag zullen we ons concentreren op Apache CouchDB, een open source noSQL-softwaretoepassing.
We zullen deze analyse uitvoeren op CentOS 7.
Wat is Apache CouchDB?Apache CouchDB is een gratis softwarebron waarmee we overal toegang hebben tot gegevens door het Coach Replication Protocol te definiëren, dat werd geïmplementeerd door een verscheidenheid aan projecten en producten die alle IT-omgevingen dekken, van wereldwijd gedistribueerde serverclusters, of mobiele telefoons tot web browsers. Software die compatibel is met het Couch Replication Protocol omvat: PouchDB, Cloudant en Couchbase Lite.
Apache CouchDB is ontwikkeld in 2005 en werd in 2008 onderdeel van de Apache Software Foundation.
CouchDB heeft een eenvoudige zoektaal voor de ontwikkelaar en kan optioneel MapReduce bevatten voor het eenvoudig, efficiënt en volledig ophalen van gegevens.
Apache CouchDB-functiesOnder de verschillende kenmerken van Apache CouchDB hebben we:
- Single-node-database: CouchDB heeft een uitstekende single-node-database die werkt als elke andere database die een applicatieserver gebruikt, het beste is dat deze op elk moment kan worden uitgebreid.
- Cluster: Apache CouchDB is een geclusterde database waarmee we een enkele logische databaseserver op een willekeurig aantal servers of virtuele machines kunnen draaien. Een CouchDB-cluster verbetert de configuratie van een enkel knooppunt door het meer capaciteit en hoge beschikbaarheid te geven zonder interne API's te wijzigen.
- CouchDB maakt gebruik van het HTTP-protocol en het JSON-gegevensformaat en is compatibel met alle software die dit ondersteunt.
- Het bevat Offline First Data Sync, een uniek CouchDB-replicatieprotocol, dat de basis vormt voor een geheel nieuwe generatie "Offline First"-applicaties voor mobiele applicaties en andere omgevingen met de huidige netwerkinfrastructuren.
- Apache CouchDB is ontworpen voor servers (van Raspberry Pi tot grote cloudinstallaties), terwijl PouchDB is ontworpen voor desktop- en mobiele webbrowsers en Couchbase Lite is ontworpen voor native iOS- en Android-applicaties die alle IT-gebieden bestrijken.
- Individuele knooppunten gebruiken een foutbestendige datastructuur die alleen kan worden gehecht. Een CouchDB-cluster met meerdere knooppunten slaat alle gegevens redundant op, zodat deze altijd beschikbaar is wanneer dat nodig is.
1. Installeer EPEL- en Apache CouchDB-repositories op CentOs 7.
Voordat u Apache CouchDB op CentOS 7 installeert, moet u een nieuwe EPEL-repository (Extra Package for Enterprise Linux) toevoegen.
Stap 1
We kunnen de EPEL-repository toevoegen met het volgende commando:
yum -y installeer epel-release
Stap 2
Om Apache CouchDB te installeren, hebben we rpm-pakketten voor installatie in RedHat of CentOS, dus hiervoor zullen we CouchDB installeren vanuit de Apache-repository, naar de map /etc/yum.repos.d gaan en een nieuw repository-bestand maken met de naam " apache -couchdb.repo "met behulp van de nano-editor:
cd /etc/yum.repos.d/ nano apache-couchdb.repoStap 3
In het nieuwe geïmplementeerde bestand zullen we het volgende plakken:
[bintray - apache-couchdb-rpm] name = bintray - apache-couchdb-rpm baseurl = http: //apache.bintray.com/couchdb-rpm/el$releasever/$basearch/ gpgcheck = 0 repo_gpgcheck = 0 ingeschakeld = 1
Stap 4
We slaan de wijzigingen op met de volgende toetsencombinatie:
Ctrl + O
We verlaten de editor met:
Ctrl + X
Stap 5
We gaan verder met het installeren van Apache CouchDB door de volgende regel uit te voeren:
yum -y installeer couchdb
Stap 6
Daar hopen we dat alle pakketten correct zijn gedownload en geïnstalleerd. Nadat de installatie is voltooid, starten we de service en laten we deze draaien bij het opstarten van het systeem:
systemctl start couchdb systemctl activeer couchdb
2. Controleer de CouchDB-service en poorten in CentOs 7
Stap 1
We kunnen de huidige status van de CouchDB-service controleren door de volgende regel uit te voeren:
systemctl status couchdb
Stap 2
Het is belangrijk om te controleren op welke poorten Apache CouchDB-communicatie tot stand wordt gebracht om ze in de firewall in te schakelen. Om dit te controleren voeren we het volgende uit:
netstat -plntuOpmerkingIn het geval dat we netstat niet hebben, moeten we het installeren door het volgende uit te voeren. Standaard gebruikt Apache CouchDB poort 5984.
yum installeer net-tools
3. Schakel Apache CouchDB HTTP-server in op CentOs 7
Apache CouchDB levert de HTTP-server voor beheerderstoegang op de standaardpoort, zoals we al zeiden, 5984. Het heeft een webgebruikersinterface voor het beheerderspaneel genaamd 'Fauxton'.
Stap 1
Om de Apache CouchDB HTTP-server in te schakelen, moeten we naar de installatiemap van apache couchdb / opt / couchdb gaan en het configuratiebestand met de naam bewerken standaard.ini in de etc / directory:
cd / opt / couchdb nano etc / default.iniStap 2
In het weergegeven bestand gaan we naar de sectie "[chttpd]" en daar voeren we ons IP-adres in het veld "bind_address" in:
Stap 3
We slaan de wijzigingen op en sluiten het bestand af. We gaan verder met het herstarten van de Apache CouchDB-service met de volgende regel:
systemctl herstart couchdbStap 4
We gaan verder met het inschakelen van de Apache CouchDB-poort door de volgende regels uit te voeren:
firewall-cmd --add-port = 5984 / tcp --permanente firewall-cmd -reload
4. Toegang tot en configuratie van beheerdersaccount in Apache CouchDB
Stap 1
Om nu toegang te krijgen tot Apache CouchDB, gaan we naar een browser en voeren we de volgende syntaxis in. Dit wordt de eerste Apache CouchDB-omgeving op CentOS 7.
http: // IP-adres: 5984 / _utils /
Stap 2
Dit punt is van vitaal belang voor veiligheid en privacy, aangezien de toegang tot het CouchDB-webplatform op dit moment direct is en geen inloggegevens vereist, zodat elke gebruiker objecten kan maken, bewerken of verwijderen.
Klik hiervoor op het bidirectionele pijlpictogram in de rechterbovenhoek en klik vervolgens op het pictogram "Databases":
Stap 3
Daar klikken we op de "Admin Party!" En in het nieuwe venster zullen we de beheerdergebruiker maken met de respectieve inloggegevens. Klik op de knop Beheerder maken om de gebruiker aan te maken.
Stap 4
Met deze methode is het de volgende keer dat we proberen opnieuw toegang te krijgen, nodig om de gedefinieerde inloggegevens in te voeren:
Stap 5
Apache CouchDB biedt een API om het CouchDB-systeem te beheren, we kunnen het 'curl'-opdrachthulpprogramma gebruiken om het CouchDB-systeem in het algemeen te beheren.
Hallo CouchDBOm informatie te krijgen over de couchdb-server die in CentOS 7 is geïnstalleerd, kunnen we de GET-parameter als volgt gebruiken:
curl -X GET http: // localhost: 5984 / of curl -X GET http: // IP: 5984 /
We kunnen zien dat de geïnstalleerde versie 2.1.1 is.
Een nieuwe database makenDe essentie van Apache CouchDB zijn databases, om een nieuwe database te maken, zijn beheerdersrechten nodig. Vervolgens zullen we de PUT-parameter gebruiken. We gaan een nieuwe database maken met de naam solvetic_db:
curl -X PUT http://192.168.0.8:5984/solvetic_dbBij het uitvoeren van deze regel kunnen we een machtigingsfout zien, we kunnen testen met behulp van de volgende regel:
curl -X PUT http: // gebruiker: [email protected]: 5984 / solvetic_db
We kunnen zien dat de database correct is aangemaakt:
Maak een lijst van de database en zijn informatieOm informatie over een database te verkrijgen, moet u de GET-parameter als volgt gebruiken:
curl -X GET http: // gebruikersnaam: wachtwoord @ localhost: 5984 / _all_dbsHiermee worden alle databases weergegeven die op dat moment zijn gemaakt. Nu zullen we het volgende uitvoeren om de informatie uit een van de geïmplementeerde databases te verkrijgen:
curl -X GET http: // gebruikersnaam: wachtwoord @ localhost: 5984 / solvetic_db
Een database verwijderenOp het moment dat we een database uit Apache CouchDB willen verwijderen, kunnen we het volgende uitvoeren:
curl -X DELETE http: // gebruikersnaam: wachtwoord @ localhost: 5984 / solvetic_dbWe kunnen valideren dat het is verwijderd door het volgende uit te voeren:
curl -X GET http: // gebruikersnaam: wachtwoord @ localhost: 5984 / _all_dbs
We begrijpen de diversiteit aan taken die Apache CouchDB ons op een eenvoudige manier laat uitvoeren voor het beheer van onze databases.