Dokumen tersebut memberikan contoh penerapan DevOps pada dua sistem aplikasi warisan (legacy system) yaitu sistem inti asuransi dan aplikasi publik web/mobile. Sistem tersebut menggunakan topologi DevOps tim khusus dengan masa kerja terbatas untuk menghubungkan tim pengembang dan infrastruktur. Berbagai alat digunakan untuk mengelola siklus hidup pengembangan mulai dari penyimpanan kode sumber, pengujian, hingga deploy
2. Langkah-langkah yang perlu dilakukan:
• Identifikasi Spesifikasi Aplikasi
• Menentukan Pola Topology
• Menentukan Tools
• Review
3. Contoh A : Legacy System
Insurance Core System
Diambil dari: https://novarica.com/core-systems/
4. Software Specs:
• Based on Life/400 (COBOL/RPG) Legacy System
• Operational web app build on Java (Spring Boot) & Oracle
DB
• Interconnected to Life/400 via terminal emulator
5. Diagram
Production (fully isolated - off premises)
On Premises Staging ServersDev Servers
*AS/400 simulator *AS/400 simulator
Development Env
DevOps
Ops Responsibility
Dev Responsibility
6. DevOps Topology
• Type 6: DevOps Advocacy
Team
• Menggandeng konsultan
ahli DevOps
https://web.devopstopologies.com/
8. Pemilihan Tools
Sebagai source
code repository
Sebagai Source Code /
Technical Debt
monitoring
+ Static Code Review
Sebagai Management
Build Tools
Internal Group Ware/
Communication Apps
Sebagai scenario test &
Load Tester / Stress
Tester
Untuk membantu
migrasi dari Dev
ke Staging
Manual
deployment ke
Production
9. Contoh B : Legacy System
Insurance Core System + Public Web/Mobile Apps
Diambil dari: https://novarica.com/core-systems/
10. Software Specs
• Architecture: monolith - 3
tiers
• Back End:
– Java
– Spring Boot
– JDK 1.8
– DB: Oracle DB
• Front End:
– Web: JavaJSF
– Mobile: Android/Ios using Ionic
11. Modules
• Presentation Layer:
– Agent Web Portal
– User Web Portal
– Back Office Web Portal
– BI & Analytics Reporting
– Mobile Apps
• Business Logic Layer
– All insurance core modules in monolith pattern
• Data Layer:
– Oracle DB Cluster
12. DevOps Topology
• Type 5: DevOps Team with
an Expiry Date
• Pilot project dengan
jangka waktu pengerjaan
12 bulan
• Dibentuk tim (taskforce)
khusus sebagai DevOps,
untuk menjembatani tim
Dev dan Infra
https://web.devopstopologies.com/
13. Stage Server:
• Ada 3 stage server:
– Dev Server (dipakai oleh developers selama proses pengerjaan aplikasi)
– Staging Server (untuk keperluan UAT & QC)
– Production Server (manual deployment karena harus mengikuti prosedur/regulasi formal)
• Dev & Staging Server (isolated):
– Baremetal
– with Vagrant (Hashicorp)
– CentOS 7
• Production Server Specs:
– With VMWare ESXi Virtualization
– Red Hat Enterprise Linux 7
– 16 vCPU
– 64 GB RAM
14. Pemilihan Tools
Sebagai source
code repository
Sebagai Source Code /
Technical Debt
monitoring
+ Static Code Review
Sebagai Build Tools
Sebagai task
management &
issue tracking
Sebagai scenario test &
Load Tester / Stress
Tester
Untuk membantu
migrasi dari Dev
ke Staging
Manual
deployment ke
Production