InfluxDB instalēšana Ubuntu 14
Ievads InfluxDB ir atvērtā koda, izplatīta laikrindu datu bāze bez ārējām atkarībām. Jā, jūs izlasījāt par bez ārējām atkarībām
Kopš tās izveides 2009. gadā MongoDB ir bijis NoSQL nozares vadošais uzņēmums. Viens no MongoDB pamatjēdzieniem ir reprodukcijas komplekts, tāpēc pirms darba ar to vispirms ir jāpārskata koncepcija.
Vienkāršākais saziņas modelis, ko izmanto datu bāzu replikācijā, ir Master-Slave arhitektūra. Kā norāda tā nosaukums, šim modelim ir 2 lomas, kas ir izkliedētas unikālā galvenajā un daudzos vergu, galvenā loma ir apstrādāt klientu veiktās lasīšanas un rakstīšanas darbības, un vergi tiek uzskatīti par galvenās ierīces kopiju.
Šī modeļa svarīgākā priekšrocība ir tā, ka galvenā mezgla veiktspēja netiek apdraudēta ar dublēšanas operācijām, dublēšanas darbības tiek veiktas asinhroni, un tas var kļūt par nopietnu problēmu, ja galvenais mezgls neizdodas. Slave mezgli ir tikai lasāmi, un tie ir manuāli jāpaaugstina par galveno mezglu, tāpēc šajā laikā pastāv datu zaudēšanas iespēja.
Viena no iespējām, kā atrisināt pieejamības problēmu, ir izmantot vairāk nekā vienu galveno arhitektūru, taču tas var izraisīt citu problēmu saistībā ar datu konsekvenci starp šiem gadījumiem un papildu konfigurācijas sarežģītību.
Tagad, ņemot vērā kontekstu, mēs varam prezentēt MongoDB Replica Set tehnoloģiju. Replica Set ir galvenās-pakalpojuma arhitektūras nosaukums, kam ir automātiska kļūmjpārlēce, tāpēc brīdī, kad galvenais primary
mezgls (kas tagad ir nosaukts ) nedarbojas pareizi, election
tiks aktivizēts un jauns primārais mezgls tiks izvēlēts no atlikušajiem pakārtotajiem ( tagad dēvēts par secondaries
).
Primārais mezgls ir vienīgais, kas veic rakstīšanas darbības, pēc noklusējuma lasīšanas darbības apstrādā arī primārais, taču šo darbību var mainīt vēlāk.
Operācijas tiek ierakstītas oplog
(operāciju žurnālā), pēc tam sekundārie mezgli atjaunina savu saturu asinhroni, pamatojoties uzoplog
Piezīme: oplog
kolekcija ir ierobežota, tas nozīmē, ka kolekcijai ir ierobežojums, jo local.oplog.rs
jūs varat pārbaudīt šīs kolekcijas saturu mongo apvalkā jebkurā kopas loceklī.
Papildus tam, ka sekundārais mezgls veic pareizu datu bāzes dublējumu, tam ir arī šādas lomas:
Pateicoties šīm īpašībām, mums var būt dažāda veida sekundārie mezgli:
primary
un nevar izraisīt vēlēšanas, tomēr tie var balsot vēlēšanās, tiem ir pilnīga kopija un tie var pieņemt lasīšanas darbības. Tie var būt noderīgi vairāku datu centru izvietošanā.Priority 0
dalībnieki, taču viņi nevar apstrādāt lasīšanas darbības. Vajadzības gadījumā viņi var balsot. Šo dalībnieku vēlamie uzdevumi ir pārskatu veidošana un dublēšana.priority 0
mezglam, un ieteicams arī tam būt hidden
dalībniekam.Pirms infrastruktūras izvietošanas ir svarīgi to izveidot, un šajā projektā ir jāņem vērā daži punkti.
Ņemiet vērā, ka minimālais elementu skaits, lai izveidotu repliku kopu, ir 3. Varat jaukt trīs veidu mezglus ar vismaz vienu primāro un vienu sekundāro mezglu.
Šajā rokasgrāmatā mēs izvietojam 3 dalībniekus, vienu primāro un divus standarta sekundāros.
Piezīme. Ieteicams, lai tajā būtu ne vairāk kā 7 balsstiesīgi locekļi ar šķīrējtiesnešu un sekundāro locekļu kombināciju.
Nosaukums ir tikai atsaucei, bet jūs to izmantojat komplekta konfigurācijā. Ņemiet vērā, ka jūsu ražošanas vidē var būt vairāk nekā viena repliku kopa, tāpēc neaizmirstiet kopas nosaukumu.
Šī apmācība mudina lietotāju izvēlēties kopas nosaukumu.
Šajā apmācībā ir ieteikts izvietot tajā pašā datu centrā, lai izvairītos no saziņas problēmām.
Piezīme. Ja izvietojat dažādos datu centros, ir ieteicams aptvert savus mezglus ar VPN
Palaidiet 3 Ubuntu 16.04 x64 mezglus; tajā pašā reģionā no sava klientu portāla, ja iespējams. Neaizmirstiet tos nosaukt atbilstoši projekta veidam, ar kuru jūs nodarbojaties, un pārliecinieties, ka visos šajos mezglos ir vienāds servera izmērs.
Kad esat izvietojis savus 3 mezglus, jums būs jāpārliecinās, ka katrs mezgls var sarunāties ar pārējiem. Jums ir jāsadala ssh divos mezglos un jāsasniedz pārējie, izmantojot ping -c 4 EXAMPLE_IP
. Mainiet EXAMPLE_IP
savu mezglu faktiskos IP.
Šeit jūs varat redzēt veiksmīgas komunikācijas piemēru starp diviem mezgliem.
root@foo_node:~# ping -c 4 EXAMPLE_IP
PING EXAMPLE_IP (EXAMPLE_IP) 56(84) bytes of data.
64 bytes from EXAMPLE_IP: icmp_seq=1 ttl=59 time=0.594 ms
64 bytes from EXAMPLE_IP: icmp_seq=2 ttl=59 time=0.640 ms
64 bytes from EXAMPLE_IP: icmp_seq=3 ttl=59 time=0.477 ms
64 bytes from EXAMPLE_IP: icmp_seq=4 ttl=59 time=0.551 ms
--- EXAMPLE_IP ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3021ms
rtt min/avg/max/mdev = 0.477/0.565/0.640/0.064 ms
Parasti jūs varat izmantot Ubuntu MongoDB pakotni, taču labāk ir izmantot oficiālo kopienas repo, jo tas vienmēr ir atjaunināts. Šis repo satur šādas pakotnes:
mongod
dēmonu (primārais process, kas apstrādā datu pieprasījumus).mongos
dēmonu (maršrutēšanas pakalpojums dalītai izvietošanai).mongo shell
JavaScript saskarne.Pārejiet pie pakotņu instalēšanas.
Importējiet publisko atslēgu pakotņu pārvaldības sistēmā.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Izveidojiet MongoDB saraksta failu '/etc/apt/sources.list.d/mongodb-org-3.4.list'.
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Atjauniniet pakotņu datu bāzi.
sudo apt-get update
Instalējiet MongoDB metapaku.
sudo apt-get install -y mongodb-org
Sāciet MongoDB pakalpojumu.
sudo service mongod start
Tagad varat atvērt mongo shell
jebkurā bash sesijā. Lai to izdarītu, jums ir jāizmanto mongo
komanda. Jūs sagaidīs kaut kas līdzīgs šim.
MongoDB shell version v3.4.7
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.7
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
Server has startup warnings:
*Some extra logs are cut by the way*
>
Neaizmirstiet izslēgt pakalpojumu ar sudo service mongod stop
, jo vēlāk mēs atkal sāksim mongod
ar dažiem parametriem. Atkārtojiet šo procesu visos 3 komplekta mezglos.
Izmantojot atslēgas failu, reprodukcijas kopas administrēšanā tiek izmantotas divas koncepcijas. Pirmais ir Internal Authentication
. Pēc noklusējuma varat sākt mongo shell
sesiju, neizmantojot lietotāju, un šī sesija pilnībā kontrolēs datu bāzi, taču, ja autentifikācijai izmantojat atslēgas failu, mongo shell
sesija sasniedz stāvokli, ko sauc par localhost exception
. Šis stāvoklis ļauj izveidot tikai administratora lietotāju un replikas kopu. Otrais jēdziens ir Role-Based Access Control
jeb, citiem vārdiem sakot, pilnvarošana. Tas tiek īstenots, lai pārvaldītu kopiju kopas administratīvos līmeņus.
Atslēgas fails ir komplektā lietojamā parole; šai parolei ir jābūt vienādai visos kopas dalībniekos. Lai palielinātu drošību, ir svarīgi izmantot nejaušu atslēgu ar jūsu izvēlēto rīku.
Saturam ir jābūt no 6 līdz 1064 rakstzīmēm garam. Jums arī jāiestata read only
atslēgas faila atļauja.
chmod 400 PATH_OF_YOUR_KEYFILE
Tagad kopējiet savu atslēgas failu katram kopas dalībniekam, lūdzu, izmantojiet konsekventu mapi turpmākai uzziņai un neuzglabājiet to noņemamā datu nesējā.
Izmantojiet arī mapi failam, kuram mongod
var piekļūt.
Šajā darbībā mums ir jāsāk mongod daemon
katrā kopas dalībnieks . Ir divi veidi, kā sākt mongod
procesu: izmantojot konfigurācijas failu vai komandrindu. Abas ir diezgan vienkāršas metodes, taču vienkāršības labad šajā apmācībā tiek izmantota komandrindas versija.
Izmantojiet nosaukumu, kuru izvēlējāties iepriekš šajā komandā.
mongod --keyFile PATH_OF_YOUR_KEYFILE --replSet "YOUR_SET_NAME"
Pēc noklusējuma mongod
nedarbojas kā dēmons. Jums būs jāizmanto --fork
parametrs vai jāizmanto, upstart
lai to pilnībā palaistu kā dēmonu. Šajā apmācībā mēs neiedrošinām darboties mongod
kā dēmonam, lai jūs varētu tieši skatīt žurnālus savā terminālī.
Piezīme. Uzmanīgi ierakstiet reprodukcijas kopas nosaukumu, jo pēc izveides to nevar mainīt.
Piezīme. Ja palaižat mongod
kā procesu, kas nav dēmons, jums būs jāatver cits ssh savienojums, lai turpinātu darbu.
Jums ir jāizmanto mongo
komanda, lai atvērtu mongo shell
. To var izdarīt jebkurā komplektā.
Šobrīd mēs atrodamies stāvoklī, ko sauc par localhost exception
. Ja mongod
procesa iestatīšanai tiek izmantots atslēgas fails , jums ir jāizveido datu bāzes administrators, pirms varat lietot lasīšanas-rakstīšanas darbības, taču mēs to aplūkosim vēlāk.
Tas ir delikāts daļa, mēs izmantojam komandu rs.initiate()
iekšpusē mongo shell
no 4. solī, pirms lietojat šo komandu apskatīsim to.
rs.initiate(
{
_id : <replicaSetName>,
members: [
{ _id : 0, host : "example1.net:27017" },
{ _id : 1, host : "example2.net:27017" },
{ _id : 2, host : "example3.net:27017" }
]
}
)
Pirmais _id
lauks ir virkne, un tai ir jāatbilst laukam, --replSet
kas tika nodots pirms mongod
. Turklāt katrai vērtībai host
ir jābūt katra replikas kopas dalībnieka ip vai domēna nosaukumam. Neaizmirstiet pievienot portu, ko mongo instance izmanto katrā dalībniekā.
Tagad ir pienācis laiks izpildīt komandu ar jūsu datiem, tas aktivizēs election
, pēc tam automātiski tiks ievēlēts primārais.
Šeit jāņem vērā, ka čaulas kursors ir mainīts uz YOUR_SET_NAME:PRIMARY>
vai YOUR_SET_NAME:SECONDARY
. Tas nozīmē, ka komplekta izveide bija veiksmīga.
Lai turpinātu darbu, jums jāatrod primary
, ja, protams, tas nav pieejams. Izmantojiet rs.status()
komandu, lai parādītu informāciju par repliku kopu un atrastu primary
. Jūs meklējat īpašumu "stateStr" : "PRIMARY"
.
Kad esat atradis primary
, ievadiet mongo shell
un palaidiet nākamo komandu, izmantojot savus datus.
admin = db.getSiblingDB("admin")
admin.createUser(
{
user: "YOUR_USER",
pwd: "YOU_PASSWORD",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
admin = db.getSiblingDB("admin")
Daļa ļauj mums rakstīt uz admin
no citas datu bāzes. Tādējādi tiek izveidots aizstājvārds admin
, lai mēs varētu izpildīt komandas, izmantojot to.
Ja darbība ir veiksmīga, jūs saņemsit paziņojumu, ka lietotājs ir pievienots.
Successfully added user: {
"user" : "YOUR_USER",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
Šobrīd mums ir tikai administrators visiem serveriem, bet kopijas komplekts liek mums izveidot lietotāju ar šo clusterAdmin
lomu. Mēs izveidosim citu lietotāju, kuram būs tikai šī loma, lai nošķirtu problēmas.
Mēs esam sasnieguši ierobežojumu, localhost exception
tāpēc mums ir jāmaina autentifikācija uz vienu soli iepriekš izveidoto lietotāju.
Varat mainīt lietotājus, mongo shell
veicot tālāk norādītās darbības.
db.getSiblingDB("admin").auth("YOUR_ADMIN", "YOUR_PASSWORD" )
Ja vēl neesat izveidojis savienojumu ar mongo shell
šo komandu, izmantojiet šo komandu.
mongo -u "YOUR_ADMIN" -p "YOUR_PASSWORD" --authenticationDatabase "admin"
Jums tiks paziņots par lietotāja maiņu, un jūs varat pāriet uz nākamo darbību.
clusterAdmin
Loma dod lietotājam pilnu kontroli pār Replica komplektu. Tā izveide ir tikpat vienkārša kā administratora lietotāja izveide.
db.getSiblingDB("admin").createUser(
{
"user" : "YOUR_USER",
"pwd" : "YOUR_PASSWORD",
roles: [ { "role" : "clusterAdmin", "db" : "admin" } ]
}
)
Ņemiet vērā, ka šoreiz loma ir mainīta uzclusterAdmin
.
Šobrīd mums ir 2 administratori: vienam ir pilnīga kontrole pār serveri un otram, kuram ir piekļuve administratīvajiem uzdevumiem replika kopas līmenī. Tomēr mums trūkst lietotāja, kuram būtu piekļuve datubāzei "lietot", tāpēc mēs izveidosim šo lietotāju tūlīt.
admin = db.getSiblingDB("admin")
admin.createUser(
{
user: "YOUR_USER",
pwd: "YOUR_PASSWORD",
roles: [ { role: "userAdminAnyDatabase", db: "cars" } ]
}
)
Ņemiet vērā, ka šoreiz mēs mainām db
daļu, tur mēs ievietojam datubāzi pieejamu lietotājam, šajā gadījumā mēs izmantojam datu bāzi ar nosaukumu cars
.
Datubāze vēl nav izveidota. Lai to izdarītu, jums būs jāievada dažas komandas, lai to netieši izveidotu. Pārslēdzieties uz cars
datu bāzi.
use cars
Jūs saņemsit paziņojumu: switched to db cars
.
Datubāze joprojām nav izveidota, lai to izdarītu, tajā kaut kas jāieraksta. Mēs izmantojam šādu piemēru.
db.models.insert({ make: "Dodge", model: "Viper", year: 2010 })
Šoreiz jums tiks paziņots ar WriteResult({ "nInserted" : 1 })
.
Ja vēlaties, varat izgūt visus datubāzes objektus, izmantojot šādu find()
metodi:
db.models.find()
{ "_id" : ObjectId("59acd8b55334882863541ff4"), "make" : "Dodge", "model" : "Viper", "year" : 2010 }
Ņemiet vērā, ka _id
jūsu izvade atšķirsies, bet pārējiem datiem jābūt vienādiem. Ar pietiekami daudz laika šie dati tiks replicēti citiem dalībniekiem.
Reprodukcijas komplekta izveide sākotnēji var būt sarežģīta, jo ir jāsaprot daudz informācijas, taču, tiklīdz esat sapratis ideju, varat to ātri izmantot, tāpēc nepadodieties, ja nevarat to aptvert pirmajā reizē. Ņemiet vērā, ka reprodukcijas kopa ir svarīga MongoDB administrācijā, jo tā paver iespēju pievienot papildu līdzekļus, piemēram, slodzes līdzsvarošanu.
Ievads InfluxDB ir atvērtā koda, izplatīta laikrindu datu bāze bez ārējām atkarībām. Jā, jūs izlasījāt par bez ārējām atkarībām
Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.
Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.
Vai izmantojat citu sistēmu? Ievads ArangoDB ir atvērtā koda NoSQL datu bāze ar elastīgu datu modeli dokumentiem, grafikiem un atslēgu vērtībām. Tas ir
Laravel GitScrum jeb GitScrum ir atvērtā pirmkoda produktivitātes rīks, kas izstrādāts, lai palīdzētu izstrādātāju komandām ieviest Scrum metodoloģiju līdzīgā veidā.
Ievads Šajā pārskatā labi izskaidrojiet, kā dublēt vairākas MySQL vai MariaDB datu bāzes, kas atrodas vienā datorā, izmantojot pielāgotu bash skriptu.
OrientDB ir nākamās paaudzes vairāku modeļu atvērtā koda NoSQL DBVS. Atbalstot vairākus datu modeļus, OrientDB var nodrošināt lielāku funkcionalitāti un elastību
MongoDB pēc noklusējuma nav drošs. Ja instalējat MongoDB un palaižat to, nekonfigurējot to autentifikācijai, jums būs slikti
MySQL ir vispopulārākā programmatūra pasaulē, ko izmanto datu bāzēm. Ir ļoti svarīgi pārliecināties, ka jums ir datu bāzes dublējumkopijas. Šī prakse ļauj
Ievads PostgreSQL ir bezmaksas un atvērtā koda datu bāzes pārvaldības sistēma, ko var izmantot, lai uzglabātu informāciju, kas saistīta ar vietnēm. Ir zināms arī a
Priekšnosacījumi Vultr serveris, kurā darbojas jaunākā versija Arch Linux (skatiet šo rakstu.) Sudo piekļuve. Komandām, kas jāizpilda kā root, ir prefikss # un viens
Kopš tās izveides 2009. gadā MongoDB ir bijis NoSQL nozares vadošais uzņēmums. Viens no MongoDB pamatjēdzieniem ir reprodukcijas komplekts, tāpēc pirms darba ar i
MongoDB ir ātra un jaudīga NoSQL datu bāze. Tomēr Debian krātuves tiek atjauninātas lēni un bieži satur ļoti vecas pakotņu versijas. Šī apmācība
Barnyard2 ir veids, kā saglabāt un apstrādāt Snort bināros izvadus MySQL datu bāzē. Pirms sākam Lūdzu, ņemiet vērā, ka, ja jums nav krākšana
Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.
RockMongo ir tīmekļa MongoDB pārvaldības rīks, kas ir līdzīgs MySQL pārvaldības rīkam: phpMyAdmin. Šī apmācība aptvers instalēšanas procesu
Ievads InfluxDB ir uz laikrindām balstīta datubāze, kas rakstīta Go. InfluxDB ir daudz praktisku pielietojumu, no kuriem viens ir uzraudzības datu glabāšana serveros. es
MariaDB ir bezmaksas atvērtā koda datu bāze, un tā ir visplašāk izmantotā MySQL nomaiņa. To ir izveidojuši MySQL izstrādātāji, un tas ir paredzēts tālākai lietošanai
phpRedisAdmin ir tīmekļa lietojumprogramma, kas pārvalda Redis datu bāzes ar intuitīvu grafisku lietotāja interfeisu. Šajā apmācībā tiks paskaidrots, kā instalēt
Vai izmantojat citu sistēmu? Ievads ArangoDB ir atvērtā koda NoSQL datu bāze ar elastīgu datu modeli dokumentiem, grafikiem un atslēgu vērtībām. Tas ir
Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.
Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.
Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.
Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.
Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…
Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.
Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.
Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.
Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.
Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk