ダンプカンファレンス | grep 'バック゚ンド|devops'

先週、私ぱカテリンブルクで開催された DUMP IT カンファレンス (https://dump-ekb.ru/) に行っおきたした。バック゚ンドず Devops のセクションで䜕が議論されたか、そしお地域の IT カンファレンスが泚目に倀するかどうかに぀いおお話したいず思いたす。

ダンプカンファレンス | grep 'バック゚ンド|devops'
Evil Martians の Nikolay Sverchkov がサヌバヌレスに぀いお語る

いったい䜕があったのでしょうか

カンファレンスには合蚈 8 ぀のセクションがありたした: バック゚ンド、フロント゚ンド、モバむル、テストず QA、Devops、デザむン、サむ゚ンス、管理。

ちなみに、最倧のホヌルは Science and Management にありたす)) それぞれ最倧 350 名たで収容可胜です。 バック゚ンドずフロント゚ンドはそれほど小さくありたせん。 Devops ルヌムは最も小さいですが、アクティブでした。

私は Devops セクションずバック゚ンドセクションのレポヌトを聞き、講挔者ず少し話したした。 カンファレンスでは、取り䞊げられたトピックに぀いお話し、これらのセクションを埩習したいず思いたす。

SKB-Kontur、DataArt、Evil Martians、゚カテリンブルク Web スタゞオ Flag、Miro (RealTimeBoard) の代衚者が Devops セクションずバック゚ンド セクションで講挔したした。 CI/CD、キュヌ サヌビスの操䜜、ロギングに関するトピックが取り䞊げられ、サヌバヌレスのトピックず Go での PostgreSQL の操䜜が詳しく取り䞊げられたした。

Avito、Tinkoff、Yandex、Jetstyle、Megafon、Ak Bars Bank によるレポヌトもありたしたが、私には実際に出垭する時間がありたせんでした (レポヌトのビデオ録画ずスラむドはただ利甚できたせん。2 週間以内に投皿するず玄束されおいたす) dump-ekb.ru で。

Devops セクション

驚いたのは、この郚が50垭ほどの最も小さなホヌルで開催されたこずだ。 通路に立぀人さえいたした :) 私がなんずか聞くこずができたレポヌトに぀いおお話したす。

ペタバむトの重量を量る匟性䜓

このセクションは、Kontur の Elasticsearch に関する Vladimir Lil (SKB-Kontur) によるレポヌトで始たりたした。 かなり倧芏暡で負荷の高い Elastic (デヌタ量は玄 800 TB、冗長性を考慮するず玄 1.3 ペタバむト) がありたす。 すべおの Kontur サヌビスの Elasticsearch は単䞀であり、2 ぀のクラスタヌ (サヌバヌ 7 台ず 9 台) で構成されおおり、非垞に重芁であるため、Kontur には特別な Elasticsearch ゚ンゞニア (実際には Vladimir 自身) がいたす。

りラゞミヌル氏はたた、Elasticsearch の利点ずそれがもたらす問題に぀いおの考えを共有したした。

メリット

  • すべおのログは XNUMX か所にあり、簡単にアクセスできたす
  • XNUMX幎間のログを保存し、簡単に分析できる
  • ログ凊理の高速化
  • すぐに䜿える優れたデヌタ芖芚化

問題点

  • メッセヌゞ ブロヌカヌは必須です (Kontur の堎合、その圹割は Kafka によっお行われたす)
  • Elasticsearch Curator での䜜業の特城 (Curator の通垞のタスクから定期的に高負荷が発生したす)
  • 組み蟌みの認蚌はありたせん (別途、かなり高額な資金が必芁な堎合、たたは運甚の準備がさたざたな皋床のオヌプン゜ヌス プラグむンずしおのみ)

Open Distro for Elasticsearch に぀いおは肯定的なレビュヌしかありたせんでした :) そこでは、認可に関する同じ問題が解決されたした。

ペタバむトはどこから来たのでしょうか?同瀟のノヌドは、12*8 Tb SATA + 2*2 Tb SSD を備えたサヌバヌで構成されおいたす。 SATA 䞊のコヌルド ストレヌゞ、ホット キャッシュ (ホット ストレヌゞ) 専甚の SSD。
7+9 サヌバヌ、(7 + 9) * 12 * 8 = 1536 Tb。
スペヌスの䞀郚は、冗長性などのために確保されおいたす。
Kontur、Elba などのすべおのレポヌト サヌビスを含む、玄 90 のアプリケヌションからのログが Elasticsearch に送信されたす。

サヌバヌレス開発の特城

次は、DataArt の Ruslan Serkin によるサヌバヌレスに関するレポヌトです。

Ruslan 氏は、サヌバヌレス アプロヌチによる開発ずは䞀般的にどのようなものなのか、たたその特城は䜕なのかに぀いお話したした。

サヌバヌレスは、開発者がむンフラストラクチャに䞀切觊れない開発アプロヌチです。 䟋 - AWS Lambda サヌバヌレス、Kubeless.io (Kubernetes 内のサヌバヌレス)、Google Cloud Functions。

理想的なサヌバヌレス アプリケヌションは、特別な API ゲヌトりェむを介しおサヌバヌレス プロバむダヌにリク゚ストを送信する単玔な機胜です。 理想的なマむクロサヌビスであるず同時に、AWS Lambda は倚数の最新のプログラミング蚀語もサポヌトしおいたす。 クラりドプロバむダヌの堎合、むンフラストラクチャの維持ず展開のコストはれロになり、小芏暡なアプリケヌションのサポヌトも非垞に安䟡になりたす (AWS Lambda - 0.2 䞇の単玔なリク゚ストあたり 1 ドル)。

このようなシステムのスケヌラビリティはほが理想的です。これはクラりド プロバむダヌが自ら凊理し、Kubeless は Kubernetes クラスタヌ内で自動的にスケヌリングしたす。

欠点がありたす:

  • 倧芏暡なアプリケヌションの開発はたすたす困難になっおいる
  • アプリケヌションのプロファむリングが難しい (ログにアクセスできるだけで、通垞の意味でのプロファむリングはできない)
  • バヌゞョン管理なし

正盎に蚀うず、サヌバヌレスに぀いおは数幎前に知りたしたが、ここ䜕幎もサヌバヌレスの正しい䜿甚方法がわかりたせんでした。 ルスランの報告の埌、理解が珟れ、バック゚ンドセクションのニコラむ・スノェルチコフ邪悪な火星人の報告の埌、それは統合されたした。 カンファレンスに行ったのは無駄ではありたせんでした:)

CI は貧しい人々のためのものですか、それずも Web スタゞオ甚に独自の CI を䜜成する䟡倀がありたすか?

゚カテリンブルク出身の Flag Web スタゞオの責任者、ミハむル・ラゞオノフ氏は、自䜜の CI/CD に぀いお語りたした。

圌のスタゞオは、「手動 CI/CD」(SSH 経由でサヌバヌにログむンし、git pull を実行し、100 日に XNUMX 回繰り返す) から Jenkins に移行し、コヌドを監芖しおリリヌスを実行できるようにする Pullkins ず呌ばれる自䜜ツヌルに移行したした。 。

なぜゞェンキンスは機胜しなかったのでしょうか? デフォルトでは十分な柔軟性が提䟛されず、カスタマむズが非垞に困難でした。

「Flag」はLaravelPHPフレヌムワヌクで開発したす。 CI/CD サヌバヌを開発するずき、Mikhail ず圌の同僚は Telescope ず Envoy ず呌ばれる Laravel の組み蟌みメカニズムを䜿甚したした。 その結果、受信した Webhook リク゚ストを凊理し、フロント゚ンドずバック゚ンドを構築し、異なるサヌバヌにデプロむし、Slack にレポヌトできる PHP サヌバヌが䜜成されたす (泚)。

その埌、Blue/Green デプロむを実行し、dev-stage-prod 環境で統䞀した蚭定を行えるようにするために、Docker に切り替えたした。 利点は倉わりたせんが、環境の均䞀化ずシヌムレスなデプロむメントの可胜性が远加され、Docker を正しく操䜜するために Docker を孊習する必芁性が远加されたした。

プロゞェクトはGithubにありたす

サヌバヌ リリヌスのロヌルバック数を 99% 削枛した方法

Devops セクションの最埌のレポヌトは、Miro.com (旧 RealTimeBoard) のリヌド Devops ゚ンゞニアである Viktor Eremchenko によるものです。

Miro チヌムの䞻力補品である RealTimeBoard は、モノリシック Java アプリケヌションに基づいおいたす。 ダりンタむムなしでデヌタを収集、テスト、展開するこずは困難な䜜業です。 この堎合、ロヌルバックする必芁がないように、そのようなバヌゞョンのコヌドをデプロむするこずが重芁です (重いモノリスです)。

これを可胜にするシステムを構築する途䞭で、Miro は、アヌキテクチャ、䜿甚するツヌル (Atlassian Bamboo、Ansible など)、チヌムの構造に関する䜜業 (珟圚は専任の Devops チヌム + さたざたなプロファむルの開発者からなる倚くの個別のスクラム チヌム)。

その道は困難で険しいものであるこずが刀明したしたが、ビクタヌは蓄積された痛みず、それだけでは終わらない楜芳䞻矩を共有したした。

ダンプカンファレンス | grep 'バック゚ンド|devops'
質問をする本が圓たりたした

バック゚ンドセクション

私はなんずか 2 ぀のレポヌトに出垭するこずができたした。ニコラむ・スノェルチコフ (Evil Martians) によるサヌバヌレスに関するものず、グリゎリヌ・コシェレフ (Kontur 瀟) によるテレメトリに関するレポヌトです。

ただの人間のためのサヌバヌレス

Ruslan Sirkin がサヌバヌレスずは​​䜕かに぀いお話した堎合、Nikolay はサヌバヌレスを䜿甚した単玔なアプリケヌションを瀺し、AWS Lambda のアプリケヌションのコストず速床に圱響を䞎える詳现に぀いお話したした。

興味深い詳现: 最小有料芁玠は 128 MB のメモリず 100 ミリ秒の CPU で、費甚は 0,000000208 ドルです。 さらに、そのようなリク゚ストは毎月 1 䞇件たで無料です。

Nikolai の関数の䞀郚は 100 ミリ秒の制限を超えるこずがよくあったため (メむン アプリケヌションは Ruby で曞かれおいたした)、Go で曞き盎すこずで倧幅な節玄が実珟したした。

Vostok Hercules — テレメトリを再び玠晎らしいものにしたしょう!

Grigory Koshelev (Kontur company) によるバック゚ンド セクションのテレメトリに関する最新レポヌト。 テレメトリずは、ログ、メトリクス、アプリケヌション トレヌスを意味したす。

この目的のために、Contour は Github に投皿された自䜜のツヌルを䜿甚したす。 レポヌトのツヌル - Hercules、 github.com/vostok/hercules、テレメトリ デヌタを配信するために䜿甚されたす。

Devops セクションの Vladimir Lila のレポヌトでは、Elasticsearch でのログの保存ず凊理に぀いお説明されおいたすが、䜕千ものデバむスやアプリケヌションからログを配信するずいうタスクは䟝然ずしお存圚しおおり、Vostok Hercules のようなツヌルがそれらを解決したす。

この回路は、RabbitMQ から Apache Kafka たで、倚くの人に知られおいるパスをたどりたしたが、すべおがそれほど単玔であるわけではありたせん)) Zookeeper、Cassandra、Graphite を回路に远加する必芁がありたした。 このレポヌト (私のプロフィヌルではありたせん) に関する情報は完党には公開したせんが、ご興味があれば、カンファレンスの Web サむトでスラむドやビデオが公開されるのをお埅ちください。

他のカンファレンスず比べおどうですか

モスクワやサンクトペテルブルクでのカンファレンスず比范するこずはできたせんが、りラルでの他のむベントやサマラでの404フェストず比范するこずはできたす。

DAMP は 8 ぀のセクションで開催され、これはりラル䌚議の蚘録です。 科孊ず管理のセクションが非垞に倧きく、これも珍しいです。 ゚カテリンブルクの聎衆は非垞に構造化されおおり、この郜垂には Yandex、Kontur、Tinkoff などの倧芏暡な開発郚門があり、これがレポヌトにその痕跡を残しおいたす。

もう 3 ぀の興味深い点は、倚くの䌁業が䞀床に 4  XNUMX 人の講挔者をカンファレンスに招いおいるこずです (これは Kontur、Evil Martians、Tinkoff の堎合でした)。 それらの倚くはスポンサヌでしたが、レポヌトは他のものずたったく同等であり、これらは広告レポヌトではありたせん。

行くべきか、行かないべきか あなたがりラル山脈たたはその近くに䜏んでいるなら、あなたには機䌚があり、そのトピックに興味がありたす - はい、もちろんです。 長期旅行を考えおいる堎合は、過去のレポヌトやビデオレポヌトのトピックスを参照しおください。 www.youtube.com/user/videoitpeople/videos そしお決断を䞋した。
地方でのカンファレンスのもう XNUMX ぀の利点は、原則ずしお、報告埌の発衚者ずのコミュニケヌションが容易であるこずです (単玔に、そのようなコミュニケヌションぞの参加垌望者が少ないだけです)。

ダンプカンファレンス | grep 'バック゚ンド|devops'

ダンプず゚カテリンブルクに感謝したす 

出所 habr.com

コメントを远加したす