<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>QUANTITATIVE AND QUALITATIVE CHANGES IN THE JINR CLOUD INFRASTRUCTURE</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>N.A. Balashov</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>I.S. Kuprikov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>N.A. Kutovskiy</string-name>
          <email>kut@jinr.ru</email>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>A.N. Makhalkin</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ye. Mazhitova</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>R.N. Semenov</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dubna State University</institution>
          ,
          <addr-line>19 Universitetskaya str., Dubna, Moscow region, 141980</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Institute of Nuclear Physics</institution>
          ,
          <addr-line>050032, 1 Ibragimova str., Almaty</addr-line>
          ,
          <country country="KZ">Kazakhstan</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Meshcheryakov Laboratory of Information Technologies, Joint Institute for Nuclear Research</institution>
          ,
          <addr-line>6 Joliot-Curie, Dubna, Moscow region, 141980</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Nikita Balashov</institution>
          ,
          <addr-line>Igor Kuprikov, Nikolay Kutovskiy, Alexandr Makhalkin, Yelena Mazhitova, Roman Semenov</addr-line>
        </aff>
        <aff id="aff4">
          <label>4</label>
          <institution>Plekhanov Russian University of Economics</institution>
          ,
          <addr-line>36 Stremyanny per., Moscow, 117997</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <fpage>5</fpage>
      <lpage>9</lpage>
      <abstract>
        <p>The high demand for JINR cloud resources facilitated its sufficient growth. It triggered changes that needed to be made to overcome encountered problems and keep QoS for users: the main part of computational resources was reorganized as pre-deployed worker nodes of the HTCondor-based computing element to decrease the load on OpenNebula services during mass jobs submission; new SSD-based ceph pool for RBD VM disks with strong disk I/O requirements; dedicated ceph-based storage for the NOvA experiment; reorganized from scratch “Infrastructure-as-a-Code” approach based on a role and profile model implemented with the help of foreman and puppet; migration to a prometheus-based software stack for resource monitoring and accounting, and some other changes.</p>
      </abstract>
      <kwd-group>
        <kwd>cloud computing</kwd>
        <kwd>OpenNebula</kwd>
        <kwd>clouds integration</kwd>
        <kwd>cloud bursting</kwd>
        <kwd>DIRAC</kwd>
        <kwd>ceph</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        The JINR cloud is one of the components of the Multifunctional Information and Computing
Complex (MICC) [
        <xref ref-type="bibr" rid="ref2">1</xref>
        ] hosted at the Meshcheryakov Laboratory of Information Technologies. The
JINR cloud has been actively developed during last few years. The amount of its resources grew
substantially. In this regard, some changes in the service architecture were made. A set of services
hosted in the JINR cloud was expanded.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Changes in the virtualization part</title>
      <p>
        Over the past few years (since the Grid’2018 conference), the amount of JINR cloud [
        <xref ref-type="bibr" rid="ref3">2</xref>
        ]
resources has sufficiently increased. There are now 176 servers for virtual machines (VMs) in total
(+96 servers since Grid’2018 contributed by the JUNO and NOvA experiments – 90 and 6 servers
respectively), 5,044 CPU non-hyperthreaded cores (+3400) and 60 TB of RAM (+52 TB).The amount
of RAM per CPU core varies from 5.3 GB up to 16 GB.
      </p>
      <p>Thousands of jobs simultaneously running on the increased amount of cloud resources led to
the saturation of the 10 Gbps network link, which connected the cloud to the JINR backbone (Fig. 13).
It resulted in the misbehavior of services deployed in the JINR cloud. Some measures were taken,
including switching to faster network equipment with a higher bandwidth.</p>
      <p>Due to the lack of manpower to support the OpenVZ driver for the OpenNebula platform, on
which the JINR cloud is based, it was decided to drop support for the driver in the JINR cloud. All
users’ OpenVZ containers were migrated to KVM-based VMs. Most of the KVM VMs have disks as
block devices in the ceph-based software-defined storage.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Changes in the storage part</title>
      <p>In addition to the general-purpose ceph-based storage with a total raw capacity of 1.1 PiB, two
new storage elements (SEs) were deployed: the first is for NOvA experiment needs only, and the
second is the pure SSD-based ceph storage for a set of production services and users with high
demands in terms of disk I/O. The main parameters of all these cloud SEs are listed in Table 1.</p>
      <sec id="sec-3-1">
        <title>Name</title>
        <sec id="sec-3-1-1">
          <title>Regular cloud HDD</title>
          <p>storage
NOvA storage HDD
Fast cloud
storage</p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>Disk type</title>
        <p>SSD</p>
      </sec>
      <sec id="sec-3-3">
        <title>Consumers</title>
        <p>all</p>
        <sec id="sec-3-3-1">
          <title>NOvA exp.</title>
        </sec>
        <sec id="sec-3-3-2">
          <title>High disk I/O users</title>
        </sec>
      </sec>
      <sec id="sec-3-4">
        <title>Ceph</title>
        <p>version
14.2.21
15.2.11
15.2.13</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Monitoring, alerting and accounting</title>
      <p>
        JINR cloud servers and some of its services are monitored by the Nagios software [
        <xref ref-type="bibr" rid="ref4">3</xref>
        ]. Apart
from that, JINR cloud metrics are gathered via a custom collector developed several years ago at
JINR. It stores collected data into the InfluxDB time series database (TSDB). Moreover, metrics from
all cloud ceph servers are aggregated using ceph prometheus plugins and the Prometheus TSDB [
        <xref ref-type="bibr" rid="ref5">4</xref>
        ].
As one can see, the set of software components used for JINR cloud metrics collection is quite wide.
Keeping it consistent and up to date takes some effort. To reduce it, it was decided to switch to a
prometheus-centric software stack: node_exporters were deployed on all cloud servers to provide
Prometheus scrapers with servers state data. The OpenNebula collector was modified to be capable to
provide metrics for the Prometheus TSDB as well (except InfluxDB). Alerting is implemented at the
Prometheus level. Grafana is used for data visualization.
      </p>
      <p>JINR cloud accounting is based on data gathered by the OpenNebula collector. Its
visualization is performed using grafana dashboards (an example is given in Fig. 14).</p>
      <p>
        Another source of information about the JINR cloud is OpenNebula log files. They are
collected with the help of filebeat [
        <xref ref-type="bibr" rid="ref6">5</xref>
        ] and sent to ElasticSearch via logstash. Data visualization is
carried out in Kibana [
        <xref ref-type="bibr" rid="ref7">6</xref>
        ].
      </p>
    </sec>
    <sec id="sec-5">
      <title>5. Infrastructure management and hardware inventory</title>
      <p>
        The JINR cloud is managed following the “Infrastructure-as-a-Code” approach when host
provisioning and management are done through machine-readable definition files. For this, the
Foreman [
        <xref ref-type="bibr" rid="ref8">7</xref>
        ] and Puppet [
        <xref ref-type="bibr" rid="ref9">8</xref>
        ] software are used. All host definition files (called “manifests” in terms of
the puppet software) implement the role and profile method. Manifests are stored in the JINR git
control versioning system [
        <xref ref-type="bibr" rid="ref10">9</xref>
        ]. Sensitive information (RSA/DSA keys, passwords, etc.) is kept in
HashiCorp Vault [
        <xref ref-type="bibr" rid="ref11">10</xref>
        ].
      </p>
      <p>
        The hardware inventory of the JINR cloud is performed on the basis of the iTop software [
        <xref ref-type="bibr" rid="ref1">11</xref>
        ],
which is Information Technology Service Management (ITSM) and IT Infrastructure Library (ITIL).
All data on the JINR cloud hardware (server vendors, models, locations, statuses, RAID controllers,
installed network cards, spare parts, used and free IP addresses, and much more) is kept in the
iTopbased service.
      </p>
    </sec>
    <sec id="sec-6">
      <title>6. Resource utilization</title>
      <p>
        JINR cloud resources are used to solve a wide range of tasks: various services for the
NOvA/DUNE, Baikal-GVD, JUNO, Daya Bay experiments; COMPASS production system [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]
components; UNECE ICP Vegetation data management system; service for the disease detection of
agricultural crops using advanced machine learning approaches; service for scientific and engineering
computations; Grafana-based service for data visualization; jupyterhub head and execute nodes for it;
gitlab and its runners, as well as a few others. Brief information about some of them is provided
below.
      </p>
      <sec id="sec-6-1">
        <title>6.1. Neutrino computing platform (NCP)</title>
        <p>Within the cooperation of the Dzhelepov Laboratory of Nuclear Problems (DNLP) and the
Meshcheryakov Laboratory of Information Technologies (MLIT), a computing platform for neutrino
experiments (NCP) was created. It consists of a set of HTCondor-based services (submit nodes, cluster
manager, worker nodes, computing elements) for the NOvA, DUNE and JUNO experiments, several
general-purpose interactive virtual machines, a forum for the Baikal-GVD experiment. At the time of
writing this article, 2,000 CPU cores for JUNO users and 1,020 CPU cores for NOvA and DUNE
users are exposed via HTCondor-CE.</p>
        <p>
          To optimize the utilization of NCP resources, it was proposed to share them among the most
resource-consuming DLNP neutrino experiments (NOvA, DUNE, JUNO and Baikal-GVD). The
Cloud Meta-Scheduler (CMSched) [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] is intended to implement such sharing by the dynamic scaling
of the HTCondor cluster on demand. The CMSched prototype was deployed and is now under testing.
        </p>
      </sec>
      <sec id="sec-6-2">
        <title>6.2. Service for scientific and engineering computations</title>
        <p>
          A service for scientific and engineering computations [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] was developed to simplify the
usage of JINR MICC resources by providing scientists with an intuitive web interface to run
computational jobs. The list of supported applications was extended sufficiently and now includes the
following:
1) Long Josephson junction (JJ) stack simulation,
2) Superconductor-Ferromagnetic-Superconductor Josephson junction simulation,
3) Annular Array of JJs average,
4) Long Josephson junction coupled with a ferromagnetic thin film,
5) Stack of short JJs,
6) Stack of short JJs with LC shunting.
        </p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusion</title>
      <p>JINR cloud resources are growing, as is the number of its users. Most of the hardware
contribution to the JINR cloud is made by neutrino experiments. Quantitative changes entail changes
in the architecture: splitting ceph storage into several instances, ceph with SSD disks for VMs
sensitive to disk I/O, network upgrade. The migration from nagios-based monitoring to
prometheusbased one is in progress. There is ongoing work to enhance the degree of automation of the
provisioning and management of JINR cloud servers, as well as of deployed services, by adding more
profiles and roles in the foreman and puppet systems.</p>
    </sec>
    <sec id="sec-8">
      <title>8. Acknowledgment</title>
      <p>The work on the storage for the NOvA experiment is supported by the Russian Science
Foundation grant, project #18-12-00271.</p>
      <p>The work on the development of the service for scientific and engineering computations is
supported by the Russian Science Foundation grant, project #18-71-10095.
web portal. Available at: https://www.combodo.com/itop-193 (accessed</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <source>[11] iTop software 06.09</source>
          .
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A.G.</given-names>
            <surname>Dolbilov</surname>
          </string-name>
          et al.,
          <source>Multifunctional Information and Computing Complex of JINR: Status and Perspectives // Proc. of the 27th International Symposium NEC'</source>
          <year>2019</year>
          , Budva, Montenegro, Vol.
          <volume>2507</volume>
          ,
          <year>2019</year>
          , pp.
          <fpage>16</fpage>
          -
          <lpage>22</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Balashov</surname>
            <given-names>N.A.</given-names>
          </string-name>
          et al.,
          <source>Present Status and Main Directions of the JINR Cloud Development // Proceedings of the 27th International Symposium Nuclear Electronics and Computing</source>
          (NEC'
          <year>2019</year>
          ), CEUR Workshop Proceedings, ISSN:
          <fpage>1613</fpage>
          -
          <lpage>0073</lpage>
          , vol.
          <volume>2507</volume>
          (
          <year>2019</year>
          ), pp.
          <fpage>185</fpage>
          -
          <lpage>189</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <article-title>[3] Nagios monitoring software official web portal</article-title>
          . Available at: https://www.nagios.
          <source>org (accessed 03.09</source>
          .
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <article-title>[4] Prometheus web portal</article-title>
          . Available at: https://prometheus.
          <source>io (accessed 03.09</source>
          .
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <article-title>[5] Home page of the filebeat component of the ElasticSearch software stack</article-title>
          . Available at: https://www.elastic.co/beats/filebeat (accessed
          <volume>06</volume>
          .09.
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Balashov</surname>
            <given-names>N.A.</given-names>
          </string-name>
          et al.,
          <source>Using ELK Stack for Event Log Acquisition and Analysis // Modern Information Technologies and IT Education</source>
          , Vol.
          <volume>17</volume>
          , #
          <volume>1</volume>
          ,
          <year>2021</year>
          , ISSN:
          <fpage>2411</fpage>
          -
          <lpage>1473</lpage>
          , pp.
          <fpage>125</fpage>
          -
          <lpage>134</lpage>
          . DOI 10.25559/SITITO.17.202101.731
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <article-title>[7] Foreman software web portal</article-title>
          . Available at: https://theforeman.
          <source>org (accessed 06.09</source>
          .
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <article-title>[8] Puppet software web portal</article-title>
          . Available at: https://puppet.
          <source>com (accessed 06.09</source>
          .
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <article-title>[9] JINR git portal</article-title>
          . Available at: https://git.jinr.
          <source>ru (accessed 06.09</source>
          .
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [10]
          <article-title>HashiCorp Vault web portal</article-title>
          . Available at: https://www.vaultproject.
          <source>io (accessed 06.09</source>
          .
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Petrosyan</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <source>COMPASS Production System Overview // EPJ Web of Conferences</source>
          , Vol.
          <volume>214</volume>
          ,
          <year>2019</year>
          . DOI:
          <volume>10</volume>
          .1051/epjconf/201921403039
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>N.</given-names>
            <surname>Balashov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Kutovskiy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Tsegelnik</surname>
          </string-name>
          , Resource Management in Private Multi-Service Cloud Environments // to be appeared in
          <source>the proceedings of the 9th International Conference "Distributed Computing</source>
          and
          <article-title>Grid Technologies in Science and Education" (GRID'</article-title>
          <year>2021</year>
          ), Dubna,
          <source>Russia, July 5-9</source>
          ,
          <fpage>2021</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>N.</given-names>
            <surname>Balashov</surname>
          </string-name>
          et al.,
          <source>JINR Cloud Service for Scientific and Engineering Computations // Modern Information Technologies and IT Education</source>
          , Vol.
          <volume>14</volume>
          (
          <issue>1</issue>
          ),
          <year>2018</year>
          , pp.
          <fpage>57</fpage>
          -
          <lpage>68</lpage>
          . DOI:
          <volume>10</volume>
          .25559/SITITO.14.201801.
          <fpage>061</fpage>
          -
          <lpage>072</lpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>