reklama - zainteresowany?

Python dla DevOps. Naucz się bezlitośnie skutecznej automatyzacji - Helion


ebook
Autor: Noah Gift, Kennedy Behrman, Alfredo Deza, Grig Gheorghiu
Tytuł oryginału: Python for DevOps: Learn Ruthlessly Effective Automation
Tłumaczenie: Radosław Meryk
ISBN: 978-83-283-6831-6
stron: 464, Format: ebook
Data wydania: 2020-11-24
Księgarnia: Helion

Cena książki: 44,50 zł (poprzednio: 89,00 zł)
Oszczędzasz: 50% (-44,50 zł)

Dodaj do koszyka

Tagi: Docker | Linux | Programowanie w chmurze | Python - Programowanie | Uczenie maszynowe

Ostatnia dekada zmieniła oblicze IT. Kluczowego znaczenia nabrały big data, a chmura i automatyzacja rozpowszechniły się wszędzie tam, gdzie mowa o efektywności. Inżynierowie muszą wykorzystywać zalety systemów linuksowych w codziennej praktyce, aby zapewnić należyty poziom automatyzacji swoich zadań. Do tych celów świetnie nadaje się Python. Język ten zdobywa coraz większe uznanie z uwagi na jego wszechstronność, jak również wydajność, przenaszalność i bezpieczeństwo kodu. Warto więc wykorzystywać Pythona do administrowania systemami Linux wraz z takimi narzędziami DevOps jak Docker, Kubernetes i Terraform.

Dzięki tej książce dowiesz się, jak sobie z tym poradzić. Znalazło się w niej krótkie wprowadzenie do Pythona oraz do automatyzacji przetwarzania tekstu i obsługi systemu plików, a także do pisania własnych narzędzi wiersza poleceń. Zaprezentowano również przydatne narzędzia linuksowe, systemy zarządzania pakietami oraz systemy budowania, monitorowania i automatycznego testowania kodu. Zagadnienia te szczególnie zainteresują specjalistów DevOps. Ponadto zawarto tu podstawowe informacje o chmurze obliczeniowej, usługach IaC i systemach Kubernetes. Omówiono zasady uczenia maszynowego i inżynierii danych z perspektywy DevOps. Przedstawiono także kompletny przewodnik po procesach budowania, wdrażania oraz operacyjnego wykorzystywania modelu uczenia maszynowego z użyciem systemów Flask, sklearn, Docker i Kubernetes.

W tej książce:

  • wprowadzenie do Pythona
  • automatyczne przetwarzanie tekstu oraz automatyzacja operacji na plikach
  • automatyzacja za pomocą sprawdzonych narzędzi linuksowych
  • chmura, infrastruktura jako kod, Kubernetes i tryb bezserwerowy
  • uczenie maszynowe i inżynieria danych z perspektywy DevOps
  • tworzenie i operacjonalizacja projektu uczenia maszynowego

Python: tutaj ważna jest prawdziwa nowoczesność oprogramowania!

Dodaj do koszyka

 

Osoby które kupowały "Python dla DevOps. Naucz się bezlitośnie skutecznej automatyzacji", wybierały także:

  • Flask. Tworzenie aplikacji internetowych w Pythonie. Wydanie II

Dodaj do koszyka

Spis treści

Python dla DevOps. Naucz się bezlitośnie skutecznej automatyzacji eBook -- spis treści

  • Przedmowa
    • Co DevOps oznacza dla autorów?
    • Jak korzystać z tej książki?
      • Tematy
    • Konwencje używane w tej książce
    • Korzystanie z przykładów kodu
    • Podziękowania
      • Noah
      • Kennedy
      • Alfredo
      • Grig
  • Rozdział 1. Podstawy Pythona dla DevOps
    • Instalowanie i uruchamianie Pythona
      • Powłoka Pythona
        • Skrypty Pythona
        • IPython
      • Jupyter Notebooks
    • Programowanie proceduralne
      • Zmienne
      • Podstawowe operacje arytmetyczne
      • Komentarze
      • Funkcje wbudowane
      • Print
      • Range
    • Sterowanie przepływem kodu
      • If-elif-else
      • Pętle for
        • Instrukcja continue
    • Pętle while
    • Obsługa wyjątków
    • Obiekty wbudowane
      • Czym jest obiekt?
      • Metody i atrybuty obiektu
      • Sekwencje
        • Operacje na sekwencjach
        • Listy
        • Ciągi znaków
        • Słowniki
    • Funkcje
      • Anatomia funkcji
      • Funkcje jako obiekty
      • Funkcje anonimowe
    • Korzystanie z wyrażeń regularnych
      • Wyszukiwanie
      • Zbiory znaków
      • Klasy znaków
      • Grupy
      • Grupy nazwane
      • Znajdź wszystko
      • Iterator wyszukiwania
      • Podstawianie
      • Kompilowanie
    • Leniwe wartościowanie
      • Generatory
      • Generatory składane
    • Dodatkowe funkcjonalności IPythona
      • Korzystanie z IPythona do uruchamiania poleceń powłoki Unix
        • Korzystanie z magicznych poleceń IPythona
    • Ćwiczenia
  • Rozdział 2. Automatyzacja zadań dotyczących plików i systemu plików
    • Odczytywanie i zapisywanie plików
    • Korzystanie z wyrażeń regularnych do wyszukiwania tekstu
    • Przetwarzanie dużych plików
    • Szyfrowanie tekstu
      • Haszowanie z wykorzystaniem pakietu hashlib
      • Szyfrowanie z wykorzystaniem biblioteki cryptography
    • Moduł os
    • Zarządzanie plikami i katalogami za pomocą modułu os.path
    • Przeglądanie drzew katalogów za pomocą funkcji os.walk
    • Ścieżki jako obiekty modułu pathlib
  • Rozdział 3. Praca w wierszu polecenia
    • Praca w środowisku powłoki
      • Komunikacja z interpreterem za pomocą modułu sys
      • Wykonywanie zadań w systemie operacyjnym z wykorzystaniem modułu os
      • Inicjowanie procesów za pomocą modułu subprocess
    • Tworzenie narzędzi wiersza polecenia
      • Atrybut sys.argv
      • argparse
      • Pakiet click
      • Moduł fire
      • Implementowanie wtyczek
    • Studium przypadku: Turbodoładowanie Pythona za pomocą narzędzi wiersza polecenia
      • Kompilator Just-in-Time (JIT) Numba
      • Korzystanie z GPU w Pythonie za pomocą frameworka CUDA
      • Uruchamianie w Pythonie kodu na wielu rdzeniach i w wielu wątkach z wykorzystaniem modułu Numba
      • Klasteryzacja z wykorzystaniem modułu KMeans
    • Ćwiczenia
  • Rozdział 4. Przydatne narzędzia systemu Linux
    • Narzędzia dyskowe
      • Pomiar wydajności
        • Dokładne testy z fio
      • Partycje
      • Odczytywanie specyficznych informacji o urządzeniu
    • Narzędzia sieciowe
      • Tunelowanie SSH
      • Pomiar wydajności HTTP za pomocą Apache Benchmark (ab)
      • Testowanie obciążenia za pomocą narzędzia molotov
    • Narzędzia do badania CPU
      • Przeglądanie procesów za pomocą htop
    • Korzystanie z Bash i ZSH
      • Personalizacja powłoki Pythona
      • Rekurencyjny globbing
      • Wyszukiwanie i zamiana z pytaniami o potwierdzenie
      • Usuwanie tymczasowych plików Pythona
      • Wyświetlanie listy procesów i jej filtrowanie
      • Uniksowe znaczniki czasu
    • Łączenie możliwości Pythona z powłoką Bash i ZSH
      • Generator losowych haseł
      • Czy mój moduł istnieje?
      • Zmiana katalogów na ścieżki do modułów
      • Konwersja pliku CSV na JSON
    • Jednowierszowe skrypty w Pythonie
      • Debugery
      • Jak szybko działa ten fragment kodu?
    • strace
    • Ćwiczenia
    • Zadanie związane ze studium przypadku
  • Rozdział 5. Zarządzanie pakietami
    • Dlaczego tworzenie pakietów jest ważne?
      • Kiedy tworzenie pakietu może być niepotrzebne?
    • Wytyczne dotyczące tworzenia pakietów
      • Opisowe wersjonowanie
      • Rejestr zmian
    • Wybór strategii
    • Sposoby tworzenia pakietów
      • Natywny pakiet Pythona
        • Dodawanie plików do pakietów
        • Skorowidz PyPI
        • Hosting wewnętrznego repozytorium PyPI
      • Pakiety w stylu Debiana
        • Dodawanie plików do pakietów
        • Generowanie binariów
        • Repozytoria Debiana
      • Pakiety RPM
        • Plik spec
        • Generowanie binariów
        • Repozytoria RPM
    • Zarządzanie za pomocą systemd
      • Procesy długotrwałe
      • Konfiguracja
      • Plik modułu systemd
    • Instalacja modułu
      • Obsługa logów
    • Ćwiczenia
    • Zadanie związane ze studium przypadku
  • Rozdział 6. Continuous Integration i Continuous Deployment
    • Studium przypadku: konwersja źle utrzymywanej witryny bazującej na WordPressie do Hugo
      • Konfigurowanie Hugo
      • Konwersja witryny WordPress na posty Hugo
      • Utworzenie indeksu Algolia i jego uaktualnienie
      • Automatyzacja za pomocą Makefile
      • Instalacja z wykorzystaniem AWS CodePipeline
    • Studium przypadku: instalacja aplikacji Python App Engine za pomocą mechanizmu Google Cloud Build
    • Studium przypadku: NFSOPS
  • Rozdział 7. Monitorowanie i logowanie
    • Kluczowe pojęcia dotyczące budowania niezawodnych systemów
    • Niezmienne zasady DevOps
      • Centralne logowanie
      • Studium przypadku: produkcyjna baza danych zabija dyski twarde
      • Zbudować czy kupić?
      • Odporność na błędy
    • Monitorowanie
      • Graphite
      • StatsD
      • Prometheus
    • Oprzyrządowanie
      • Konwencje nazewnictwa
    • Logowanie
      • Dlaczego konfigurowanie logowania jest trudne?
      • basicconfig
      • Głębsza konfiguracja
      • Powszechne wzorce
    • Stos ELK
      • Logstash
      • Elasticsearch i Kibana
    • Ćwiczenia
    • Zadanie związane ze studium przypadku
  • Rozdział 8. Pytest dla DevOps
    • Testowanie za pomocą frameworka pytest
    • Pierwsze kroki z pytest
      • Testowanie z wykorzystaniem pytest
        • Układ plików i obowiązujące konwencje
      • Różnice w stosunku do unittest
    • Cechy frameworka pytest
      • conftest.py
      • Niezwykła funkcja assert
      • Parametryzacja
    • Fikstury
      • Pierwsze kroki
      • Fikstury wbudowane
    • Testowanie infrastruktury
      • Co to jest walidacja systemowa?
      • Wprowadzenie do projektu Testinfra
      • Nawiązywanie połączeń ze zdalnymi węzłami
      • Funkcje i fikstury specjalne
    • Przykłady
    • Testowanie notatników Jupyter Notebooks z wykorzystaniem frameworka pytest
    • Ćwiczenia
    • Zadanie związane ze studium przypadku
  • Rozdział 9. Chmura obliczeniowa
    • Podstawy chmury obliczeniowej
    • Rodzaje chmur obliczeniowych
    • Rodzaje usług chmury obliczeniowej
      • IaaS
      • MaaS
      • PaaS
      • Przetwarzanie bezserwerowe
      • SaaS
    • Infrastruktura jako kod
    • Ciągłe dostawy
    • Wirtualizacja i kontenery
      • Wirtualizacja sprzętowa
      • Sieci SDN
      • Magazyny SDS
      • Kontenery
    • Wyzwania i możliwości przetwarzania rozproszonego
    • Współbieżność, wydajność i zarządzanie procesami w dobie chmury obliczeniowej
    • Zarządzanie procesami
      • Zarządzanie procesami z wykorzystaniem modułu subprocess
        • Unikaj instrukcji shell=True
        • Ustaw limity czasu i obsługuj je w razie potrzeby
        • Problem z wątkami w Pythonie
      • Korzystanie z modułu multiprocessing do rozwiązywania problemów
      • Rozwidlanie procesów za pomocą funkcji pool()
      • FaaS i tryb bezserwerowy
      • Wysokowydajny Python z wykorzystaniem pakietu Numba
      • Korzystanie z kompilatora Just in Time biblioteki Numba
      • Korzystanie z wysokowydajnych serwerów
    • Wniosek
    • Ćwiczenia
    • Studia przypadków
  • Rozdział 10. Infrastruktura jako kod
    • Klasyfikacja narzędzi automatyzacji infrastruktury
    • Dostarczanie ręczne
    • Automatyczne dostarczanie infrastruktury z wykorzystaniem systemu Terraform
      • Dostarczanie komory S3
      • Dostarczanie certyfikatu SSL z usługi AWS ACM
      • Dostarczanie dystrybucji Amazon CloudFront
      • Dostarczanie rekordu DNS Route 53
      • Kopiowanie statycznych plików do usługi S3
      • Usuwanie wszystkich zasobów AWS dostarczonych przez Terraform
    • Zautomatyzowane dostarczanie infrastruktury za pomocą systemu Pulumi
      • Tworzenie nowego projektu Pythona Pulumi dla usług AWS
      • Tworzenie wartości konfiguracyjnych dla stosu staging
      • Dostarczanie certyfikatu SSL ACM
      • Dostarczanie strefy Route 53 i rekordów DNS
      • Dostarczanie dystrybucji CloudFront
      • Dostarczanie rekordu DNS Route 53 dla adresu URL witryny
      • Tworzenie i wdrażanie nowego stosu
    • Ćwiczenia
  • Rozdział 11. Technologie kontenerowe: Docker i Docker Compose
    • Czym jest kontener Dockera?
    • Tworzenie, budowanie, uruchamianie i usuwanie obrazów i kontenerów Dockera
    • Publikowanie obrazów Dockera w Rejestrze Dockera
    • Uruchamianie kontenera Dockera z tego samego obrazu na innym hoście
    • Uruchamianie wielu kontenerów Dockera za pomocą systemu Docker Compose
    • Przenoszenie usług docker-compose do nowego hosta i systemu operacyjnego
    • Ćwiczenia
  • Rozdział 12. Orkiestracja kontenerów: Kubernetes
    • Przegląd pojęć związanych z systemem Kubernetes
    • Korzystanie z systemu Kompose do tworzenia manifestów Kubernetesa na podstawie pliku docker-compose.yaml
    • Instalacja manifestów Kubernetesa w lokalnym klastrze Kubernetesa z wykorzystaniem minikube
    • Uruchomienie klastra GKE Kubernetes w GCP za pomocą Pulumi
    • Instalacja przykładowej aplikacji Flask do GKE
    • Instalacja wykresów Helm Prometheus i Grafana
    • Niszczenie klastra GKE
    • Ćwiczenia
  • Rozdział 13. Technologie bezserwerowe
    • Wdrażanie tej samej funkcji Pythona do chmur dostawców z Wielkiej Trójki
      • Instalacja frameworka Serverless
      • Wdrażanie funkcji Pythona w usłudze AWS Lambda
      • Wdrażanie funkcji Pythona na platformie Google Cloud Functions
      • Wdrażanie funkcji Pythona w usłudze AWS Lambda
    • Wdrażanie funkcji Pythona do platform FaaS działających w trybie self-hosted
      • Wdrażanie funkcji Pythona do usługi OpenFaaS
    • Konfigurowanie tabeli DynamoDB, funkcji Lambda i metod API Gateway za pomocą AWS CDK
    • Ćwiczenia
  • Rozdział 14. MLOps i inżynieria uczenia maszynowego
    • Czym jest uczenie maszynowe?
      • Nadzorowane uczenie maszynowe
        • Pobieranie danych (ang. ingest)
        • Eksploracyjna analiza danych (ang. Explorative Data Analysis EDA)
        • Statystyki opisowe
        • Rozkład gęstości jądra
      • Modelowanie
        • Model regresji sklearn
    • Ekosystem uczenia maszynowego w Pythonie
      • Uczenie głębokie z wykorzystaniem frameworka PyTorch
        • Regresja z wykorzystaniem PyTorch
    • Platformy uczenia maszynowego w chmurze
    • Model dojrzałości uczenia maszynowego
      • Najważniejsza terminologia uczenia maszynowego
      • Poziom 1. Formułowanie, identyfikowanie zakresu i definiowanie problemu
      • Poziom 2. Ciągłe dostawy danych
      • Poziom 3. Ciągłe dostawy oczyszczonych danych
      • Poziom 4. Ciągłe dostawy eksploracyjnych analiz danych
      • Poziom 5. Ciągłe dostarczania tradycyjnych narzędzi ML i AutoML
      • Poziom 6. Operacyjna pętla sprzężenia zwrotnego narzędzi ML
    • Model Sklearn Flask z wykorzystaniem systemów Kubernetes i Docker
    • Sklearn Flask z wykorzystaniem Kubernetesa i Dockera
      • EDA
      • Modelowanie
        • Podział danych
      • Dostrajanie skalowanego algorytmu GBM
      • Dopasowywanie modelu
      • Ocena
      • adhoc_predict
      • Przepływ pracy JSON
      • Skalowanie danych wejściowych
        • Serializacja sklearn
        • Deserializacja i prognozowanie
      • adhoc_predict z modułu Pickle
      • Skalowanie danych wejściowych
    • Ćwiczenia
    • Zadanie związane ze studium przypadku
    • Pytania i zadania kontrolne
  • Rozdział 15. Inżynieria danych
    • Small data
      • Obsługa plików typu small data
    • Zapis do pliku
    • Odczyt z pliku
    • Potok generatora używany w celu czytania i przetwarzania wierszy
    • Korzystanie z formatu YAML
    • Big Data
    • Narzędzia Big Data, komponenty i platformy
      • Źródła danych
      • Systemy plików
      • Przechowywanie danych
    • Pobieranie strumieni danych w czasie rzeczywistym
    • Studium przypadku: budowanie własnego potoku danych
    • Inżynieria danych w trybie bezserwerowym
      • Korzystanie z usługi AWS Lambda z wykorzystaniem zdarzeń CloudWatch
      • Logowanie z wykorzystaniem usług Amazon CloudWatch i AWS Lambda
      • Wykorzystanie usługi AWS Lambda w celu zapełniania kolejki w usłudze Amazon Simple Queue Service
      • Konfiguracja mechanizmu wyzwalającego zdarzenie CloudWatch
      • Tworzenie funkcji Lambda sterowanych zdarzeniami
      • Odczyt zdarzeń Amazon SQS z funkcji AWS Lambda
    • Wnioski
    • Ćwiczenia
    • Zadanie związane ze studium przypadku
  • Rozdział 16. Historie wojenne DevOps i wywiady
    • Studio filmowe nie może produkować filmów
    • Studio gier nie może opublikować gry
    • Uruchomienie skryptów Pythona zajmuje 60 sekund
    • Gaszenie pożarów za pomocą pamięci podręcznej i inteligentnej instrumentacji
    • Automatyzacja zabierze Ci pracę!
    • Antywzorce DevOps
      • Brak zautomatyzowanego serwera budowania
      • Latanie po omacku
      • Trudności w koordynacji jako stan ciągły
      • Brak pracy zespołowej
        • Jasno sformułowany, wzniosły cel
        • Struktura sterowana wynikami
        • Kompetentni członkowie zespołu
        • Ogólne zaangażowanie
        • Klimat współpracy
        • Standardy doskonałości
        • Zewnętrzne wsparcie i uznanie
        • Pryncypialne zarządzanie
    • Wywiady
      • Glenn Solomon
      • Andrew Nguyen
      • Gabriella Roman
      • Rigoberto Roche
      • Jonathan LaCour
      • Ville Tuulos
      • Joseph Reis
      • Teijo Holzer
      • Matt Harrison
      • Michael Foord
    • Zalecenia
    • Ćwiczenia
    • Wyzwania
    • Projekt końcowy
      • O autorach
      • Kolofon

Dodaj do koszyka

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2021 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.