Migraatio paikallisesta ympäristöstä pilveen
Määttä, Eemil (2024)
Määttä, Eemil
2024
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2024-11-27
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-2024110710036
https://urn.fi/URN:NBN:fi:tuni-2024110710036
Tiivistelmä
Nykyään yhä useampi organisaatio hyödyntää ohjelmistoissaan pilvipalveluja, joilla voidaan parantaa liiketoiminnan joustavuutta ja kustannustehokkuutta. Pilvipalvelut mahdollistavat erilaisten skaalautuvien resurssien käytön ilman, että käyttäjän tarvitsee omistaa tai hallita fyysistä infrastruktuuria itse. Tässä työssä perehdyttiin pilvimigraation toteuttamiseen sekä kirjallisuuskatsauksen että käytännön työn kautta. Työn ensisijaisena tavoitteena oli selvittää, miten siirtymä paikallisesta ympäristöstä julkiseen pilvipalveluun kannattaa toteuttaa. Tavoitteena oli myös tutkia pilvipalveluiden arkkitehtuuria ja tietoturvaa.
Ensin kirjallisuuskatsauksessa määriteltiin yleisimmät pilvipalvelumallit, IaaS, PaaS ja SaaS, ja selvitettiin niiden välisiä eroja. Tämän jälkeen tutkittiin mistä kokonaisuuksista pilviympäristö koostuu ja minkälainen vastuu pilvipalveluntarjoajien ja käyttäjien välillä on. Myöhemmin tarkasteltiin pilvisiirtymän vaiheita ja strategioita sekä analysoitiin pilvipalvelujen tietoturvaa.
Käytännön työn osuudessa tutustuttiin erään teollisuuden alan organisaation sovelluksen pilvisiirtymään. Tarkasteltavaa asiakkaan sovellusta siirrettiin vaiheittaisesti Azure App Service -pilvipalveluun. Sovelluksen tietokanta kontitettiin Dockerin avulla ja sovellukseen luotiin uusi web-komponentti, joka kommunikoi pilvessä olevan API:n kanssa. Tätä toteutettua siirtymää arvoitiin kirjallisuuskatsauksessa esitetyn pilvisiirtymän vaiheittaisen prosessin kautta, jonka jälkeen siirtymän hyötyjä ja haittoja analysoitiin.
Työssä havaittiin, että pilvisiirtymä on yleensä monimutkainen prosessi, joka vaatii organisaatiolta selkeän suunnitelman ja tavoitteen sekä riittävästi aikaa ja resursseja siirtymän tekemiseen. Pilvisiirtymä alkaa vaiheittaisesti ensin arvioimalla nykytilanne, jonka jälkeen suunnitellaan ja otetaan käyttöön sopiva pilvipalvelu. Käyttöönoton jälkeen suoritetaan sovelluksen migraatiovaihe, joka voi viedä organisaatiolta useita vuosia. Prosessin lopuksi keskitytään palveluiden optimointiin sekä automaation ja tietoturvan parantamiseen. Joustavuutta ja tehokkuutta suosivien ketterien menetelmien, kuten Agile-mallin, soveltaminen on suositeltavaa sekä pilvisiirtymän aikana että yleisesti pilviympäristössä toimittaessa.
Tietoturvan osalta tutkimus osoitti, että pilvipalveluiden tietoturvariskit ovat verrattavissa paikallisiin ympäristöihin, mutta turvallisuusnäkökulma on parempi sertifikaattien, auditointien ja automatisoitujen päivitysten ansiosta. Pilvipalveluissa tietoturvan vastuu jakautuu pilvipalveluntarjoajan ja asiakkaan kesken. Vastuu tietoturvasta vaihtelee valitun pilvipalvelumallin mukaan mutta palvelumallista riippumatta asiakas on kuitenkin aina lopulta vastuussa datan suojauksesta sekä identiteetin- ja pääsynhallinnasta. Nowadays, an increasing number of organizations are using cloud services in their software to improve business flexibility and cost efficiency. Cloud services enable the use of various scalable resources without the need for users to own or manage physical infrastructure themselves. This thesis focused on the implementation of cloud migration through both a literature review and a practical work. The primary goal of the work was to determine how to implement the migration from the local environment to the public cloud service. The aim was also to study the architecture and security of cloud services.
First, the literature review defined the most common cloud service models, IaaS, PaaS and SaaS, and investigated the differences between them. It was then examined what entities the cloud environment consists of and what kind of responsibility there is between cloud service providers and users. Later, the phases and strategies of cloud migration were examined, and the security of cloud services was analyzed.
In the practical part of the work, cloud migration of an industrial organization’s application was introduced. The application under review was gradually moved to the Azure App Service. The application’s database was containerized using Docker, and a new web component was created to communicate with the API in the cloud. This implemented migration was evaluated through a step-by-step process of cloud migration discussed in the literature review, after which the benefits and disadvantages of the migration were analyzed.
The study found that a cloud migration is generally a complex process that requires a clear plan and goal from the organization, as well as enough time and resources to execute the migration. Cloud migration begins with a phased approach, first by assessing the current situation, then by designing and implementing a suitable cloud service. Following the implementation, the migration phase of the application is carried out, which can take several years for an organization. At the end of the process, the focus is on optimizing services as well as improving automation and security. The application of flexible and efficient agile methods, such as the Agile model, is recommended both during cloud migration and generally when operating in a cloud environment.
Regarding security, the study showed that the security risks of cloud services are comparable to those of local environments, but the security perspective is better due to certifications, audits and automated updates. In cloud services, the responsibility for information security is shared between the cloud service provider and the customer. The responsibility for security varies according to the cloud service model chosen, but regardless of the service model, the customer is always ultimately responsible for the protection of their data as well as identity and access management.
Ensin kirjallisuuskatsauksessa määriteltiin yleisimmät pilvipalvelumallit, IaaS, PaaS ja SaaS, ja selvitettiin niiden välisiä eroja. Tämän jälkeen tutkittiin mistä kokonaisuuksista pilviympäristö koostuu ja minkälainen vastuu pilvipalveluntarjoajien ja käyttäjien välillä on. Myöhemmin tarkasteltiin pilvisiirtymän vaiheita ja strategioita sekä analysoitiin pilvipalvelujen tietoturvaa.
Käytännön työn osuudessa tutustuttiin erään teollisuuden alan organisaation sovelluksen pilvisiirtymään. Tarkasteltavaa asiakkaan sovellusta siirrettiin vaiheittaisesti Azure App Service -pilvipalveluun. Sovelluksen tietokanta kontitettiin Dockerin avulla ja sovellukseen luotiin uusi web-komponentti, joka kommunikoi pilvessä olevan API:n kanssa. Tätä toteutettua siirtymää arvoitiin kirjallisuuskatsauksessa esitetyn pilvisiirtymän vaiheittaisen prosessin kautta, jonka jälkeen siirtymän hyötyjä ja haittoja analysoitiin.
Työssä havaittiin, että pilvisiirtymä on yleensä monimutkainen prosessi, joka vaatii organisaatiolta selkeän suunnitelman ja tavoitteen sekä riittävästi aikaa ja resursseja siirtymän tekemiseen. Pilvisiirtymä alkaa vaiheittaisesti ensin arvioimalla nykytilanne, jonka jälkeen suunnitellaan ja otetaan käyttöön sopiva pilvipalvelu. Käyttöönoton jälkeen suoritetaan sovelluksen migraatiovaihe, joka voi viedä organisaatiolta useita vuosia. Prosessin lopuksi keskitytään palveluiden optimointiin sekä automaation ja tietoturvan parantamiseen. Joustavuutta ja tehokkuutta suosivien ketterien menetelmien, kuten Agile-mallin, soveltaminen on suositeltavaa sekä pilvisiirtymän aikana että yleisesti pilviympäristössä toimittaessa.
Tietoturvan osalta tutkimus osoitti, että pilvipalveluiden tietoturvariskit ovat verrattavissa paikallisiin ympäristöihin, mutta turvallisuusnäkökulma on parempi sertifikaattien, auditointien ja automatisoitujen päivitysten ansiosta. Pilvipalveluissa tietoturvan vastuu jakautuu pilvipalveluntarjoajan ja asiakkaan kesken. Vastuu tietoturvasta vaihtelee valitun pilvipalvelumallin mukaan mutta palvelumallista riippumatta asiakas on kuitenkin aina lopulta vastuussa datan suojauksesta sekä identiteetin- ja pääsynhallinnasta.
First, the literature review defined the most common cloud service models, IaaS, PaaS and SaaS, and investigated the differences between them. It was then examined what entities the cloud environment consists of and what kind of responsibility there is between cloud service providers and users. Later, the phases and strategies of cloud migration were examined, and the security of cloud services was analyzed.
In the practical part of the work, cloud migration of an industrial organization’s application was introduced. The application under review was gradually moved to the Azure App Service. The application’s database was containerized using Docker, and a new web component was created to communicate with the API in the cloud. This implemented migration was evaluated through a step-by-step process of cloud migration discussed in the literature review, after which the benefits and disadvantages of the migration were analyzed.
The study found that a cloud migration is generally a complex process that requires a clear plan and goal from the organization, as well as enough time and resources to execute the migration. Cloud migration begins with a phased approach, first by assessing the current situation, then by designing and implementing a suitable cloud service. Following the implementation, the migration phase of the application is carried out, which can take several years for an organization. At the end of the process, the focus is on optimizing services as well as improving automation and security. The application of flexible and efficient agile methods, such as the Agile model, is recommended both during cloud migration and generally when operating in a cloud environment.
Regarding security, the study showed that the security risks of cloud services are comparable to those of local environments, but the security perspective is better due to certifications, audits and automated updates. In cloud services, the responsibility for information security is shared between the cloud service provider and the customer. The responsibility for security varies according to the cloud service model chosen, but regardless of the service model, the customer is always ultimately responsible for the protection of their data as well as identity and access management.