Đây là sự kiện mà ITEC hợp tác cùng cộng đồng AWS Việt Nam tổ chức:
Diễn giả: Bùi Kiên Cường và Quân Phương trình bày.
Thời gian: 22-09-2016, tại Hatch!Nest Hà Nội.
6. Advantage
• Easy to control local
system
• Not depend on hosting
provider
• Do whatever if you
want
• …
Disadvantage
• So hard to scale
• Security
• Depend on network,
energy power
• Expensive
• …
7. • Ops aren’t immutable, they’re not
available 99.99% nor 24/7 they’re not machines.
• The goal of HumanOps is to improve and maintain
the good health of your team:
easing communication reducing fatigue and
reducing stress
» David Mytton – CEO Server Density
8. Cloud Computing
• The simple definition: It’s a style of computing based
on shared, elastic resources delivered to users in a
self-service, metered manner using web
technologies. Yet, if you ask five people “what is
cloud computing?” you can expect five different
answers. Why? Because what matters to them is not
what cloud computing is, but what it does for them.
» Oracle Cloud.
9. Virtualization And Cloud Computing
• Easy to Scale
• Don’t care about insfrastructure design
• Don’t care about network design
• Don’t depend on everything, depend on only “your wallet”
• Cloud computing is the easiest way to deliver your
services over the Internet.
10. 1. Physical System – Virtualization – Cloud Computing
2. Topica Edumall System Design
3. Apply with DevOps
4. Q&A
11. Topica Edumall hybrid system design
• 3 important element of system design
– Security
– High Availability
– Scalable
• => need a system with HA, Scalable, Security
12.
13. Element of Edumall Insfrastructure
• VPS < DigitalOcean > (~40%)
• Physical Server and Network (Viettel, VDC, FPT)
• Cloud Computing ( AWS ) ( ~60%)
• Core system: Video Streaming
27. Benefit
• High availability system
• Easy with scale and everything will be automated
• Auto healing
• Save much money ( save about 40% with 100%
running application on AWS )
29. Docker
• Docker containers wrap a piece of software in a
complete filesystem that contains everything needed
to run: code, runtime, system tools, system libraries
– anything that can be installed on a server. This
guarantees that the software will always run the
same, regardless of its environment.
• Build – Ship – Run
• Build once, run any where
30. Kubernetes
• Kubernetes is an open-source system for
automating deployment, scaling, and
management of containerized applications.
• “Write once, run forever”
• Build Auto-scale and self-healing system
31. Why?
• Easy to use
• Fast to scale
• Auto scale infrastructure and auto scale apps
• Auto create ELB
• Auto healing, warm-up
32.
33. Some Number? (6 months ago)
• Video content transfer: 90GB (/1 day)
• Static Content (image, js, html, css): 1GB
• Total Request: ~ 32k
• Total Ram: ~ 128GB
• Total CPU: ~32vCpus
• Unique Visitor: ~4k6
• Total User: ~500k
• Maximum Unique Visitors: ~300
34. Some number? (present)
• Video content transfer: 1,5 TB (/1 day)
• Static Content (image, js, html, css): 100GB
• Total Request: ~ 5 mil
• Total Ram: ~ 2TB
• Total CPU: ~400vCpus
• Unique Visitor: ~50k
• Total User: ~20m
• Maximum Unique Visitors: ~5k
• EC2 Start: ~ 5 (M4 2xLarge)
35. 1. Physical System – Virtualization – Cloud Computing
2. Topica Edumall System Design
3. Apply with DevOps
4. Q&A
36. With Dev
• Easy to use with SaaS
• Easy with authentication
• Easy with test environment
• Easy with code, change writing apps to reading
docs of AWS SaaS, and apply AWS SaaS to Our
Microservice System
• Document as Code
• Save 40% code-time with SaaS
37. With Ops
• Don’t need think about the insfrastructure, about
physical servers, ISP, Network, …
• Easy with Deployment
• Don’t need a monitoring system, Cloudwatch will
take care all of them.
• Less time for build, deploy a new insfrastructure,
platform
38. CI-CD workflow
Developer push a new commit to gitlab
Gitlab Trigger Gitlab Runner fetch and pull repo
Gitlab-runner build
Docker image
from Dockerfile
Excute test on all target
With all environment
Delivery images to Docker hub
Or Private registry
Deploy to K8s Cluster
39. Disadvantages
- While moving system on AWS, need to keep
alive two system ( Old and New ). So that, need
much money.
- So hard to motivate all team to use AWS.
Someone can’t change their mind.
- High latency from Vietnam to AWS when AAG is
on maintainance.