Rostelecom Digital Products Platform. How does it work
The date of creation of the Digital Products Platform (PDP) can be considered summer 2017. The old name is Digital Sandbox, or simply Sandbox.
The infrastructure is based on two tenants based on OpenStack-KVM virtualization, located in independent data centers of the National Cloud Platform: a productive PCP stand on M9, a development stand on M10.
Due to the isolation of the company's divisions, the development needed a tool with preliminary integrations with the main services and products of Rostelecom and the ability to instantly organize a workplace. This tool became the PCP.
The creation of the platform made it possible to significantly save time on the development of digital services and products, simplifying their development and operation due to the fact that now there is no need to prepare the infrastructure from scratch. Now it is possible to easily, quickly and efficiently create websites, web applications, chat bots, various integration services, and the development team within the PDS can prototype, deploy and administer applications without the need to configure any infrastructure and technologies. The time for providing a finished stand has been reduced to several hours. All this helped to make PCP the center of the IT core of Rostelecom.
The network segment DMZ-KSPD-NOP allowed us to integrate with Rostelecom systems, which later helped launch services that work with personal data according to FZ-152.
, Open source OpenShift, Kubernetes, Docker, , , .
:
CloudNative- DevOps-, CI/CD ( ).
() , , , , .
, , , , . , ββ /, , .
, , : RDBMS (PostgreSQL, Oracle), NoSQL (Redis, MongoDB, Elasticsearch, OrientDB, Reindexer, ClickHouse), Time-series (Prometheus). -, , . , . , - , .
CI/CD
CI/CD , , :
, ,
Jira + Confluence - , .
Gitlab - , Jira.
Nexus - .
Rundeck - build-test-release .
Gitlab CI/CD, Gitlab Runner - CI/CD.
Docker - , .
OpenShift - (Pods docker-), .
Graylog, Sentry - , .
Prometheus, Zabbix, Grafana - .
(, unit , Selenium UI -, Jmeter Gatling . .).
CI/CD :
. CI/CD
(CI)
, .
CI (GitLab Runner, Rundeck ..) .
(feature-, unit- ..), , merge request, (release), ( , ..).
+ (CD)
, .
CD ( ) .
CD β , , , , . . , Gitβ. Rundeck , . Rundeck Nexus - . ! .
, Cloud Native
CI/CD Infrastructure as Code, Cloud Native, Continuous configuration automation ..
IaaS , (Ansible, Terraform) .
() docker- , Cloud Native.
OpenShift, - docker-compose, swarm ..
(Liquibase, Flyway ..).
Cloud Native
:
(Stateless). stateless-.
, .
, self API config maps OpenShift.
, ( healthcheckβ).
, , Graylog, Elastic Stack (Elastic+FluentBit), Prometheus.
Sentry ( backend- , frontend ). : .
, , .
.
Git CI OpenShift β
:
β β ()
, , . CI/CD - .
β- β
, , - .
CI/CD , . CI/CD & DevOps Enterprise.
!