Matou te sefe taimi, neura ma tagata-itula

O a matou poloketi e masani lava faʻaitulagi, ma o tagata faʻatau e masani lava o matagaluega. Ae, i le faaopoopo atu i le vaega a le malo, e faʻaogaina foi e faʻalapotopotoga tumaoti a tatou faiga. E toetoe lava leai ni fa'afitauli ia i latou.

O lea la, o galuega autu e faʻaitulagi, ma o nisi taimi e iai faʻafitauli ia i latou. Mo se faʻataʻitaʻiga, faʻatasi ai ma le faʻatinoga, pe a oʻo i totonu o itulagi e sili atu i le 20k o tatou tagata faʻapitoa i le vaitaimi o le taʻavaleina o galuega fou i luga o sapalai oloa. O se tiga…

O loʻu igoa o Ruslan ma ou te lagolagoina faiga faʻamatalaga a le BARS Group ma atia'e se pate fasioti tagata mo DBA fa'atupu vevesi. O lenei pou e le mo le vaivai o le loto - e tele tusi ma ata.

Matou te sefe taimi, neura ma tagata-itula

/awr

O nisi oa matou talosaga e fa'aoga ile Oracle DBMS. E iai fo'i galuega fa'atino ile PostgreSQL DBMS. O loʻo i ai i Oracle se mea matagofie - aoina faʻamaumauga i luga o le uta i luga o le DBMS, lea e faʻamaonia ai faʻafitauli o loʻo iai ma e oʻo lava i le faia o fautuaga mo le faʻaumatia - Automatic Workload Repository (AWR). I se tasi taimi (e pei o le taimi o le tiga), na talosaga pea le au atinaʻe e aoina Lipoti a le AWR mo au'ili'iliga o fa'atinoga. Na matou o atu ma le faamaoni i le DBMS server, aoina lipoti, ave ia i matou ma auina atu i latou i le gaosiga mo le auiliiliga. Ina ua uma le 5 taimi na amata ona ita ... ina ua uma le 10 ona ita ...

O se tasi o aʻu uo na faʻaalia i se tasi taimi le manatu o mea uma e faia e sili atu ma le tasi e tatau ona otometi. Seia oʻo i le taimi o le ita, e faʻamaoni, ou te leʻi mafaufau i ai ma taumafai e faʻaogaina mea uma e mafai ona otometi, ae masani lava e le o manaʻomia ma e sili atu o se suʻesuʻega nai lo se natura faʻaaogaina.

Ona ou mafaufau lea: "E le manaʻomia le pulega e faia se lipoti...". A uma, o le aoina o se lipoti o lona uiga o le faʻatinoina o le sql script @$ORACLE_HOME/rdbms/admin/awrrpt.sql ma ave le lipoti mai le server i lou nofoaga... Oi ioe, matou te le faatagaina le atinaʻe mo le gaosiga.

Ona ou Googled lea o faʻamatalaga talafeagai, fatuina le galuega mai le tusiga i luga o le suʻega faʻavae, faʻatautaia le tusitusiga ma vavega - o le lipoti na tuufaatasia ma mafai ona faʻasaoina i le lotoifale. Fausia galuega e masani ona manaʻomia ai lipoti a le AWR ma taʻu atu i tagata atiaʻe le faʻaogaina.

I lenei taimi, i loʻu taimi avanoa, ina ua uma ona talanoa ma @BotFather, na ou faia se Telegram bot mo aʻu lava, mo na o le malie. Na ou faʻaogaina i se galuega faigofie iina - faʻaalia le taimi nei, fesuiaiga o tau, tau, aʻoaʻo e lafo faʻafetai i loʻu toʻalua (ona uo teine) i luga o se faʻatulagaga. Masalo, i lena taimi, o le lafo atu o faʻafetai o le galuega sili ona lauiloa a laʻu bot, ma sa talisapaia e loʻu toʻalua.

O lea. E tusi mai tagata atiae ia i matou i Telegram, matou te auina atu se lipoti ia i latou i Telegram... Ae a pe a latou le tusi mai ia i matou, ae i se bot? A uma mea uma, o le a sili atu mo tagata uma, o le a vave ona maua le lipoti, ma sili ona taua, o le pasia o matou. O le auala lea na fanau mai ai le manatu o le galuega lauiloa muamua mo laʻu bot.

Sa amata ona ou faatinoina. Na ou faia, i le mea sili ou te mafaia, i le PHP (o la matou talosaga lava ia i le PHP, ua sili atu loʻu malamalama i ai nai lo le Python). E le o aʻu o se coder lelei, o lea ou te le faʻaali atu ia te oe laʻu code :)

O lo'o ola le bot i luga o la matou feso'ota'iga fa'atasi ma e mafai ona maua ni galuega fa'atino, e aofia ai fa'amaumauga fa'atatau. Ina ia aua neʻi faʻalavelave i taʻaloga i totonu o le 'au poʻo le lisi, na ou faʻapipiʻiina lenei gaioiga i le talanoaga faʻavae ma faʻamatalaga mataʻituina. O le auala lea e vave iloa ai e le bot po'o fea fa'amaumauga e aoina mai ai le lipoti.

O le mauaina o se poloaiga e pei o /awr N, pe a N o le numera o itula atoa e manaʻomia ai se lipoti (e ala i le faaletonu - 1 itula), e oʻo lava i le vaiaso, pe a le toe amataina le database, e amata loa ona galue le bot, aoina le lipoti, faʻasalalau o se itulau web ma vave (toetoe lava iina) maua ai se sootaga i le lipoti sili ona manaʻomia.

Mulimuli i le sootaga ma o iinei, o le lipoti a le AWR:

Matou te sefe taimi, neura ma tagata-itula

E pei ona faʻamoemoeina, na faʻatautaia e le au atinaʻe le faʻatupuina o lipoti, ma o nisi na faʻafetai mai ia i matou.

I le talisapaiaina o le faʻaogaina o le 'au, na manaʻomia e le au faʻatino galuega mai isi itulagi le tutusa, talu ai latou te mauaina le tele mai le tagata faʻatau ma popole i le faʻatinoga ma le avanoa o faiga. Na ou faaopoopo le bot i isi talatalanoaga. Latou te faʻaaogaina pea, ma ou te fiafia i ai.

Mulimuli ane, na iloa e uo faigaluega mai le CIT le auala matou te aoina ai lipoti ma mananao e fai foi. Ou te leʻi faʻaopoopoina i latou i a matou talatalanoaga, na ou faia se talanoaga eseʻese ma le faʻatupuina o lipoti i luga o se faʻatulagaga ma luga ole talosaga.

/pgBadger

E iai fo'i isi a matou talosaga ile PHP fa'atasi ma PostgreSQL. Na ou faʻatinoina le aoina o lipoti a le pgBadger mo i latou o loʻo manaʻomia le faʻaaogaina o le mataupu faavae lava e tasi - i talanoaga faʻavae. I le taimi muamua sa latou faaaogaina, ae na latou taofia. O le faʻatinoga na tipi ese e le manaʻomia.

/tiute

E iai sifi po a le matou matagaluega, ma e tusa ai, e iai le faasologa. O lo'o iai ile Google Sheets. E le faigofie i taimi uma le suʻeina o se fesoʻotaʻiga, tatala se siata, suʻe oe lava ... O se tasi o aʻu uo muamua na taʻalo foi ma lana Telegram bot ma faʻafeiloaʻi i le talatalanoaga a le matou matagaluega. fa'amatalaga e uiga i le amataga o le sifi tiute mo tagata faigaluega a le matagaluega. O lo'o fa'avasega e le bot le fa'atulagaga, fa'atulaga le tagata o lo'o tiute i le aso o lo'o iai nei ma, e tusa ai ma le fa'atonuga po'o luga ole talosaga, lipoti o lo'o tiute i aso nei. Na iu ina lelei ma faigofie. E moni, ou te leʻi fiafia tele i le faatulagaga o feʻau. E le gata i lea, mo tagata faigaluega o se isi matagaluega (mo se faʻataʻitaʻiga, BC "Fomaʻi"), faʻamatalaga e uiga ia i latou o loʻo tiute i isi itu e le manaʻomia tele, ae e tatau ona e iloa poʻo ai o loʻo tiute i le "Fomaʻi" pe a iai ni faʻafitauli. Na ou filifili e "nono" le galuega, ae suia le mea ou te le fiafia i ai. Na ou faia se faʻasologa o feʻau e faigofie mo aʻu ma isi, aveese faʻamatalaga le manaʻomia.

/tnls

Ina ua uma ona faʻataʻitaʻiina le masini e faʻaaoga ai le Telegram bot, e tele manatu eseese na faʻaalia, ae na ou manaʻo e fai mea e matua manaʻomia. Sa ou filifili e taitai fuainumera i talosaga. Ina ia maua galuega faatino a matou tagata faatau, ua matou faʻatinoina se mea e taʻua o le "jump server" poʻo le tuʻuina atu o le server. O fesoʻotaʻiga VPN e faʻatupuina i luga, ona tuʻuina atu lea o ports o talosaga, database ma isi faʻasalalauga fesoasoani i la matou fesoʻotaʻiga i le lotoifale e ala i le ssh, mo le faigofie ona maua galuega a matou tagata faigaluega, e aunoa ma ni faʻafitauli i fesoʻotaʻiga VPN. Pau lava le mea e tatau ona e faia o le setiina o se VPN fesoʻotaʻiga i la matou fesoʻotaʻiga kamupani.

O fuainumera o talosaga na faʻaalia ai e masani lava, pe a maeʻa se tasi o tunnels (i le tulaga o faʻafitauli fesoʻotaʻiga, ona o se taimi faʻagata, mo se faʻataʻitaʻiga), e faʻafesoʻotaʻi e tagata i matou e uiga i le toe faʻafoʻiina o avanoa i le poloketi. I le tele o tulaga, na o le toe amataina o le fesoʻotaʻiga ua lava ma lelei mea uma. Tatou fai oe lava ia. O le poloaiga lenei:
Matou te sefe taimi, neura ma tagata-itula

E te "pa'ū" i le mea e manaʻomia, filifili lau poloketi, faʻatali mo se minute ma fiafia tagata uma ma faamalieina ...

I le mauaina o se faʻatonuga, faʻatasi ai ma sina gaioiga o bytes ma bits, e faʻafesoʻotaʻi le bot i le faʻaumau o loʻo tuʻuina atu, ma iloa muamua le mea e tatau ona toe amataina, ma fai lana galuega - toe faʻaleleia le fesoʻotaʻiga i le poloketi. Na ou tusia faatonuga ina ia mafai ai ona e foia ia faafitauli e oe lava ia. Ma na fa'afeso'ota'ia i matou e tagata pe a le aoga le meafaigaluega na tu'uina atu...

/ecp_to_pem

O isi fa'amaumauga na fa'aalia ai e masani ona mana'omia le fa'aliliuina EDS Crypto Pro i le format pem(Faavae64) mo tuʻufaʻatasiga eseese, ma e tele naua a matou mea. Galuega: ave se atigipusa, kopi i se komepiuta Windows ma le P12FromGostCSP aoga faʻapipiʻi (totogi, i le ala), liliu i le pfx, ona liliu lea o le pfx e faʻaaoga ai le OpenSSL (faʻatasi ai ma le lagolago mo GOST encryption) i le pem. E le faigofie tele, ae e te manaʻo i ai i le maʻi o ou tamatamailima.

Google ua toe sau e laveai. Maua aoga a se tagata agalelei. Na ou faʻapotopotoina e pei ona tusia i le README - na aoga. Na ou aʻoaʻoina le bot e galue ma le aoga ma maua ai se suiga vave.
Matou te sefe taimi, neura ma tagata-itula

I le taimi o le faʻatinoga mulimuli, na tuʻuina atu se poloaiga e sui i se faʻailoga fou - gost-2012. I le mea ou te manatua, o le aoga i lena taimi na galue ma le GOST tuai (2001), masalo o se isi aoga tutusa mai se isi tagata agalelei, ou te le manatua lelei.
Ina ua maeʻa le suiga i le GOST fou, na aveesea le gaioiga o le bot mo mafuaaga saogalemu. Fa'atino i totonu o se pusa fa'atau.

Dockerfile, pe a manaʻomia e se tasi:

FROM ubuntu:16.04                                                                                                                                                                        
RUN apt update && apt -y install git sudo wget unzip gcc g++ make &&                        
   cd /srv/ && git clone https://github.com/kov-serg/get-cpcert.git &&                     
   cd get-cpcert && chmod +x *.sh && ./prepare.sh && ./build.sh &&                         
   mkdir -p /srv/{in,out} &&                                                               
   echo '#!/bin/bash' > /srv/getpem.sh &&                                                  
   echo 'cd /srv/get-cpcert' >> /srv/getpem.sh &&                                          
   echo './get-cpcert /srv/in/$CONT.000 $PASS > /srv/out/$CONT.pem' >> /srv/getpem.sh &&   
   chmod +x /srv/getpem.sh                                                                  ENTRYPOINT /srv/getpem.sh

Ina ia liliu, e tatau ona e tuʻuina le pusa muamua (faʻasinomaga e pei o le xxx.000) i le /srv/in directory, ma ave le pem ua maeʻa i /srv/out.

E liliu mai:

 docker run -t -i -e CONT='<имя директории с контейнером(без ".000")>' -e PASS='<пароль для контейнера>' -v /srv/in:/srv/in -v /srv/out:/srv/out --name ecptopem <адрес нашего репозитория>/med/ecptopem:latest 

/emstop ma /emstart

I se tasi aso, o se Oracle DBA sili ona manaia, ma le tele o le poto masani i le pulega ma le atinaʻe o le DBMS, na maua se galuega i la matou kamupani. Ma sa vave ona ia faʻalavelave faʻafesoʻotaʻi i le DBMS servers ma le ssh: na te le iloa poʻo fea pe faʻafefea ona faʻafesoʻotaʻi, e le o faʻamatalaina manino le avanoa, pe le mafai ona ia tuʻuina atu se mea na te manaʻomia ia te ia lava. Ia, matou te fiafia e fesoasoani, na matou taʻu atu ia te ia le auala e faʻafesoʻotaʻi ai, ma tuʻuina atu ia te ia Enterprise Manager. Ae e leʻi manuia lava mea i le ssh. Na faʻamatalaina faigofie e se tasi o aʻu uo: o se DBA mama :) Na matou filifili afai matou te manaʻomia le faʻaogaina o se mea i luga o le 'auʻaunaga, matou te faia i matou lava.

O nisi taimi e paʻu ai le EM i lalo o le avega mamafa, ma toe amata ... e tatau ona e faʻafesoʻotaʻi e ala i le ssh ma toe amata i le laina. “E lelei le pulega i lenei mea,” o le faaiuga lea a le matou uo fou. O uta mamafa i luga o le DBMS e le masani ai mo i matou, ma o talosaga e toe amata le EM e masani foi. Ona tutusa lea o le tulaga: le mautonu, ita ma saili mo se fofo i le faafitauli. O lea la i le vaega lava e tasi o talatalanoaga na faʻaalia ai tulafono nei: /emstop ma /emstart.

Matou te sefe taimi, neura ma tagata-itula

/fasioti

Afai o loʻo i ai se tauvaga malosi i luga o faʻamaumauga, ma o nisi taimi e tupu ai, e tatau ona vave faʻamalo le faʻamaumauga. O le auala sili ona vave o le tapeina lea o le faʻafitauli faʻafitauli ... Ina ia faia lenei mea, faʻafesoʻotaʻi e ala i le ssh, fasioti -9 ... O le a fesoasoani le bot!

Matou te sefe taimi, neura ma tagata-itula

Na talisapaia e Alexey le 'au ma tuuina atu i ai se igoa alofa - "Kilyalka" po o se fana.
I se tasi aso, ina ua uma ona ou matamata i le auala na taumafai ai Alexey ma mafatia, ulufale / fasioti xxx i taimi uma mo faiga taitasi, sa ou filifili e faaopoopo le "multi-barrel" i la matou fana:

Matou te sefe taimi, neura ma tagata-itula

E sili atu lena! O mea uma e mo oe Alexey, naʻo le galue, pele!

E masani lava, o se au taua faapena sa faatapulaaina avanoa e le user_id - “faavalea”. I le vaʻaia pe faʻafefea e Lesha ona faʻaumatia faʻagasologa i luga o le 'auʻaunaga faʻamaumauga, e toʻatele tagata na taumafai e ulufale i se faʻatonuga ma se numera faʻafuaseʻi, ae e le mafai ona e faʻasesēina laʻu bot atamai, na vave ona ia teena.

/alertlog

Ia, i le tulaga, na ou faia le poloaiga:
/alertlog <numera o laina> - maua le numera faʻamaonia o laina alertlog
O le bot e tosoina se alertlog ma auina atu i la matou auaunaga, pei o le pastebin, e taʻua o le pyste, ma auina atu se sootaga i le faapipii i le talosaga talatalanoaga.

/siaki

Na sosoo ai ma se talosaga mo mataituina le faatinoga moni o la tatou talosaga. E o'o mai i le taimi nei, na aoina e le lagolago fa'atekinisi fa'atino nei fa'amaumauga ma le lima. Leai se mea o iai! O a matou tagata su'esu'e toto'a ua fausia ni fa'ata'ita'iga mo lenei mea. Ole su'ega ole su'ega e le faigofie tele ona faitau; ole tagata fa'aoga le poto masani o le a umi se taimi e malamalama ai ma e le mautinoa o le a ia fa'ailoaina fa'amatalaga talafeagai. Ma matou te le fiafia e fai ma o matou lima mea e le mafai ona matou faia i o matou lima ... O se galuega fou mo le bot!

Matou te sefe taimi, neura ma tagata-itula

O le /checks command e faʻaalia ai se lisi faigofie ma le manino; o le taimi lea na aʻoaʻoina ai e a matou tama le faʻaogaina o lenei poloaiga e aunoa ma ni faʻatonuga!

A e filifilia le mea e manaʻomia, nai lo se lisi, o se faʻamatalaga e uiga i le amataga o le suʻega e aliali mai, ina ia le faʻaaogaina e tagata le onosaʻi le matou suʻega 100500 taimi:

Matou te sefe taimi, neura ma tagata-itula

Faʻalagolago i le lisi o mea filifilia, o se suʻega faʻapitoa e faʻalauiloa mai la matou fesoʻotaʻiga, e pei o le masini o loʻo nofo ai le bot (ua muaʻi faʻapipiʻi le jmeter iina, o suʻega talafeagai o loʻo i ai ...) pe tuusaʻo mai le nofoaga autu o faʻamatalaga (mai se masini saunia i tafatafa o le talosaga), ina ia le aofia ai fesoʻotaʻiga fesoʻotaʻiga pe a faʻatuai le suʻega, pe faʻaititia i latou i se mea maualalo.

A maeʻa le suʻega ma maua le ogalaau, e faʻasalalau e le bot ma maua ai le iʻuga i se "tagata-faitau" fomu:

Matou te sefe taimi, neura ma tagata-itula

Fuafuaga aoina

Ua taunu'u mai le fa'atinoga ma ua maua e le au fa'atonu o lo'o fiafia i ai se galuega fa'apea mo latou itulagi. Ma na fai mai se tasi Pule Poloketi agaalofa: "Ou te manaʻo e maua ni fuainumera taimi!" Na taʻu atu e se tasi mai le CIT ia te ia o le a faigofie le mataʻituina o nei mea uma i Zabbix. Zabbix, o lea Zabbix...

Na ou manatu e tatau ona ou saunia mo le manaʻoga e toe fai le fofo... Na ou tuʻuina le manatu i totonu o se pusa faʻatau. I totonu o le atigipusa, o loʻo faʻalauiloaina le jmeter i luga o se faʻatulagaga (tasi i le 10 minute), tuʻu le ogalaau i se nofoaga patino, php parses ma faʻaalia faʻamatalaga talafeagai i foliga o se itulau web. Zabbix, faʻaaoga le web.page.get ki, mauaina lenei itulau, e masani ona filifilia faʻamatalaga talafeagai mo nisi elemene faʻalagolago ma fausia se kalafi.

Matou te sefe taimi, neura ma tagata-itula

Ou te manatu na iu ina le leaga. E ala i le matauina o le kalafi, matou, muamua, vaʻai i le saoasaoa faʻatatau o le talosaga, ma afai e iloa ai tumutumu i luga o le kalafi, matou te iloa le mea o loʻo i ai le "plug". E faigofie. E oʻo mai i le taimi nei, ua manaʻomia mo naʻo le tasi le itulagi, ae ua ou sauni e toe fai mo i latou e fiafia i ai.

Fausiaina o talosaga

O fa'amaumauga i galuega fa'apenei ua fa'atupuina talu ai nei le tele o manatu mo le fa'afaigofieina ma le fa'afaigofieina o galuega. I luga o nisi o poloketi, i luga o faʻaumau talosaga, e manaʻomia le faʻapipiʻiina o pusa autu Crypto Pro, e tele naua, ma o le saini numera e muta i le taimi. O nisi taimi e 2 galuega e taunuu i le aso. Ae na ou manatu e le saogalemu le faʻaaogaina o se bot mo nei faʻamoemoega ma filifili ai o le a ou faia saʻo le gaioiga i totonu o le talosaga. E masani lava i le faatagaga ma le siakiina o aia tatau. Afai e iai sau fa'amanuiaga talafeagai, o le a maua se mea fa'aopoopo lisi mo le galue i saini numera, fa'apipi'i, tapeina, va'ai fa'amatalaga, ma isi. O lo'o fa'atupuina nei galuega. E pei ona aliali mai, e le faigata tele lenei mea, e tatau lava ona e faitau i faʻatonuga o loʻo i ai nei, vaʻai i faʻataʻitaʻiga code, fesili i au uo sili atu le poto masani i le atinaʻe, ona fai lea. I le faagasologa o suʻesuʻega, na aliaʻe manatu e faʻaopoopo i le talosaga. O le a ou le faia ni fuafuaga a Napoleone - o loʻo i ai le atinaʻe, ia mafaufau tagata uma ia latou lava pisinisi. Ae e ui ina manaia, o loʻo ou faia lava e aʻu.

Fuafuaga

E pei ona ou fai atu, e tele manatu eseese na fananau mai mo le faʻaaogaina o la tatou bot ma e le gata - i se tulaga lautele, seʻi tatou fai atu, manatu mo "mataʻitusi", o le tele o latou na galo, talu ai e leʻi maua se taimi e tusi ai i lalo. O lea ua ou taumafai e tusi i lalo mea uma e oo mai i lou mafaufau, ma ou te fautua atu ia faia foʻi faapea e isi.

Ae e le galo Alexey e tuʻuina atu ona manaʻoga. Mai tala fou:
/kill_sql SQL_ID - tape uma sauniga i lenei talosaga SQL_ID
/kill_block - tape le sauniga poloka poloka
/show_em - fa'aali se ata o fa'atinoga EM
O ia o se tagata fa'a'ole'ole, e mana'o e suisui le DBA mai lana telefoni =)

O le ala lea tatou te galulue ai mo le manuia o le Atunuu!

E fa'afefea ona e fa'ate'a'ese mai galuega masani ma galuega le fiafia?

Ou te faʻamoemoe o le faitauga na foliga mai e manaia, ma atonu e aoga foi i se tasi, ma e leʻi i ai soʻu taimi e faʻanoanoa ai le tagata faitau ... Manuia ia i tatou uma.

puna: www.habr.com

Faaopoopo i ai se faamatalaga