Customer Sharing: KKStream/KKBOX - How do we, as KKStream/KKBOX, deal with seamless service migration/upgrade with AWS Enterprise Support and IEM

Download Customer Sharing: KKStream/KKBOX - How do we, as KKStream/KKBOX, deal with seamless service migration/upgrade with AWS Enterprise Support and IEM

Post on 15-Apr-2017

290 views

Category:

Technology

6 download

TRANSCRIPT

  • 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

    (Drake), KKStream / KKBOX

    May 20th, 2016

    Seamless service migration with

    AWS Enterprise Support

  • Who am I? Who are We?

    Technical Director, KKStream.

    Committee member, PyCon TW

    Spin off from KKBOX on March.

    Media streaming solutions.

  • Proclaim #1

    I would like to talk about our journey, starting from

    migration of video streaming services from on-premises to

    cloud. What we experienced and learnt with AWS

    Enterprise Support team would be shared, and then our

    future strategy with AWS.

    No any deep-dives, or even codes gets mentioned on this

    stage.

  • Proclaim #2

    What Im going to share is our stories in some context.

    They might not fit to your business challenges, and there

    might be even something subtly wrong.

    Listen carefully with doubt is necessary; adapt them to your

    challenges with twist is suggested.

  • Lets start from the result

  • Videopass spec

    Video-on-demand streaming service in Japan.

    Modern adaptive streaming: HLS, DASH, MSS.

    Multi-platform: Android, iOS, Web, STB and TV.

    Seamless migration w/o down time from the previous

    not-that-ok platform.

  • Videopass status

    More than 1M paid subscriptions (Japan only)

    60,000 videos encoded

    3,000 films encoded in one day (peak)

    Couple of million video-hours are watched

    EC2 instances: 4,000 cores (peak)

    Request per month: 3 billion (peak)

  • Embraced AWS services

    EC2

    S3

    RDS

    VPC

    ELB

    Route 53

    CloudWatch

    AWS Config

    Elasticsearch

    ElastiCache

    SQS

    SNS

    SES

    SWF

    Lambda

    API Gateway

    DynamoDB

    EMR

    Redshift

  • All on cloud from day oneApril 2014

  • Content Pipeline

    meta, images, videos, and

    others, a variety of contents

    we are dealing with.

    Different and even evolving

    workflows, as DAGs,

    comprise the core backbone.

    It should be robust and

    accountable as we just like

    put 1.5 (video) engineer.

  • Encoding System

    Amazon Simple Workflow (SWF)

    It is accountable, extendable, error-proofing

    We proposed priority queuing feature with others

    Raising soft limits is easy

    Orchestrating the execution of workflows for media

    streaming service and even more

    PyCon APAC 2015

    PyCon Taiwan 2016

  • Counting our core pipeline technology on

    AWS can be robust and secured, even

    though it (ex, SWF) is not that mentioned

    here.

    Lesson #1:

  • D-Day, Videopass migrationJuly 2015

  • Todo list

    Seamless migration to 1M users.

    Migration is split into 2 or 3 phases.

    Service status is watched and reported in minutes.

    4+2 vendors to cooperate through API, data exchange

    and discussion. (Taipei, Tokyo, London)

    Both on-site and remote engineers, operators and even

    SQA are standby. (Taipei, Tokyo)

  • Live status

    Everyone was caring about the live status, which means

    no one was thinking about others!

  • AWS IEM

    One AWS SA noticed

    something risky about RDS!

    He continuously and clearly

    reported his discovery and

    discussed with us.

    Obviously, it turns out he is

    much familiar with underneath

    services than us!

  • On d-day, all people is easier concentrating

    on instant status, while AWS IEM team, as a

    team player with us, help predict the future

    and prevent disasters.

    Lesson #2:

  • AWS re:Invent 2015October 2015

  • After AWS re:Invent, We Thought

    Cost optimization:

    - development faster, then deployment

    - quit/change even faster if necessary

    Brainless scalability (PaaS):

    - serverless microservices

    - Lambda + API Gateway

    Deeper support:

    - continuous mutual cooperation

    - more KKBOX staffs to AWS re:Invent!

  • https://aws.amazon.com/solutions/case-studies/kkbox/

    https://aws.amazon.com/solutions/case-studies/kkbox/

  • We could leverage AWS resources to not

    just evangelize technology and mindset, but

    also cultivate our next-gen platform and

    even broaden our exposure.

    Lesson #3:

  • Moving on to the nextJanuary 2016

  • What is the next-gen streaming big thing?

    Much complicated business logics

    FVOD, SVOD, TVOD, AVOD, bundle sale,

    Higher demand of streaming experience

    Viewing quality, picking w/o searching, personalization,

    Different but rich content

    Live music, linear TV, enterprise education,

    Insane operation situation

    Massive ingestion, dynamic layout, auto-subtitle, auto-

    screenshot,

  • Our strategy for the next

    We just like to have 1.5 AWS expert if possible, or 1

    expert with some intermediates.

    We would focus on core part of next-gen services while

    infrastructure issues are delegated to someone trustful,

    like AWS.

  • Serverless APIs on AWS!

  • Lots of trickys in AWS services

    We might be one of pioneering teams here trying to build

    fully serverless APIs through API Gateway, Lambda,

    DynamoDB is really expensive if you use it in this way

    Lambda has cold start issue such that

    Not just CPU, but also network and disk performance

    are all positively related to memory in Lambda

    Dont use CodeCommit or CodePipeline because

  • We realized that we wont be that expertized

    in some AWS tricks, but we can aggressively

    start some plan because AWS ES team

    would fully and honestly support us.

    Lesson #4:

  • And we want more from AWSMarch 2016

  • How about putting # of AWS support cases into our KPI? interesting feedback

  • Then, all our team, including non-

    developers, video content quality

    assurers in Kaohsiung, has access to

    AWS Support Center!

  • Treating AWS as a team player in KKStream

    can strongly increase our expertise, team

    size, and even surprising feedback. Its like

    we hired the whole AWS ES team in!

    Lesson #5:

  • Overall, the takeaways

  • Takeaways

    Before evaluating new AWS services, ask them directly.

    They can always feedback something inspiring, trustful,

    and accountable.

    AWS Support could be treated like part of your team,

    instead of just tech Q&A vendor or consultant.

    Thinking about what your team like to be and focus on

    that, then leveraging AWS resources for other parts.

  • Have I mentioned that we are hiring?

  • Thank you!@drakeguan