DevOps untuk pengoperasian dan pengembangan - kursus RUB 124.000. dari Yandex Workshop, pelatihan 6 bulan (8 jam per minggu), Tanggal: 6 Desember 2023.
Miscellanea / / November 30, 2023
Saat ini bekerja dengan ETL, menyelesaikan pemantauan sistem BI, mengembangkan dengan Python, dan semua ini di cloud Azure. Membangun CI/CD untuk sistem BI, menulis autotest UI di Selenium. Di LANIT (hingga 2018) dia menciptakan...
Saat ini bekerja dengan ETL, menyelesaikan pemantauan sistem BI, mengembangkan dengan Python, dan semua ini di cloud Azure. Membangun CI/CD untuk sistem BI, menulis autotest UI di Selenium. Di LANIT (hingga 2018) ia membuat “Frankenstein” miliknya sendiri dari Jenkins, Ansible, VMware, Telegram bot, Jira, bash- dan Skrip Python untuk ChatOps lengkap, di mana semua pembaruan pada server dan tiket dilakukan melalui bot telegram untuk https://gis-tek.ru. Juga membantu Kubernetes mengatur halaman https://мдм.моидокументы.рф. Di NIIAS (hingga 2016) ia menulis skrip mega-bash untuk memperbarui server pengiriman Kereta Api Rusia sehingga kereta Anda dapat tiba tepat waktu.
1) Sistem kontrol versi dan otomatisasi pembuatan aplikasi 15 jam
Anda mendapati diri Anda bekerja di sebuah startup, bertemu dengan tim, dan bertanya-tanya bagaimana mungkin bekerja seperti ini. Ingin menyelesaikan masalah dengan cepat, Anda mulai memahami cara kerja pengembangan perangkat lunak saat ini dan mengambil langkah pertama untuk mempercepat produksi.
- Bagaimana cara kerja siklus hidup perangkat lunak?
- Sistem kontrol versi. Mengapa semua orang memilih Git?
• Mengatur kerja tim menggunakan Feature Branch Workflow.
• Mengatur penyimpanan repositori Git di Gitea. - Bersandar:
• Muda (Rugi).
• Nilai dan aliran nilai. - Bersandar:
• Alat otomatisasi untuk tugas yang berulang.
• Kerangka kerja untuk mengotomatisasi perakitan proyek.
2) Metodologi yang Fleksibel dan Integrasi Berkelanjutan 15 jam
Startup Anda dibeli oleh raksasa IT Krupnaya Kompaniya (KK). Pimpinan tim Anda menjadi panduan Anda dalam mempelajari DevOps. Namun masalah dengan aplikasi Anda tidak kunjung hilang. Anda mengetahui bahwa aplikasi berkinerja buruk di lingkungan produksi, dan permintaan baru untuk memperbaiki kerusakan terus-menerus masuk ke dalam pengembangan. Karena itu, pekerjaan menumpuk, dan seseorang bahkan tidak dapat bermimpi untuk merilis fungsionalitas dan stabilitas baru.
- Masalah DevOps:
• Sumur fungsional.
• Spiral ke bawah. - Metodologi tangkas dan budaya DevOps:
• Interaksi tim.
• Pendekatan modern. Apa yang menyebabkan munculnya Agile?
• Tiga cara DevOps: siklus penyampaian nilai, putaran umpan balik, eksperimen, dan pembelajaran. - Integrasi Berkelanjutan:
• Organisasi penyimpanan kode.
• Organisasi perakitan.
• Organisasi pengujian.
• Dapatkan umpan balik dengan cepat. - Server Integrasi Berkelanjutan:
• Ikhtisar antarmuka dan fungsionalitas GitLab CI. - Pengukuran kualitas dan pengujian keamanan kode statis:
• Alat analisis kualitas kode statis: SonarQube, GitLab Analyzer.
• Alat analisis keamanan kode statis: SonarQube SAST, GitLab SAST.
3) Jaringan dan dasar-dasar bekerja di server Linux 15 jam
Anda bertemu dengan administrator sistem KK, yang memberi tahu Anda bagaimana jaringan disusun dan bagaimana segala sesuatunya bekerja untuknya. Selama demonstrasi, Anda melihat bahwa admin lebih cepat mengontrol perintah dan gerakan kursor di konsol, dan memintanya untuk memberi tahu Anda tentang teknik ini. Administrator mengundang Anda untuk memahami contoh tugas mentransfer layanan dari server lama ke server baru - sekaligus menyelesaikan masalah yang membara.
- Dasar-dasar bekerja di server Linux, bekerja dengan baris perintah.
- Subsistem disk Linux.
- Hak pengguna Linux.
- Dasar-Dasar Jaringan: Masalah saat menyambung ke server jarak jauh.
- Virtualisasi:
• Hypervisor populer.
• Mesin virtual.
• Jaringan virtual.
4) Pengiriman Berkelanjutan dan Penerapan Berkelanjutan 20 jam
Setelah menerima pembaruan aplikasi lagi di ponsel cerdas Anda dalam seminggu, Anda menjadi tertarik dengan seberapa sering pembaruan diterima oleh pengguna. Ternyata tidak sering sama sekali. Apakah perlu lebih sering?
- Bagaimana cara kerja proses pengiriman produk TI:
• Bagaimana proses pengirimannya.
• Manajemen Arus Nilai. - Sistem penyimpanan artefak: Nexus.
- Pengiriman Berkelanjutan:
• Visualisasi tahapan penyampaian.
• Organisasi proses pengiriman. Jalur Pengiriman. Penerapan Berkelanjutan. - Metodologi Aplikasi Dua Belas Faktor.
5) Infrastruktur sebagai Kode dan sistem manajemen konfigurasi 20 jam
Ini adalah pertama kalinya Anda menghadapi masalah infrastruktur. Seseorang mengubah konfigurasi server pengembang tempat mereka menjalankan eksperimen, dan sekarang server tersebut mengalami kegagalan fungsi sehingga tidak dapat digunakan lagi.
- Cadangan:
• Organisasi cadangan.
• Jenis cadangan.
• Rotasi cadangan. - Infrastruktur sebagai Kode: kami menggambarkan infrastruktur dengan kode, mengadopsi pengalaman pembangunan.
- Sistem manajemen konfigurasi:
• Memungkinkan (peran, tugas, inventaris, brankas, awx).
• Keakraban dengan sistem lain: Chef, Salt, Puppet.
6) DBOps: database relasional dan non-relasional 15 jam
Anda bertemu dengan DBA. Anda menerima komentar yang mengancam dari pengguna bahwa situs tersebut lambat. Secara empiris, Anda menemukan bahwa pembaruan terkini telah memperlambat database secara signifikan.
- Dasar-dasar teori basis data:
• Basis data relasional: PostgreSQL.
• Kueri SQL dasar.
• Cara mempercepat eksekusi query dalam database: optimasi, caching, pertumbuhan kapasitas, pengindeksan. - Organisasi database ketersediaan tinggi:
• Prinsip-prinsip DBOps.
• Migrasi database menggunakan Flyway. - Basis data non-relasional: MongoDB.
7) Kontainerisasi Docker dan penyimpanan data 20 jam
Anda akan menemukan diri Anda berada di antara dua kebakaran: di satu sisi, ada pengembang yang semuanya berfungsi secara lokal, tetapi untuk beberapa di antaranya, mungkin tidak; di sisi lain, ada departemen operasi, yang tidak berfungsi sama sekali. Kami mencari cara untuk memastikan bahwa semuanya sama baiknya untuk semua orang, dan akhirnya meluncurkan aplikasi dalam produksi.
- Kontainerisasi:
• Ikhtisar container Linux dan Docker.
• Perangkat Docker: lapisan, image, container, file Docker, Registry.
• Alternatif Docker (containerd, Podman, LXC, CRI-O). - Penyimpanan data: bekerja dengan S3, MinIO vs Ceph.
- Menyimpan dan mengirimkan data sensitif: gambaran umum Vault yang bagus.
8) Layanan mikro, penyeimbangan dan caching 15 jam
Anda sedang bersiap untuk merilis versi baru aplikasi dan ingin mempertimbangkan kesalahan masa lalu, ketika layanan Anda tidak dapat menangani lalu lintas dan terhenti selama tiga hari. Kali ini sebuah bisnis mendatangi Anda dan meminta agar hal ini tidak terjadi! Anda akan begitu tenggelam dalam prosesnya sehingga Anda akan memperkenalkan fitur-fitur baru yang keren dan strategi penyampaiannya.
- Menyeimbangkan dan menyimpan cache.
- Layanan mikro:
• Pendekatan pengorganisasian arsitektur aplikasi.
• Alat untuk mengelola aplikasi layanan mikro: Docker Compose. - Strategi penyampaian dan pemilihan yang tepat:
• Jenis pengguna apa saja yang ada?
• Penyebaran biru-hijau.
• Penyebaran kenari.
9) Kubernet. Penerapan dan memastikan keandalan aplikasi 50 jam
Anda membuat platform layanan untuk memastikan pengoperasian berkualitas tinggi di seluruh siklus pengiriman.
- Orkestrasi kontainer:
• Menjalankan aplikasi pada infrastruktur modern.
• Mengapa sistem orkestrasi diperlukan, dan seperti apa sistem itu.
• Kubernetes: alasan dan tujuan pembangunan. - Meluncurkan cluster Kubernetes untuk pengujian dan pengembangan:
• Cara mendapatkan Kubernetes: penjelasan tentang 5 metode instalasi utama.
• Mengurai perintah kubectl sederhana.
• Bekerja dengan utilitas kubectl. - Arsitektur Kubernet:
• Komponen utama dan interaksinya: penjadwal, kubelet, kube-proxy, manajer pengontrol, dll, dan server api. - Entitas inti Kubernetes:
• Node, Podes, Layanan, Volume Persisten, Klaim Volume Persisten.
• Kubernetes bermanifestasi.
• Menggunakan kubectl pada tingkat koneksi cluster.
• Melihat konfigurasi Node, Pod, Rahasia, dll. - Entitas Kubernetes tingkat lanjut:
• ReplicaSet, Deployment, DaemonSet dan StatefulSet.
• Keaktifan, Kesiapan probe + Init container.
• Tambahan tentang kubectl: edit, terapkan, hapus, buat.
• Komunikasi jaringan dalam sebuah cluster. - Pekerjaan tingkat lanjut dengan utilitas kubectl:
• Perintah kubectl tambahan, flag, representasi entitas Kubernetes sebagai file YAML atau JSON/YAML.
• Menyebarkan aplikasi dengan dua cara: menggunakan perintah dan melalui file YAML. - Men-deploy aplikasi ke Kubernetes:
• Penerapan frontend aplikasi.
• Penerapan dan penerapan ulang melalui ArgoCD. - Strategi penerapan:
• Koneksi antara Kubernetes dan Aplikasi Dua Belas Faktor.
• Strategi penerapan di Kubernetes.
• Bagaimana mekanisme rollback diterapkan di Kubernetes. - Praktik GitOps untuk bekerja dengan infrastruktur.
- Menulis bagan Helm untuk penerapan aplikasi.
- Menyiapkan ArgoCD.
- Menggunakan mesin templat.
10) Kesalahan pencatatan dan pemantauan 15 jam
Platform layanan Anda tiba-tiba berhenti berfungsi.
- Pencatatan dan pemantauan kesalahan:
• Log Linux.
• Loki.
• Penjaga - Pemantauan:
• Jenis metrik, anomali tipikal.
• Peringatan.
• Tumpukan GAP (Grafana, Prometheus, Alertmanager).
• Sinyal Emas.
• Metrik tingkat aplikasi. - Sistem AWS dan penelusuran terdistribusi.
- TENANG.
- Pencatatan dan pemantauan kesalahan:
D
pemimpi-fkn
23.03.2022 G.
Pelayanan yang baik dan kursus DevOps yang bagus untuk pengoperasian dan pengembangan
Keuntungan: platform yang nyaman, tim yang bagus, material yang bagus. Kekurangan: bahan mentah Menyelesaikan setengah kursus DevOps untuk operasi dan pengembangan. Masuk ke set kedua. Dalam hal ini, materi teoritisnya lembap dan terdapat ketidakakuratan. Namun berkat penyelenggara, masalah dapat diselesaikan dengan cepat. Kekurangannya dihilangkan. Tim kurator dan mentor yang sangat ramah. Untuk setengah...