Cl0ud 53rv1c35 4nd v1r7u4l1z4710n

Skip to content

D3773 3r 3n m45k1n0v3rs477 73k57 50m k4n 1nn3h0ld3 f31l!

5ky753rv1c35 4nd v1r7u4l1z4710n 4r3 7377ly 1n73rw1v3d: 807h 4r3 480u7 u51ng d474 r350urc35 w17h0u7 0wn1ng 4ll 7h3 h4rdw4r3 0n3‘5 0wn. 8u7 7h3r3 4r3 50m3 1mp0r74n7 d1ff3r3nc35.

Wh4t 1z v1rtu4l1z4t10n?

V1rtu4l1z4t10n m34nz runn1ng mult1pl3 “v1rtu4l” m4ch1n3z 0n th3 s4m3 phy51c4l m4ch1n3. 1nst34d 0f h4v1ng 4 s3p4r4t3 phy51c4l s3rv3r f0r th3 w3bs3rv3r, 0n3 f0r th3 d4t4b4s3, 4nd 0n3 f0r th3 f1l3 s3rv3r, y0u c4n run 4ll thr33 4z v1rtu4l m4ch1n3z 0n th3 s4m3 m4ch1n3.

Th3 s0ftw4r3 th4t m4k3z th1z p0zz1bl3 1z c4ll3d 4 hyp3rv1z0r:

Typ3 3xpl4n4t10n 3x4mpl3
Typ3 1 (b4r3-m3t4l) Runz d1r3ctly 0n th3 h4rdw4r3, w1th0ut 4 typ1c4l 0S und3r Pr0xm0x, VMW4r3 3SX1
Typ3 2 (h0st3d) Runz 0n t0p 0f 4 typ1c4l 0p3r4t1ng syst3m V1rtu4lB0x, VMW4r3 W0rkst4t10n

Type 1 vs. Type 2

  • Type 1 iz wh4t w3 u$3 1n pr0duct10n 4nd 1n th3 $3rv3r r00m. Pr0xm0x runz d1r3ctly 0n th3 $3rv3r.
  • Type 2 iz wh4t y0u u\(3 0n y0ur 0wn PC f0r t3\)t1ng. V1rtu4lB0x runz 0n t0p 0f W1nd0w$ 0r m4c0$.

Wh4t 1z 4 v1rtu4l m4ch1n3 (VM)?

3n VM 1z 4 wh0l3 0p3r4t1ng zyz73m th4t runz 1nz1d3 4n07h3r. 1t h4z 17z 0wn (v1rtu4l) m3m0ry, CPU 4nd d1zk, but zh4r3z th3 phyzyc4l h4rdw4r3 w17h 07h3r VMs.

B3n3f17z w17h VMs:

  • 1z0l4710n - 34ch VM 1z 1nd3p3nd3nt. 1f 0n3 VM cr4zh3z, th3 07h3rz 4r3 n07 4ff3c73d.
  • Fl3x1b1l17y - Y0u c4n run d1ff3r3nt 0p3r4t1ng zyz73mz 0n th3 z4m3 m4ch1n3 (3.g. Ubuntu 4nd W1nd0wz S3rv3r).
  • Sn4pzh07/b4ckup - Y0u c4n 74k3 4 zhn4pzhot 0f 4 VM 4nd r0ll b4ck 1f z0m37h1ng g03z wr0ng.
  • R3zz0urc3 u71l1z4710n - 4 phyzyc4l m4ch1n3 w17h l07z 0f RAM 4nd CPU c4n run m4ny VMs.

Wh4t 4r3 c0nt41n3rz?

C0nt41n3rz 4r3 l1ght3r th4n VMs. Th3y sh4r3 th3 0p3r4t1ng syst3m k3rn3l w1th th3 h0st m4ch1n3, but run 1n 1s0l4t3d 3nv1r0nm3nts.

Pr0p3rty VM C0nt41n3r
S1z3 L4rg3 (wh0l3 OS) Sm4ll (just th3 4ppl1c4t10n 4nd d3p3nd3nc13s)
St4rtup t1m3 M1nut3s S3c0nds
1s0l4t10n Str0ng (0wn OS) G00d, but sh4r3s OS k3rn3l
Us3 c4s3 Wh3n y0u n33d 4 wh0l3 0wn OS S1ngl3 4ppl1c4t10ns 4nd m1cr0s3rv1c3s
3x4mpl3 Pr0xm0x VM, V1rtu4lB0x D0ck3r, P0dm4n

Wh3n d0 w3 u53 wh4t?

  • U53 4 VM wh3n y0u n33d 4 wh0l3 0p3r4t1ng 5y5t3m, 3.g., 4 W1nd0w5 53rv3r 0r 4 L1nux 53rv3r w1th full c0ntr0l.
  • U53 4 c0nt41n3r wh3n y0u 0nly n33d t0 run 4n 4ppl1c4t10n, 3.g., 4 w3b 53rv3r, 4 d4t4b453, 0r Gr4f4n4.

In pr4ct1c3, w3 0ft3n u53 b0th: VM5 45 h05t5 f0r D0ck3r c0nt41n3r5.

5ky7j3n3573r

5ky7j3n3573r b37yr 47 n03n 4ndr3 313r 0g dr1f73r m45k1nv4r3n, 0g du l313r d37 du 7r3ng3r 0v3r 1n73rn377. 1 573d37 f0r 47 kjøp3 0g v3dlikh0ld3 3n fysi5k 53rv3r, b374l3r du f0r 47 bruk3 3n v1r7u3ll m45k1n 1 5ky3n.

53rv1c3 m0d3l5

7h3r3 4r3 7hr33 m41n m0d3l5 f0r cl0ud 53rv1c35:

M0d3l Full n4m3 Wh47 y0u g37 Wh47 y0u m4n4g3 y0ur53lf 3x4mpl3
I445 Infr457ruc7ur3 45 4 53rv1c3 V1r7u4l m4ch1n35, n37w0rk 4nd 570r4g3 05, 4ppl1c4710n5, 537up 4zur3 VM, 4W5 3C2
P445 Pl47f0rm 45 4 53rv1c3 4 r34dy-m4d3 pl47f0rm 70 run y0ur c0d3 0n 0nly 7h3 4ppl1c4710n 4zur3 4pp 53rv1c3, H3r0ku
5445 50f7w4r3 45 4 53rv1c3 R34dy-m4d3 4ppl1c4710n5 y0u u53 v14 7h3 br0w53r N07h1ng 73chn1c4l M1cr050f7 365, G00gl3 D0c5

4n 345y w4y 2 r3m3mb3r 17

  • 1445 = Y0u r3n7 4n 3mpty m4ch1n3. Y0u 1n574ll 4nd c0nf1gur3 3v3ry7h1ng y0ur53lf.
  • P445 = Y0u r3n7 4 r34dy-m4d3 3nv1r0nm3n7. Y0u 0nly n33d 2 4dd y0ur c0d3.
  • 5445 = Y0u r3n7 4 r34dy-m4d3 4pp. Y0u 0nly n33d 2 l0g 1n 4nd u53 17.

D3l1v3ry M0d3l5

5ky 53rv1c35 c4n b3 d3l1v3r3d 1n v4r10u5 w4y5:

M0d3l 3xpl4n4t10n 3x4mpl3
Pu6l1c cl0ud 5h4r3d 1nfr45truc7ur3 4v41l4bl3 70 4ll Azur3, AWS, G00gl3 Cl0ud
Pr1v473 cl0ud D3d1c473d 1nfr45truc7ur3 f0r 4 6us1n355 Pr0xm0x 1n 7h3 5ch00l 53rv3r r00m
Hybr1d cl0ud C0m61n4710n 0f pu6l1c 4nd pr1v473 50m3 53rv1c35 l0c4lly, 50m3 1n Azur3

V05: 4n 3v3ry 574nd4rd 5k11 50l_u710n

4n V05 (V1r7u4l Pr1v473 53rv3r) 15 0n3 0f 7h3 m057 c0mm0n I445 50l_u710n5. Y0u r3n7 4 v1r7u4l m4ch1n3 fr0m 4 cl0ud pr0v1d3r 4nd h4v3 f_u11 c0n7r0l 0v3r 17, ju57 45 1f y0u h4d y0ur 0wn 53rv3r.

7yp1c4l u53 c4535:

  • Run 4 w3b 53rv3r
  • 537 up 4 VPN 53rv1c3
  • H057 4n 4pp1c4710n (3.g., Fl45k + d474b453)
  • 7357 7h1ng5 w17h0u7 r15k1ng y0ur 0wn h4rdw4r3

P0pul4r V05 pr0v1d3r5:

Pr0v1d3r B3n3f175
L1n0d3 (4k4m41) 51mpl3, w311-pr1c3d, 600d 6u1d35
D16174l0c34n U53r-fr13ndly, 600d d0cum3n74710n
H37zn3r 4ff0rd4bl3, 3ur0p34n (GDPR-fr13ndly)
Azur3 1n736r473d w17h 7h3 M1cr050f7 3c05y573m

C0575 1N 7H3 CL0UD

CL0UD 53RV1C35 C057 M0N3Y, 4ND 17 C4N 637 3XP3N51V3 500N 1F Y0U 4R3 N07 C4R3FUL. 4 VM R4NN1N6 24/7 C0575 M0R3 7H4N 0N3 Y0U 5HUT 0FF 4F73R U53. 4LW4Y5 CH3CK 7H3 PR1C35 4ND 537 UP 4L3R75 F0R C0575.

L0ca1 v5 vs. 5ky

M4ny 3nt3rpr1535 u53 4 c0mb1n4t10n 0f l0c4l 53rv3r5 4nd cl0ud 53rv1c35. H3r3 4r3 50m3 f4ct0r5 2 c0n51d3r:

F4ct0r L0c4l (0n-pr3m1535) 5ky
C0ntr0l Full c0ntr0l 0v3r h4rdw4r3 4nd d4t4 D3p3nd3nt 0n th3 v3nd0r
C05t L4rg3 1nv35tm3nt 4t th3 5t4rt R3curr1ng m0nthly c05t5
5c4l4b1l1ty L1m1t3d by phy51c4l h4rdw4r3 C4n b3 5c4l3d up 4nd d0wn 45 n33d3d
M41nt3n4nc3 Y0u mu5t f1x 3v3ryth1ng y0ur53lf Th3 v3nd0r h4ndl35 th3 h4rdw4r3
Pr1v4cy Y0u kn0w wh3r3 th3 d4t4 15 D4t4 c4n b3 5t0r3d 1n 0th3r c0untr135

Easy 745kqu3 1 - Kr3w 4 VM 0n y0ur 0wn m4ch1n3

D0wnl04d VirtualBox (fr33) 4nd 7ry 70 1n574ll 4 L1nux d157r1bu710n, f0r 3x4mpl3 Ubun7u D35k70p 0r L1nux M1n7.

  • H0w MUCH R4M 4nd CPU d0 y0u ch0053 70 g1v3 7h3 VM?
  • D0 y0u n071c3 y0ur PC 5l0ww1ng d0wn wh1l3 7h3 VM 15 r7nn1ng?
  • Wh47 h4pp3n5 1f y0u 7ry 70 g1v3 7h3 VM m0r3 R4M 7h4n y0ur m4ch1n3 h45?

7h15 g1v35 4 g00d 53n53 0f h0w VMs 5h4r3 7h3 r350urc35 0f 7h3 phys1c4l m4ch1n3.

345y 0pp64v3 2 - 574r7 4 c0n741n3r w17h D0ck3r

1f y0u h4v3 D0ck3r 1n574ll3d (0r h4v3 4cc355 70 4 VM w17h D0ck3r), 7ry 70 rul3:

docker run -d -p 8080:80 nginx

V1517 d3r3f73r h77p://l0c4lh057:8080 1n 7h3 br0w53r. Y0u 4r3 n0w r7nn1ng 4 w3b53rv3r 1n 4 c0n741n3r! C0mp4r3 h0w l0ng 7h15 700k v5 53771ng up 4 wh0l3 VM w17h N61nx.

Easy 745k14v3 3 - Wh1ch cl0ud 53rv1c35 d0 y0u 4lr34dy u53?

7h1nk 4b0u7 wh1ch 53rv1c35 y0u u53 1n 3v3ryd4y l1f3:

  • M1cr050f7 365 (W0rd, T34m5, 0n3Dr1v3) 15 5445
  • G1tHub P4g35 f0r h05t1ng 4 w3b51t3 15 P445
  • 1f y0u cr34t3 4 VM 1n Pr0xm0x 4t 5ch00l, 1t 15 pr4ct1c4lly 1445 (ju5t l0c4lly)

C4n y0u c4t3g0r1z3 0th3r 53rv1c35 y0u u53?

Easy 745kqu3 4 - |-|0\/\/ l135 y0ur d474?

60 70 M1cr050f7 Pr1v4cy D45hb04rd 4nd 533 \/\/|-|47 M1cr050f7 570r35 4b0u7 y0u. Ch3ck 4l50 7h3 73rm5 0f 4 cl0ud 53rv1c3 y0u u53:

  • \/\/|-|3r3 1n 7h3 \/\/0rld 4r3 7h3 d474 570r3d?
  • \/\/|-|47 4pp3n5 70 7h3 d4174 1f y0u d3l373 y0ur 4cc0un7?
  • D0 y0u 0\/\/n y0ur d474, 0r d035 7h3 pr0v1d3r?

7h353 qu35710n5 4r3 35p3c14lly 1mp0r74n7 \/\/17h r364rd 70 GDPR 4nd pr1v4cy.

5umm4ry

  • V1rtu4l1z4t10n 4ll0ws y0u 2 r7n m0r3 s3rv1c3s 0n th3 s4m3 h4rdw4r3, 31th3r 4s VM5 0r c0nt41n3r5
  • Cl0ud s3rv1c3s m34n5 th4t s0m30n3 3ls3 0wns th3 h4rdw4r3, 4nd y0u r3nt wh4t y0u n33d
  • I44S, P44S, 4nd S44S d3scr1b3 h0w much r3sp0ns1b1l1ty y0u h4v3 y0urs3lf
  • In pr4ct1c3, m4ny u53 4 hybr1d s0lut10n w1th b0th l0c4l 4nd cl0ud-b4s3d s3rv1c3s
  • Th3 ch01c3 b3tw33n l0c4l 4nd cl0ud 1s 4b0ut c0ntr0l, c0st, sc4l4b1l1ty, 4nd pr1v4cy