掌握
TechScrum DevOps 项目实训营
导师 7 周精心辅导,获得可写入简历的项目经验
来自 Amazon 的工程师,手把手带着做项目
TechScrum DevOps 项目实训营亮点
为什么选择 TechScrum DevOps 项目实训营
This project uses the DevOps workflow for the TechScrum web application. Participation in the project reinforces students' knowledge, engages them in hands-on DevOps projects, and provides a deep unde ...
咨询可以联系我们
不断更新的商业团队项目向招聘企业展示
该项目旨在使用 TypeScript 创建类似 JIRA 的项目管理工具。该工具将为团队提供高效的任务、问题和项目跟踪与管理功能。 项目官网:https://www.techscrumapp.com/
...Web开发全栈项目班19期同学
通过我们帮你获得理想工作
有机会参加Career Coaching Bootcamp,2个月找工作陪伴,为面试做好准备,并与招聘人员建立联系。
导师团队
课程知识点
DevOps工作技能
Python
Git
Deploy
CI/CD
Linux
Agile
Web Development
NPM
Bash
CRUD
Pipeline
DevOps流程
Coding Basics
Linux
Containerization
Orchestration
CI/CD
Infrastructure Automation
Configuration Management
Logging
Monitoring
Auto Scaling
Incident Management
DevOps职业技能
简历修改
模拟面试
面试指导
DevOps项目能力
Docker
Jenkins
Ansible
Jira
Splunk
AWS
Grafana
New Relic
Terraform
OpsGenie
Pageduty
CDN
Reverse Proxy
AWS EC2
AWS ECS
AWS Beanstalk
Status Page
Bitbucket
kubernetes
Travis CI
Gatling
Locust
Selenium WebDriver
Elastic Search
Logstash
Kibana
Python DevOps Tools
NodeJS
谁应该参加我们的TechScrum DevOps 项目实训营?
项目介绍
TechScrum DevOps 项目实训营是一个为期 7 周的项目实训营,专为想要提升技术能力的初级 DevOps 工程师设计,通过实践 TechScrum Web 的 DevOps 工作流程,提升他们的技术能力。这个实训营通过行业导师手把手辅导项目,来提高学员对集成、云基础设施管理和 DevOps 性能优化的理解和实践熟练度,并收获一个项目经验。
项目架构图
导师介绍
导师 Dex 老师有超过 9 年 IT 行业经验,目前就职于 Amazon,担任 Incident Management Engineer 一职。曾担任 DevOps Team Lead,善于将实际案例和操作结合,帮助学生深入理解 DevOps 原理,并通过实际应用取得成功。
项目特点
- 结构化路径:从环境搭建到监控工具的 IaC,逐步深入。
- 商业项目:学员将面对真实业务场景中会出现的问题。
- 技术全面:使用澳洲公司常用的云技术和 DevOps 工具,如 EKS、AKS、SonarQube 和 Vault。
项目内容
Week 1: Environment/Local Builds
Project Familiarization
- Download and install the required project dependencies.
- Understand the project's directory structure and primary functionalities.
- Review project documentation and comments.
Technical Stack & Environment
- Identify the tech stack: Typescript, Node.js, etc.
- Set up the development environment: Node.js, npm/yarn.
- Identify required environment variables and their purposes.
Local Execution
- Run the project's installation and start commands.
- Test the main functionalities of the project to ensure it operates correctly locally.
Cloud Infrastructure Setup
- Select the appropriate cloud platform based on project needs.
- Manually set up the necessary cloud services for frontend, such as storage and CDN services.
- Configure related networking and security settings.
Week 2: Basic Frontend/Backend IaC Code
Frontend IaC
- Choose and familiarize with an IaC tool.
- Write simple IaC scripts for frontend deployment.
Backend Cloud Components
- Choose cloud servers or container services based on backend requirements.
- Manually deploy backend code, set up database connections, etc.
- Test backend functionalities and performance.
Backend IaC
- Use the chosen IaC tool to script backend deployment.
Week 3: Frontend/Backend IaC Enhancement + Monitoring
IaC Enhancement for Frontend & Backend
- Optimize existing IaC scripts for frontend and backend.
- Add or modify resources based on project requirements.
Monitoring
- Select appropriate monitoring tools.
- Implement health checks for the frontend.
- Set up and configure cloud-based monitoring tools to monitor frontend CDN's performance and availability.
Week 4: Cloud Account, GitHub Organization, Frontend/Backend Monitoring
Shared Resources
- Create a GitHub organization and invite team members.
- Choose a cloud platform and set up a shared account.
IaC & CI/CD for Frontend/Backend
- Deploy frontend and backend applications in the shared account.
- Optimize IaC scripts based on the characteristics of the shared account.
- Establish Continuous Integration/Continuous Deployment pipelines.
Extended Monitoring
- Expand monitoring capabilities for frontend and backend, including application performance and error rates.
- Set up alerts to ensure prompt issue responses.
Week 5: Monitoring Tools IaC
Manual Setup of Monitoring Tools
- Choose monitoring tools like Prometheus, and Grafana based on project needs.
- Manually deploy these monitoring tools on the cloud platform.
IaC for ELK
- Familiarize with ELK's deployment and management.
- Use an IaC tool to script ELK deployment.
Week 6: IaC for Monitoring
Infrastructure Enhancement
- Optimize networking, storage, and compute resources based on the expansion needs of the project.
IaC for Monitoring Tools
- Script the deployment of Prometheus, and Grafana using IaC.
- Automate the deployment of these tools on the cloud platform.
Integration & Pipeline Setup
- Ensure monitoring tools can correctly monitor frontend and backend applications.
- Configure integrations between monitoring tools and other services, such as alerts and log management(ELK/Opensearch).
Week 7: Failover
Failover Strategies
- Learn and determine the appropriate failover strategies for the project.
- Configure and test auto-recovery functionalities.
- Optimize the application to handle various failure scenarios.
Challenge:
- API Gateway + Lambda:
- Implement using Terraform, possibly in combination with SAM (Serverless Application Model).
- Prioritize using Lambdas written by developers.
- If the developer hasn't finished the Lambda function, the DevOps team can write a backup Lambda (for example, for handling tfstate files or frontend). This can be invoked using API Gateway, EventBridge, or S3.
- EKS (Elastic Kubernetes Service) + AKS (Azure Kubernetes Service):
- Implement one of the platforms.
- Use Terraform to set up the cluster, worker nodes, and other foundational infrastructure.
- Deploy applications via a pipeline, with the pipeline located in the code repository.
- Code Testing:
- Set up a SonarQube server and integrate it into the Jenkins pipeline. Email the test results to developers.
- Incorporate Snyk into the pipeline and email the test reports to developers.
- Scan once a week to compare code improvements.
- Implement unit tests for critical parts of the application and ensure they run as part of the CI/CD pipeline.
- Load Testing:
- Use tools like JMeter or Locust to simulate heavy traffic to your infrastructure.
- Analyze the system's response and identify bottlenecks.
- Optimize the infrastructure based on the findings and retest.
- Security:
- Integrate with some cloud platform security tools, like AWS securityhub….
- Integrate automated security scans in the CI/CD pipeline.
- Ensure all services are running with least privilege access.
- Failover Trigger:
- Design mechanisms to detect system failures, such as health checks or monitoring alarms.
- Implement automated or semi-automated processes to redirect traffic to the failover infrastructure in case of system failure.
- Vault:
- Set up a Vault server.
- Store credentials in Vault and modify or create new pipelines accordingly.
- GitHub Actions/Bitbucket Pipelines:
- Re-implement Jenkins code pipelines using either GitHub Actions or Bitbucket Pipelines, depending on the type of the project's code repository.
你将获得什么
- 完成项目后的实践经验,加深对 DevOps 核心概念和技术的理解。
- 项目完成可写入简历,证明你具备 DevOps 领域的专业知识和实战能力。
- 提升个人技术资历,为未来的职业发展铺平道路。
技术栈
- IaC工具:Terraform, AWS SAM
- 云平台:AWS, Azure
- 监控工具:Prometheus, Grafana, ELK/Opensearch
- 容器服务:EKS, AKS
- CI/CD:Jenkins, GitHub Actions, Bitbucket Pipelines
入营门槛
- 有 DevOps 基础知识
- 了解云平台