rpm packaging
play

RPM Packaging How software delivery works and why RPM packaging is - PowerPoint PPT Presentation

RPM Packaging How software delivery works and why RPM packaging is more current than ever Fabio Alessandro Locati 26 October 2016 Outline Intro Deployments RPM Processes RPM and Docker 1 Intro About me RPM user since 2001 IT


  1. RPM Packaging How software delivery works and why RPM packaging is more current than ever Fabio Alessandro Locati 26 October 2016

  2. Outline Intro Deployments RPM Processes RPM and Docker 1

  3. Intro

  4. About me • RPM user since 2001 • IT Consultant since 2004 • RPMs creator since 2013 2

  5. About me • RPM user since 2001 • IT Consultant since 2004 • RPMs creator since 2013 2

  6. About me • RPM user since 2001 • IT Consultant since 2004 • RPMs creator since 2013 2

  7. About me • RPM user since 2001 • IT Consultant since 2004 • RPMs creator since 2013 2

  8. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  9. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  10. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  11. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  12. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  13. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  14. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  15. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  16. Deployment in the past • Mayority of application needed to be deployed on a single system • Annual/Bi-annual • All hands on deck • Devs ready to patch • Ops ready to deploy work-around • Usually performed during night-time • Hours of downtime • Very expensive deployments 3

  17. Today expectations • Deploy multiple times every day • Cheap deployments • No down time • Need of mass deployment (tens/hundreds/thousands of systems) • Horizontal (dynamic) scalability 4

  18. Today expectations • Deploy multiple times every day • Cheap deployments • No down time • Need of mass deployment (tens/hundreds/thousands of systems) • Horizontal (dynamic) scalability 4

  19. Today expectations • Deploy multiple times every day • Cheap deployments • No down time • Need of mass deployment (tens/hundreds/thousands of systems) • Horizontal (dynamic) scalability 4

  20. Today expectations • Deploy multiple times every day • Cheap deployments • No down time • Need of mass deployment (tens/hundreds/thousands of systems) • Horizontal (dynamic) scalability 4

  21. Today expectations • Deploy multiple times every day • Cheap deployments • No down time • Need of mass deployment (tens/hundreds/thousands of systems) • Horizontal (dynamic) scalability 4

  22. Today expectations • Deploy multiple times every day • Cheap deployments • No down time • Need of mass deployment (tens/hundreds/thousands of systems) • Horizontal (dynamic) scalability 4

  23. Deployments

  24. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  25. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  26. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  27. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  28. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  29. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  30. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  31. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  32. Items that could be involved in deployments • Code • Source Control System (SCM): git, hg, svn, cvs • Build system: Koji, Jenkins, Shell • Software packaging system: RPM, DEB, Docker, WAR, generic archive • Test system: Bodhi, Jenkins • Environment packaging system: Docker, PyEnv • Orchestration tool: Ansible, Puppet, Salt, Chef, Kubernetes • Execution environment: Native OS, OpenStack, OpenShift, Docker, runc 5

  33. RPM as software packaging system • Advantages • Very well known format • Open Standard • Clear distinction between compile environment and run environment • Easy to integrate with any kind of environment • Very good at resolving dependencies • Checksum of all files • Very rigid policies • Disadvantages • Heavily connected with RPM-based distro (Fedora, RHEL, OEL, SLES, OpenSUSE, CentOS, SL) • Very rigid policies 6

  34. RPM as software packaging system • Advantages • Very well known format • Open Standard • Clear distinction between compile environment and run environment • Easy to integrate with any kind of environment • Very good at resolving dependencies • Checksum of all files • Very rigid policies • Disadvantages • Heavily connected with RPM-based distro (Fedora, RHEL, OEL, SLES, OpenSUSE, CentOS, SL) • Very rigid policies 6

Recommend


More recommend