ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Go for DevOps: Learn how to use the Go language to automate servers

دانلود کتاب برو برای DevOps: یاد بگیرید که چگونه از زبان Go برای خودکارسازی سرورها استفاده کنید

Go for DevOps: Learn how to use the Go language to automate servers

مشخصات کتاب

Go for DevOps: Learn how to use the Go language to automate servers

ویرایش:  
نویسندگان: ,   
سری:  
ISBN (شابک) : 9781801818896 
ناشر: Packt Publishing 
سال نشر: 2022 
تعداد صفحات: 0 
زبان: English 
فرمت فایل : EPUB (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 6 مگابایت 

قیمت کتاب (تومان) : 50,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 11


در صورت تبدیل فایل کتاب Go for DevOps: Learn how to use the Go language to automate servers به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب برو برای DevOps: یاد بگیرید که چگونه از زبان Go برای خودکارسازی سرورها استفاده کنید نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب برو برای DevOps: یاد بگیرید که چگونه از زبان Go برای خودکارسازی سرورها استفاده کنید

به اتوماسیون انتشار مطمئن دست یابید و در روز انتشار خود هیچ اعلان دردسرساز دریافت نکنید ویژگی های کلیدی مهارت های ساخت ابزارهای خط فرمان برای کنترل هزاران گره را توسعه دهید از Go برای ایجاد ارائه دهندگان Terraform و اقدامات GitHub و گسترش Kubernetes استفاده کنید برای ایجاد جریان های کاری DevOps که قابل درک، مقیاس پذیر و ایمن هستند، دانش به دست آورید توضیحات کتاب Go زبان اصلی برای کتابخانه‌ها و خدمات DevOps است و بدون آن، دستیابی به اتوماسیون سریع و ایمن یک چالش است. با کمک Go for DevOps، یاد خواهید گرفت که چگونه خدمات را با سهولت و ایمنی ارائه دهید و در این فرآیند به مهندس DevOps بهتری تبدیل شوید. برخی از چیزهای کلیدی که این کتاب به شما می‌آموزد این است که چگونه نرم‌افزار Go بنویسید تا مدیریت پیکربندی خودکار را به‌روزرسانی کنید، ماشین‌های راه دور را به‌روزرسانی کنید، خودکارسازی سفارشی نویسنده در GitHub Actions و تعامل با Kubernetes. با پیشروی در فصل‌ها، نحوه خودکارسازی ابر با استفاده از کیت‌های توسعه نرم‌افزار (SDK)، گسترش Terraform و Packer HashiCorp با استفاده از Go، توسعه خدمات DevOps خود با gRPC و REST، طراحی عوامل سیستم و ایجاد گردش کار قوی را بررسی خواهید کرد. سیستم های. در پایان این کتاب Go for DevOps، خواهید فهمید که چگونه اصول توسعه را برای خودکارسازی عملیات و ارائه بینش عملیاتی با استفاده از Go به کار ببرید، که به شما این امکان را می‌دهد تا قبل از اینکه مشتریانتان متوجه شوند مشکلی پیش آمده است، برای رفع خرابی‌های سیستم به سرعت واکنش نشان دهید. آنچه خواهید آموخت ساختار اصلی زبان Go را برای شروع سفر DevOps خود بدانید برای خواندن یا پخش جریانی داده ها، با سیستم های فایل تعامل کنید با خدمات از راه دور از طریق REST و gRPC ارتباط برقرار کنید ابزارهای نوشتاری را که می توان در محیط DevOps استفاده کرد، کاوش کنید نرم افزار عملیاتی خط فرمان را در Go توسعه دهید برای استقرار نرم افزارهای تولیدی، با چارچوب های محبوب کار کنید اقدامات GitHub را ایجاد کنید که فرآیند CI/CD شما را ساده می کند یک برنامه ChatOps با Slack بنویسید تا دید تولید را ساده کنید این کتاب برای چه کسی است این کتاب برای مهندسان Ops و DevOps است که می‌خواهند از Go برای توسعه ابزار DevOps خود یا ادغام ویژگی‌های سفارشی با ابزارهای DevOps مانند Kubernetes، GitHub Actions، HashiCorp Packer و Terraform استفاده کنند. برای شروع کار با این کتاب، تجربه با برخی از انواع زبان های برنامه نویسی، اما نه لزوماً Go، ضروری است.


توضیحاتی درمورد کتاب به خارجی

Achieve reliable release automation and get zero troublesome notifications on your release day Key Features Develop the skills to build command-line tools to control thousands of nodes Use Go to create Terraform providers and GitHub actions and extend Kubernetes Gain the knowledge to build DevOps workflows that are understandable, scalable, and safe Book Description Go is the go-to language for DevOps libraries and services, and without it, achieving fast and safe automation is a challenge. With the help of Go for DevOps, you'll learn how to deliver services with ease and safety, becoming a better DevOps engineer in the process. Some of the key things this book will teach you are how to write Go software to automate configuration management, update remote machines, author custom automation in GitHub Actions, and interact with Kubernetes. As you advance through the chapters, you'll explore how to automate the cloud using software development kits (SDKs), extend HashiCorp's Terraform and Packer using Go, develop your own DevOps services with gRPC and REST, design system agents, and build robust workflow systems. By the end of this Go for DevOps book, you'll understand how to apply development principles to automate operations and provide operational insights using Go, which will allow you to react quickly to resolve system failures before your customers realize something has gone wrong. What you will learn Understand the basic structure of the Go language to begin your DevOps journey Interact with filesystems to read or stream data Communicate with remote services via REST and gRPC Explore writing tools that can be used in the DevOps environment Develop command-line operational software in Go Work with popular frameworks to deploy production software Create GitHub actions that streamline your CI/CD process Write a ChatOps application with Slack to simplify production visibility Who this book is for This book is for Ops and DevOps engineers who would like to use Go to develop their own DevOps tooling or integrate custom features with DevOps tools such as Kubernetes, GitHub Actions, HashiCorp Packer, and Terraform. Experience with some type of programming language, but not necessarily Go, is necessary to get started with this book.



فهرست مطالب

Go for DevOps
Contributors
About the authors
About the reviewers
Preface
	Who this book is for
	What this book covers
	To get the most out of this book
	Download the example code files
	Download the color images
	Conventions used
	Get in touch
	Share your thoughts
Section 1: Getting Up and Running with Go
Chapter 1: Go Language Basics
	Technical requirements
	Using the Go Playground
	Utilizing Go packages
		Declaring a package
		Importing a package
		Using a package
		Package name conflicts
		Packages must be used
		A Go Hello World
	Using Go\'s variable types
		Go\'s types
		Declaring variables
		Variable scopes and shadowing
		Function/statement variable must be used
	Looping in Go
		C style
		Removing the init statement
		Remove the post statement too and you have a while loop
		Creating an infinite loop
	Using conditionals
		if statements
		else
	Learning about functions
		Returning multiple values and named results
		Variadic arguments
		Anonymous functions
	Defining public and private
	Using arrays and slices
		Arrays
		Slices
		Extracting all values
		Understanding maps
		Declaring a map
		Accessing values
		Adding new values
		Extracting all values
	Understanding Go pointers
		Memory addresses
		Function arguments are copies
		Pointers to the rescue
	Getting to know about structs
		Declaring a struct
		Declaring a custom type
		Custom struct types
		Adding methods to a type
		Changing a field\'s value
		Changing a field\'s value in a method
		Constructors
	Comprehending Go interfaces
		Defining an interface type
		Important things about interfaces
		The blank interface – Go\'s universal value
		Type assertion
	Summary
Chapter 2: Go Language Essentials
	Handling errors in Go
		Creating an error
		Using an error
		Creating named errors
		Custom errors
		Wrapping errors
	Utilizing Go constants
		Declaring a constant
		Enumeration via constants
		Printing enumerators
	Using defer, panic, and recover
		defer
		panic
		recover
	Utilizing goroutines for concurrency
		Starting a goroutine
		Synchronization
		WaitGroups
		Channels
		Sending/receiving
		select statements
		Channels as an event signal
		Mutexes
		RWMutex
	Understanding Go\'s Context type
		Using a Context to signal a timeout
		Honoring a context when receiving
		Context in the standard library
		Context to pass values
		Best practices
	Utilizing Go\'s testing framework
		Creating a basic test file
		Creating a simple test
		Table Driven Tests (TDT)
		Creating fakes with interfaces
		Third-party testing packages
	Generics – the new kid on the block
		Type parameters
		Using type constraints
		We could do better with constraints
		Current built-in constraints
		Type constraints with methods
		Adding type parameters to struct types
		Specifying the type when calling a generic function
		Gotchas to watch for
		When to use generics
	Summary
Chapter 3: Setting Up Your Environment
	Technical requirements
	Installing Go on your machine
		macOS installation using the package installer
		macOS installation via Homebrew
		Windows installation using MSI
		Linux
		Other platforms
		A note on Go compiler version compatibility
	Building code locally
		Creating a module directory and go.mod file
		Updating a module when adding dependencies
		Adding a hello world
		Running our first program
	Summary
Chapter 4: Filesystem Interactions
	All I/O in Go are files
		I/O interfaces
	Reading and writing to files
		Reading local files
		Writing local files
		Reading remote files
	Streaming file content
		Stdin/Stdout/Stderr are just files
		Reading data out of a stream
		Writing data into a stream
	OS-agnostic pathing
		What OS/platform am I running?
		Using filepath
		Relative and absolute pathing
	OS-agnostic filesystems
		io.fs filesystems
		embed
		Walking our filesystem
		The io/fs future
	Summary
Chapter 5: Using Common Data Formats
	Technical requirements
	CSV files
		Basic value separation using the strings package
		Using the encoding/csv package
		Using excelize when dealing with Excel
	Popular encoding formats
		The Go field tags
		JSON
		YAML encoding
	Summary
Chapter 6: Interacting with Remote Data Sources
	Technical requirements
	Accessing SQL databases
		Connecting to a Postgres database
		Querying a Postgres database
		Null values
		Writing data to Postgres
		Transactions
		Postgres-specific types
		Other options
		Storage abstractions
		Case study – data migration of an orchestration system – Google
	Developing REST services and clients
		REST for RPCs
	Developing gRPC services and clients
		Protocol buffers
		Stating the prerequisites
		Generating your packages
		Writing a gRPC client
		Writing a gRPC server
		Creating a server binary
		Creating a client binary
		Company-standard RPC clients and servers
	Summary
Chapter 7: Writing Command-Line Tooling
	Technical requirements
	Implementing application I/O
		The flag package
		Custom flags
		Basic flag error handling
		Shorthand flags
		Accessing non-flag arguments
		Retrieving input from STDIN
	Using Cobra for advanced CLI applications
		Code organization
		The optional Cobra generator
		The command package
	Handling OS signals
		Capturing an OS signal
		Using Context to cancel
	Summary
Chapter 8: Automating Command-Line Tasks
	Technical requirements
	Using os/exec to automate local changes
		Determining the availability of essential tools
	Using SSH in Go to automate remote changes
		Connecting to another system
	Designing safe, concurrent change automations
		Components of a change
		Writing a concurrent job
		Case study – Network rollouts
	Writing a system agent
		Designing a system agent
		Implementing Install
		Implementing SystemPerf
	Summary
Section 2: Instrumenting, Observing, and Responding
Chapter 9: Observability with OpenTelemetry
	Technical requirements
	An introduction to OpenTelemetry
		Reference architecture for OpenTelemetry
		OpenTelemetry components
	Logging with context
		Our first log statement
		Structured and leveled logs with Zap
		Ingesting, transforming, and exporting logs using OpenTelemetry
	Instrumenting for distributed tracing
		The life cycle of a distributed trace
		Correlating traces and logs
		Adding log entries to spans
	Instrumenting for metrics
		The life cycle of a metric
		Client/server metrics with OpenTelemetry
	Alerting on metrics abnormalities
		Adding and configuring Alertmanager
	Summary
Chapter 10: Automating Workflows with GitHub Actions
	Technical requirements
	Understanding the basics of GitHub Actions
		Exploring the components of a GitHub Action
		How to build and trigger your first GitHub Action
	Building a continuous integration workflow
		Introducing the tweeter command-line tool
		Goals of the tweeter continuous integration workflow
		Continuous integration workflow for tweeter
	Building a release workflow
		GitHub releases
		Release automation for tweeter
	Creating a custom GitHub Action using Go
		Basics of custom actions
		Goals for the tweeter custom GitHub Action
		Creating the tweeter action
	Publishing a custom Go GitHub Action
		The basics of publishing actions
		Goals for publishing the tweeter custom action
		Managing action semantic versioning
		Publishing the tweeter action to the GitHub Marketplace
	Summary
Chapter 11: Using ChatOps to Increase Efficiency
	Technical requirements
	Environment architecture
	Using an Ops service
	Building a basic chatbot
	Creating event handlers
		Case Study – Regexes versus Lexer and Parser
	Creating our Slack application
		Running the applications
	Summary
Section 3: Cloud ready Go
Chapter 12: Creating Immutable Infrastructure Using Packer
	Technical requirements
	Building an Amazon Machine Image
		Setting up an AWS source
		Defining a build block and adding some provisioners
		Executing a Packer build
	Validating images with Goss
		Creating a spec file
		Adding a Packer provisioner
	Customizing Packer with plugins
		Writing your own plugin
		Releasing a plugin
		Using our plugin in a build
		Debugging a Packer plugin
	Summary
Chapter 13: Infrastructure as Code with Terraform
	Technical requirements
	An introduction to IaC
	Understanding the basics of Terraform
		Initializing and applying infrastructure specs using Terraform
	Understanding the basics of Terraform providers
		Defining and provisioning cloud resources
	Building a pet store Terraform provider
		Resources for building custom providers
		The pet store provider
		Publishing custom providers
	Summary
Chapter 14: Deploying and Building Applications in Kubernetes
	Technical requirements
	Interacting with the Kubernetes API
		Creating a KinD cluster
		Using kubectl to interact with the API
	Deploying a load-balanced HTTP application using Go
		It all starts with main
		Creating a ClientSet
		Creating a namespace
		Deploying the application into the namespace
		Creating the NGINX deployment
		Waiting for ready replicas to match desired replicas
		Creating a Service to load-balance
		Creating an ingress to expose our application on a local host port
		Streaming pod logs for the NGINX application
	Extending Kubernetes with custom resources and operators
		Custom Resource Definitions
		Controllers
		Standing on the shoulders of giants
	Building a pet store operator
		Initializing the new operator
	Summary
Chapter 15: Programming the Cloud
	Technical requirements
	What is the cloud?
	Learning the basics of the Azure APIs
		A background on cloud APIs and SDKs
		Microsoft Azure identity, RBAC, and resource hierarchy
		Creating an Azure account and accessing the API
	Building infrastructure using Azure Resource Manager
		Azure SDK for Go
		Setting up your local environment
		Building an Azure virtual machine
	Using provisioned Azure infrastructure
		Building an Azure Storage account
	Summary
Chapter 16: Designing for Chaos
	Technical requirements
	Using overload prevention mechanisms
		Case study – AWS client requests overwhelm the network
		Using circuit breakers
		Using backoff implementations
		Combining circuit breakers with backoff
	Using rate limiters to prevent runaway workflows
		Case study – Google satellite disk erase
		Channel-based rate limiter
		Token-bucket rate limiter
	Building workflows that are repeatable and never lost
		Building idempotent workflows
		Using three-way handshakes to prevent workflow loss
	Using policies to restrict tools
		Defining a gRPC workflow service
		Creating a policy engine
		Writing a policy
		Cautions on policy engines
	Building systems with an emergency stop
		Understanding emergency stops
		Building an emergency-stop package
		Using the emergency-stop package
		Case study – Google\'s network backbone emergency stop
	Summary
	Why subscribe?
Other Books You May Enjoy
	Packt is searching for authors like you
	Share your thoughts




نظرات کاربران