Take a look at our Systems Architecture books. Shulph carries a great selection of Systems Architecture books, and we are always adding more.
Learn to implement container orchestration on AWS with ease Key Features Leverage the power of Kubernetes on AWS to deploy highly scalable applications Provision Kubernetes clusters on Amazon EC2 environments Implement best practices to improve efficiency and security of Kubernetes on the cloud Book Description Docker containers promise to radicalize the way developers and operations build, deploy, and manage applications running on the cloud. Kubernetes provides the orchestration tools you need to realize that promise in production. Kubernetes on AWS guides you in deploying a production-ready Kubernetes cluster on the AWS platform. You will then discover how to utilize the power of Kubernetes, which is one of the fastest growing platforms for production-based container orchestration, to manage and update your applications. Kubernetes is becoming the go-to choice for production-grade deployments of cloud-native applications. This book covers Kubernetes from first principles. You will start by learning about Kubernetes' powerful abstractions - Pods and Services - that make managing container deployments easy. This will be followed by a guided tour through setting up a production-ready Kubernetes cluster on AWS, while learning the techniques you need to successfully deploy and manage your own applications. By the end of the book, you will have gained plenty of hands-on experience with Kubernetes on Amazon Web Services. You will also have picked up some tips on deploying and managing applications, keeping your cluster and applications secure, and ensuring that your whole system is reliable and resilient to failure. What you will learn Learn how to provision a production-ready Kubernetes cluster on AWS Deploy your own applications to Kubernetes with Helm Discover strategies for troubleshooting your cluster and know where to find help with issues Explore the best ways to monitor your cluster and the applications running on it Supercharge your cluster by integrating it with the tools provided by the AWS platform Architect your cluster for high availability Who this book is for If you're a cloud engineer, cloud solution provider, sysadmin, site reliability engineer, or developer with an interest in DevOps and are looking for an extensive guide to running Kubernetes in the AWS environment, this book is for you. Though any previous knowledge of Kubernetes is not expected, some experience with Linux and Docker containers would be a bonus.
Explore the blockchain-based decentralized platform and understand how Ethereum works with Dapps examples Key Features Explore the Ethereum ecosystem and understand the latest research on the platform Build decentralized apps (Dapps) using smart contracts and Ethereum with the help of practical examples Learn to make your decentralized applications fast and highly secure Book Description Ethereum is a blockchain-based, decentralized computing platform that allows running smart contracts. This book provides a basic overview of how Ethereum works, its ecosystem, mining process, and the consensus mechanism. It also demonstrates a step-by-step approach for building decentralized applications. This book begins with the very basics of Blockchain technology. Then it dives deep into the Ethereum architecture, framework and tools in its ecosystem. It also provides you an overview of ongoing research on Ethereum, for example, Layer 1 and 2 scaling solution, Stablecoin, ICO/STO/IEO, etc. Next, it explains Solidity language in detail, and provides step-by-step instructions for designing, developing, testing, deploying, and monitoring decentralized applications. In addition, you'll learn how to use Truffle, Remix, Infura, Metamask, and many other Ethereum technologies. It'll also help you develop your own cryptocurrency by creating ERC20, and ERC721 smart contracts from scratch. Finally, we explain private blockchains, and you learn how to interact with smart contracts through wallets. What you will learn Understand the concepts of blockchain and cryptocurrency Master Ethereum development tools such as Truffle, Remix IDE and Infura Delve into smart contract development Develop DApps frontend using Node.js, React.js, and Web3js API Learn Etherscan and other tools to secure and monitor smart contracts Develop and debug smart contracts by working with Remix Apply Truffle suite to compile, migrate, and unit test smart contracts Explore smart contracts such as ERC20 token and decentralized digital market Who this book is for This book is for all developers and architects who want to explore Ethereum blockchain fundamentals and get started with building real-world decentralized applications. Knowledge of an object-oriented programming language such as JavaScript will be useful but not mandatory.
Over 100 recipes to get up and running with the modern Linux administration ecosystem Key Features Understand and implement the core system administration tasks in Linux Discover tools and techniques to troubleshoot your Linux system Maintain a healthy system with good security and backup practices Book Description Linux is one of the most widely used operating systems among system administrators,and even modern application and server development is heavily reliant on the Linux platform. The Linux Administration Cookbook is your go-to guide to get started on your Linux journey. It will help you understand what that strange little server is doing in the corner of your office, what the mysterious virtual machine languishing in Azure is crunching through, what that circuit-board-like thing is doing under your office TV, and why the LEDs on it are blinking rapidly. This book will get you started with administering Linux, giving you the knowledge and tools you need to troubleshoot day-to-day problems, ranging from a Raspberry Pi to a server in Azure, while giving you a good understanding of the fundamentals of how GNU/Linux works. Through the course of the book, you'll install and configure a system, while the author regales you with errors and anecdotes from his vast experience as a data center hardware engineer, systems administrator, and DevOps consultant. By the end of the book, you will have gained practical knowledge of Linux, which will serve as a bedrock for learning Linux administration and aid you in your Linux journey. What you will learn Install and manage a Linux server, both locally and in the cloud Understand how to perform administration across all Linux distros Work through evolving concepts such as IaaS versus PaaS, containers, and automation Explore security and configuration best practices Troubleshoot your system if something goes wrong Discover and mitigate hardware issues, such as faulty memory and failing drives Who this book is for If you are a system engineer or system administrator with basic experience of working with Linux, this book is for you.
Become an expert in implementing Azure Functions to work seamlessly with your serverless applications Key Features Develop scalable, robust multi-tier apps without worrying about infrastructure needs Deploy and manage cost-effective and highly available serverless apps using Azure Functions Accelerate enterprise-level application development by seamlessly integrating different cloud services with Azure Functions Book Description Application development has evolved from traditional monolithic app development to using serverless options and microservices. This book is designed to guide you through using Microsoft's Azure Functions to process data, integrate systems, and build simple APIs and microservices. You will discover how to apply serverless computing to speed up deployment and reduce downtime. You'll also explore Azure Functions, including its core functionalities and essential tools, along with understanding how to debug and even customize Azure Functions. In addition to this, the book will take you through how you can effectively implement DevOps and automation in your working environment. Toward the concluding chapters, you'll cover some quick tips, troubleshooting techniques, and real-world serverless use cases that will help you make the most of serverless computing. By the end of this book, you will have gained the skills you need to develop and deliver cost-effective Azure serverless solutions. What you will learn Create and deploy advanced Azure Functions Learn to extend the runtime of Azure Functions Orchestrate your logic through code or a visual workflow Add caching, security, routing, and filtering to your APIs Use serverless technologies in real-world scenarios Understand how to apply DevOps and automation to your working environment Who this book is for This book is designed for cloud administrators, architects, and developers interested in building scalable systems and deploying serverless applications with Azure Functions. Prior knowledge of core Microsoft Azure services and Azure Functions is necessary to understand the topics covered in this book.
Discover the unified, distributed storage system and improve the performance of applications Key Features Explore the latest features of Ceph's Mimic release Get to grips with advanced disaster and recovery practices for your storage Harness the power of Reliable Autonomic Distributed Object Store (RADOS) to help you optimize storage systems Book Description Ceph is an open source distributed storage system that is scalable to Exabyte deployments. This second edition of Mastering Ceph takes you a step closer to becoming an expert on Ceph. You'll get started by understanding the design goals and planning steps that should be undertaken to ensure successful deployments. In the next sections, you'll be guided through setting up and deploying the Ceph cluster with the help of orchestration tools. This will allow you to witness Ceph's scalability, erasure coding (data protective) mechanism, and automated data backup features on multiple servers. You'll then discover more about the key areas of Ceph including BlueStore, erasure coding and cache tiering with the help of examples. Next, you'll also learn some of the ways to export Ceph into non-native environments and understand some of the pitfalls that you may encounter. The book features a section on tuning that will take you through the process of optimizing both Ceph and its supporting infrastructure. You'll also learn to develop applications, which use Librados and distributed computations with shared object classes. Toward the concluding chapters, you'll learn to troubleshoot issues and handle various scenarios where Ceph is not likely to recover on its own. By the end of this book, you'll be able to master storage management with Ceph and generate solutions for managing your infrastructure. What you will learn Plan, design and deploy a Ceph cluster Get well-versed with different features and storage methods Carry out regular maintenance and daily operations with ease Tune Ceph for improved ROI and performance Recover Ceph from a range of issues Upgrade clusters to BlueStore Who this book is for If you are a storage professional, system administrator, or cloud engineer looking for guidance on building powerful storage solutions for your cloud and on-premise infrastructure, this book is for you.
Immerse yourself in the world of Python concurrency and tackle the most complex concurrent programming problems Key Features Explore the core syntaxes, language features and modern patterns of concurrency in Python Understand how to use concurrency to keep data consistent and applications responsive Utilize application scaffolding to design highly-scalable programs Book Description Python is one of the most popular programming languages, with numerous libraries and frameworks that facilitate high-performance computing. Concurrency and parallelism in Python are essential when it comes to multiprocessing and multithreading; they behave differently, but their common aim is to reduce the execution time. This book serves as a comprehensive introduction to various advanced concepts in concurrent engineering and programming. Mastering Concurrency in Python starts by introducing the concepts and principles in concurrency, right from Amdahl's Law to multithreading programming, followed by elucidating multiprocessing programming, web scraping, and asynchronous I/O, together with common problems that engineers and programmers face in concurrent programming. Next, the book covers a number of advanced concepts in Python concurrency and how they interact with the Python ecosystem, including the Global Interpreter Lock (GIL). Finally, you'll learn how to solve real-world concurrency problems through examples. By the end of the book, you will have gained extensive theoretical knowledge of concurrency and the ways in which concurrency is supported by the Python language What you will learn Explore the concepts of concurrency in programming Explore the core syntax and features that enable concurrency in Python Understand the correct way to implement concurrency Abstract methods to keep the data consistent in your program Analyze problems commonly faced in concurrent programming Use application scaffolding to design highly-scalable programs Who this book is for This book is for developers who wish to build high-performance applications and learn about signle-core, multicore programming or distributed concurrency. Some experience with Python programming language is assumed.
Understand how to apply distributed tracing to microservices-based architectures Key Features A thorough conceptual introduction to distributed tracing An exploration of the most important open standards in the space A how-to guide for code instrumentation and operating a tracing infrastructure Book Description Mastering Distributed Tracing will equip you to operate and enhance your own tracing infrastructure. Through practical exercises and code examples, you will learn how end-to-end tracing can be used as a powerful application performance management and comprehension tool. The rise of Internet-scale companies, like Google and Amazon, ushered in a new era of distributed systems operating on thousands of nodes across multiple data centers. Microservices increased that complexity, often exponentially. It is harder to debug these systems, track down failures, detect bottlenecks, or even simply understand what is going on. Distributed tracing focuses on solving these problems for complex distributed systems. Today, tracing standards have developed and we have much faster systems, making instrumentation less intrusive and data more valuable. Yuri Shkuro, the creator of Jaeger, a popular open-source distributed tracing system, delivers end-to-end coverage of the field in Mastering Distributed Tracing. Review the history and theoretical foundations of tracing; solve the data gathering problem through code instrumentation, with open standards like OpenTracing, W3C Trace Context, and OpenCensus; and discuss the benefits and applications of a distributed tracing infrastructure for understanding, and profiling, complex systems. What you will learn How to get started with using a distributed tracing system How to get the most value out of end-to-end tracing Learn about open standards in the space Learn about code instrumentation and operating a tracing infrastructure Learn where distributed tracing fits into microservices as a core function Who this book is for Any developer interested in testing large systems will find this book very revealing and in places, surprising. Every microservice architect and developer should have an insight into distributed tracing, and the book will help them on their way. System administrators with some development skills will also benefit. No particular programming language skills are required, although an ability to read Java, while non-essential, will help with the core chapters.
Master Docker and leverage its power in your day-to-day workflow Key Features Explore tools such as Docker Engine, Machine, Compose, and Swarm Discover how Docker can be integrated into your daily workflows Learn to leverage Docker Swarm and Kubernetes Book Description Docker has been a game-changer when it comes to how modern applications are deployed and created. It has now grown into a key driver of innovation beyond system administration, with an impact on the world of web development. But how can you make sure you're keeping up with the innovations it's driving, or be sure you're using it to its full potential? Mastering Docker shows you how; this book not only demonstrates how to use Docker more effectively, but also helps you rethink and reimagine what's possible with it. You will cover concepts such as building, managing, and storing images, along with best practices to make you confident, before delving more into Docker security. You'll find everything related to extending and integrating Docker in new and innovative ways. Docker Compose, Docker Swarm, and Kubernetes will help you take control of your containers in an efficient manner. By the end of the book, you will have a broad, yet detailed, sense of what's possible with Docker, and how seamlessly it fits in with a range of other platforms and tools. What you will learn Become ?uent with the basic components and concepts of Docker Learn the best ways to build, store, and distribute containers Understand how Docker can fit into your development work?ow Secure your containers and files with Docker's security features Solve architectural problems using the first and third clustering tool Leverage Linux containers and create highly scalable applications Who this book is for If you are an I.T professional and recognize Docker's importance for innovation in everything from system administration to web development, but aren't sure how to use it to its full potential, Mastering Docker is for you.
Become a Professional Cloud Architect by exploring essential concepts, tools, and services in GCP and working through tests designed to help you get certified Key Features Plan and design a GCP cloud solution architecture Ensure the security and reliability of your cloud solutions and operations Test yourself by taking mock tests with up-to-date exam questions Book Description Google Cloud Platform (GCP) is one of the leading cloud service suites and offers solutions for storage, analytics, big data, machine learning, and application development. It features an array of services that can help organizations to get the best out of their infrastructure. This comprehensive guide covers a variety of topics specific to Google's Professional Cloud Architect official exam syllabus and guides you in using the right methods for effective use of GCP services. You'll start by exploring GCP, understanding the benefits of becoming a certified architect, and learning how to register for the exam. You'll then delve into the core services that GCP offers such as computing, storage, and security. As you advance, this GCP book will help you get up to speed with methods to scale and automate your cloud infrastructure and delve into containers and services. In the concluding chapters, you'll discover security best practices and even gain insights into designing applications with GCP services and monitoring your infrastructure as a GCP architect. By the end of this book, you will be well versed in all the topics required to pass Google's Professional Cloud Architect exam and use GCP services effectively. What you will learn Manage your GCP infrastructure with Google Cloud management options such as CloudShell and SDK Understand the use cases for different storage options Design a solution with security and compliance in mind Monitor GCP compute options Discover machine learning and the different machine learning models offered by GCP Understand what services need to be used when planning and designing your architecture Who this book is for If you are a cloud architect, cloud engineer, administrator, or any IT professional who wants to learn how to implement Google Cloud services in your organization and become a GCP Certified Professional Cloud Architect, this book is for you. Basic knowledge of server infrastructure, including Linux and Windows Servers, is assumed. Knowledge of network and storage will also be helpful.
Learn how to best use GitOps to automate manual tasks in the continuous delivery and deployment processKey FeaturesExplore the different GitOps schools of thought and understand which GitOps practices will work for you and your teamGet up and running with the fundamentals of GitOps implementationUnderstand how to effectively automate the deployment and delivery processBook DescriptionThe world of software delivery and deployment has come a long way in the last few decades. From waterfall methods to Agile practices, every company that develops its own software has to overcome various challenges in delivery and deployment to meet customer and market demands. This book will guide you through common industry practices for software delivery and deployment. Throughout the book, you'll follow the journey of a DevOps team that matures their software release process from quarterly deployments to continuous delivery using GitOps. With the help of hands-on tutorials, projects, and self-assessment questions, you'll build your knowledge of GitOps basics, different types of GitOps practices, and how to decide which GitOps practice is the best for your company. As you progress, you'll cover everything from building declarative language files to the pitfalls in performing continuous deployment with GitOps. By the end of this book, you'll be well-versed with the fundamentals of delivery and deployment, the different schools of GitOps, and how to best leverage GitOps in your teams. What you will learnExplore a variety of common industry tools for GitOpsUnderstand continuous deployment, continuous delivery, and why they are importantGain a practical understanding of using GitOps as an engineering organizationBecome well-versed with using GitOps and Kubernetes togetherLeverage Git events for automated deploymentsImplement GitOps best practices and find out how to avoid GitOps pitfallsWho this book is forThis book is for engineering leaders and anyone working in software engineering, DevOps, SRE, build/release, or cloud automation teams. A basic understanding of the DevOps software development life cycle (SDLC) will help you to get the most out of this book.