ಪ್ರೊಹೋಸ್ಟರ್ > Блог > ಆಡಳಿತ > DBaaS ಅನ್ನು ಬದಲಿಸಬಹುದಾದ Kubernetes ಅನ್ನು ಬಳಸಿಕೊಂಡು ಹೈಬ್ರಿಡ್ ಕ್ಲೌಡ್ ಅನ್ನು ಹೇಗೆ ನಿರ್ಮಿಸುವುದು
DBaaS ಅನ್ನು ಬದಲಿಸಬಹುದಾದ Kubernetes ಅನ್ನು ಬಳಸಿಕೊಂಡು ಹೈಬ್ರಿಡ್ ಕ್ಲೌಡ್ ಅನ್ನು ಹೇಗೆ ನಿರ್ಮಿಸುವುದು
ನನ್ನ ಹೆಸರು ಪೆಟ್ರ್ ಜೈಟ್ಸೆವ್, ನಾನು ಸಿಇಒ, ಸಂಸ್ಥಾಪಕ ಪೆರ್ಕೋನಾ ಮತ್ತು ನಾನು ನಿಮಗೆ ಹೇಳಲು ಬಯಸುತ್ತೇನೆ:
ನಾವು ಹೇಗೆ ತೆರೆದ ಮೂಲ ಪರಿಹಾರಗಳಿಂದ ಡೇಟಾಬೇಸ್ಗೆ ಸೇವೆಯಾಗಿ ಬಂದಿದ್ದೇವೆ;
ಕ್ಲೌಡ್ನಲ್ಲಿ ಡೇಟಾಬೇಸ್ಗಳನ್ನು ನಿಯೋಜಿಸಲು ಯಾವ ವಿಧಾನಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ;
ಕುಬರ್ನೆಟ್ಸ್ DBaaS ಅನ್ನು ಹೇಗೆ ಬದಲಾಯಿಸಬಹುದು, ಮಾರಾಟಗಾರರ ಅವಲಂಬನೆಯನ್ನು ತೆಗೆದುಹಾಕುವುದು ಮತ್ತು DBMS ನ ಸರಳತೆಯನ್ನು ಸೇವೆಯಾಗಿ ನಿರ್ವಹಿಸುವುದು.
Mail.ru Cloud Solutions & Tarantool ನಿಂದ @Databases Meetup ನಲ್ಲಿನ ವರದಿಯನ್ನು ಆಧರಿಸಿ ಲೇಖನವನ್ನು ಸಿದ್ಧಪಡಿಸಲಾಗಿದೆ. ನೀವು ಓದಲು ಬಯಸದಿದ್ದರೆ, ನೀವು ವೀಕ್ಷಿಸಬಹುದು:
ಕ್ಲೌಡ್ನಲ್ಲಿ ಸೇವೆಯಾಗಿ ನಾವು ಓಪನ್ ಸೋರ್ಸ್ನಿಂದ ಡೇಟಾಬೇಸ್ಗೆ ಹೇಗೆ ಬಂದಿದ್ದೇವೆ
ನಾನು 90 ರ ದಶಕದ ಉತ್ತರಾರ್ಧದಿಂದ ಮುಕ್ತ ಮೂಲದಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದೇನೆ. ಇಪ್ಪತ್ತು ವರ್ಷಗಳ ಹಿಂದೆ, ಡೇಟಾಬೇಸ್ಗಳಂತಹ ಮುಕ್ತ ಮೂಲವನ್ನು ಬಳಸುವುದು ಅಷ್ಟು ಸುಲಭವಲ್ಲ. ಮೂಲ ಕೋಡ್ ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡುವುದು, ಪ್ಯಾಚ್ ಮಾಡುವುದು, ಕಂಪೈಲ್ ಮಾಡುವುದು ಮತ್ತು ನಂತರ ಮಾತ್ರ ಅದನ್ನು ಬಳಸುವುದು ಅಗತ್ಯವಾಗಿತ್ತು.
ಓಪನ್ ಸೋರ್ಸ್ ನಂತರ ಸರಳೀಕರಣಗಳ ಸರಣಿಯ ಮೂಲಕ ಹೋಯಿತು:
Tar.gz ಮತ್ತು ಕಂಪೈಲ್ ಮಾಡಬೇಕಾದ ಮೂಲಗಳನ್ನು ಸ್ಥಾಪಿಸಿ;
.deb ಮತ್ತು .rpm ನಂತಹ ಅವಲಂಬನೆಗಳೊಂದಿಗೆ ಪ್ಯಾಕೇಜ್ಗಳು, ಅಲ್ಲಿ ನೀವು ಪ್ಯಾಕೇಜ್ಗಳ ಗುಂಪನ್ನು ಮಾತ್ರ ಸ್ಥಾಪಿಸಬೇಕಾಗುತ್ತದೆ;
APT ಮತ್ತು YUM ನಂತಹ ಪ್ಯಾಕೇಜ್ ರೆಪೊಸಿಟರಿಗಳು, ಅದರೊಂದಿಗೆ ಅನುಸ್ಥಾಪನೆಯು ಸ್ವಯಂಚಾಲಿತವಾಗಿರುತ್ತದೆ;
ಡಾಕರ್ ಮತ್ತು ಸ್ನ್ಯಾಪ್ನಂತಹ ಪರಿಹಾರಗಳು, ಬಾಹ್ಯ ಅವಲಂಬನೆಗಳಿಲ್ಲದೆ ಅನುಸ್ಥಾಪನೆಯ ಮೂಲಕ ಪ್ಯಾಕೇಜ್ಗಳನ್ನು ಸ್ವೀಕರಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
ಪರಿಣಾಮವಾಗಿ, ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಬಳಸುವುದು ಸುಲಭವಾಗುತ್ತದೆ ಮತ್ತು ಅಂತಹ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು ಪ್ರವೇಶದ ತಡೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ.
ಅದೇ ಸಮಯದಲ್ಲಿ, 20 ವರ್ಷಗಳ ಹಿಂದೆ ಪರಿಸ್ಥಿತಿಗಿಂತ ಭಿನ್ನವಾಗಿ, ಪ್ರತಿಯೊಬ್ಬರೂ ಅಸೆಂಬ್ಲಿ ಪರಿಣಿತರಾಗಿದ್ದಾಗ, ಈಗ ಹೆಚ್ಚಿನ ಡೆವಲಪರ್ಗಳು ಅವರು ಮೂಲದಿಂದ ಬಳಸುವ ಸಾಧನಗಳನ್ನು ನಿರ್ಮಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ.
ವಾಸ್ತವವಾಗಿ, ಇದು ಕೆಟ್ಟದ್ದಲ್ಲ, ಏಕೆಂದರೆ:
ನಾವು ಹೆಚ್ಚು ಸಂಕೀರ್ಣವಾದ ಆದರೆ ಹೆಚ್ಚು ಬಳಕೆದಾರ ಸ್ನೇಹಿ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ, ಬ್ರೌಸರ್ ಬಳಸಲು ಅನುಕೂಲಕರವಾಗಿದೆ, ಆದರೆ ಇದು ಅನೇಕ ತೆರೆದ ಮೂಲ ಘಟಕಗಳನ್ನು ಒಳಗೊಂಡಿದೆ ಮತ್ತು ಮೊದಲಿನಿಂದ ನಿರ್ಮಿಸಲು ಅನಾನುಕೂಲವಾಗಿದೆ.
ಹೆಚ್ಚಿನ ಜನರು ತೆರೆದ ಮೂಲ ಮತ್ತು ಇತರ ಸಾಫ್ಟ್ವೇರ್ಗಳ ಡೆವಲಪರ್ಗಳಾಗಬಹುದು, ಹೆಚ್ಚಿನ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ವ್ಯಾಪಾರಗಳು ಬಳಸುತ್ತವೆ ಮತ್ತು ಅದರ ಅಗತ್ಯವು ಹೆಚ್ಚಾಗಿರುತ್ತದೆ.
ಅನನುಕೂಲವೆಂದರೆ ಸರಳೀಕರಣದ ಮುಂದಿನ ಹಂತವು ಕ್ಲೌಡ್ ಪರಿಹಾರಗಳ ಬಳಕೆಗೆ ಸಂಬಂಧಿಸಿದೆ, ಮತ್ತು ಇದು ನಿರ್ದಿಷ್ಟ ಮಾರಾಟಗಾರರ ಲಾಕ್-ಇನ್ಗೆ ಕಾರಣವಾಗುತ್ತದೆ, ಅಂದರೆ, ಒಬ್ಬ ಪೂರೈಕೆದಾರರಿಗೆ ಬಂಧಿಸುತ್ತದೆ. ನಾವು ಸರಳ ಪರಿಹಾರಗಳನ್ನು ಬಳಸುತ್ತೇವೆ ಮತ್ತು ಪೂರೈಕೆದಾರರು ತೆರೆದ ಮೂಲ ಘಟಕಗಳನ್ನು ಬಳಸುತ್ತಾರೆ, ಆದರೆ ವಾಸ್ತವವಾಗಿ ಅವುಗಳನ್ನು ದೊಡ್ಡ ಮೋಡಗಳಲ್ಲಿ ಒಂದಕ್ಕೆ ಹೊಡೆಯಲಾಗುತ್ತದೆ. ಅಂದರೆ, ಒಡೆತನದ API ಅನ್ನು ಬಳಸಿಕೊಂಡು ಕ್ಲೌಡ್ಗಳಲ್ಲಿ ತೆರೆದ ಮೂಲವನ್ನು (ಮತ್ತು ಅದರೊಂದಿಗೆ ಹೊಂದಿಕೊಳ್ಳುವ ಸಾಫ್ಟ್ವೇರ್) ನಿಯೋಜಿಸಲು ಸುಲಭವಾದ ಮತ್ತು ವೇಗವಾದ ಮಾರ್ಗವಾಗಿದೆ.
ಕ್ಲೌಡ್ನಲ್ಲಿ ಡೇಟಾಬೇಸ್ಗಳಿಗೆ ಬಂದಾಗ, ಎರಡು ವಿಧಾನಗಳಿವೆ:
ನಿಯಮಿತ ಡೇಟಾ ಕೇಂದ್ರದಲ್ಲಿರುವಂತೆ ಡೇಟಾಬೇಸ್ ಮೂಲಸೌಕರ್ಯವನ್ನು ಜೋಡಿಸಿ. ಅಂದರೆ, ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಬಿಲ್ಡಿಂಗ್ ಬ್ಲಾಕ್ಸ್ ತೆಗೆದುಕೊಳ್ಳಿ: ಕಂಪ್ಯೂಟ್, ಸ್ಟೋರೇಜ್, ಮತ್ತು ಹೀಗೆ, ಲಿನಕ್ಸ್ ಮತ್ತು ಡೇಟಾಬೇಸ್ ಅನ್ನು ಸ್ಥಾಪಿಸಿ ಮತ್ತು ಅವುಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ.
ಡೇಟಾಬೇಸ್ ಅನ್ನು ಸೇವೆಯಾಗಿ ಬಳಸಿ, ಅಲ್ಲಿ ಒದಗಿಸುವವರು ಕ್ಲೌಡ್ನೊಳಗೆ ಸಿದ್ಧವಾದ ಡೇಟಾಬೇಸ್ ಅನ್ನು ನೀಡುತ್ತಾರೆ.
DBaaS ಇದೀಗ ವೇಗವಾಗಿ ಬೆಳೆಯುತ್ತಿರುವ ಮಾರುಕಟ್ಟೆಯಾಗಿದೆ ಏಕೆಂದರೆ ಇದು ಡೆವಲಪರ್ಗಳಿಗೆ ಡೇಟಾಬೇಸ್ಗಳೊಂದಿಗೆ ನೇರವಾಗಿ ಕೆಲಸ ಮಾಡಲು ಅನುಮತಿಸುತ್ತದೆ ಮತ್ತು ದಿನನಿತ್ಯದ ಕೆಲಸವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. ಹೆಚ್ಚಿನ ಲಭ್ಯತೆ ಮತ್ತು ಸುಲಭ ಸ್ಕೇಲಿಂಗ್, ಡೇಟಾಬೇಸ್ ಪ್ಯಾಚಿಂಗ್, ಬ್ಯಾಕ್ಅಪ್ಗಳು ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆ ಟ್ಯೂನಿಂಗ್ ಅನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಪೂರೈಕೆದಾರರು ಕೈಗೊಳ್ಳುತ್ತಾರೆ.
ತೆರೆದ ಮೂಲವನ್ನು ಆಧರಿಸಿದ ಸೇವೆಯಾಗಿ ಎರಡು ರೀತಿಯ ಡೇಟಾಬೇಸ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್ ರೂಪದಲ್ಲಿ ಪರ್ಯಾಯವಾಗಿದೆ
ತೆರೆದ ಡೇಟಾಬೇಸ್ಗಳಿಗೆ ಸೇವೆಯಾಗಿ ಎರಡು ರೀತಿಯ ಡೇಟಾಬೇಸ್ಗಳಿವೆ:
ಸುಲಭವಾದ ನಿಯೋಜನೆ ಮತ್ತು ನಿರ್ವಹಣೆಗಾಗಿ ಆಡಳಿತದ ಬ್ಯಾಕೆಂಡ್ನಲ್ಲಿ ಪ್ಯಾಕ್ ಮಾಡಲಾದ ಪ್ರಮಾಣಿತ ಮುಕ್ತ ಮೂಲ ಉತ್ಪನ್ನ.
ವಿವಿಧ ಆಡ್-ಆನ್ಗಳೊಂದಿಗೆ ಸುಧಾರಿತ ವಾಣಿಜ್ಯ ಪರಿಹಾರ, ಮುಕ್ತ ಮೂಲದೊಂದಿಗೆ ಹೊಂದಿಕೊಳ್ಳುತ್ತದೆ.
ಎರಡೂ ಆಯ್ಕೆಗಳು ಮೋಡಗಳ ನಡುವೆ ವಲಸೆಯ ಸಾಧ್ಯತೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ ಮತ್ತು ಡೇಟಾ ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ಗಳ ಪೋರ್ಟಬಿಲಿಟಿಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ವಿವಿಧ ರೀತಿಯ ಮೋಡಗಳು ಮೂಲಭೂತವಾಗಿ ಅದೇ ಪ್ರಮಾಣಿತ MySQL ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ ಎಂಬ ಅಂಶದ ಹೊರತಾಗಿಯೂ, ಅವುಗಳ ನಡುವೆ ಗಮನಾರ್ಹ ವ್ಯತ್ಯಾಸಗಳಿವೆ: ಕಾರ್ಯಾಚರಣೆಯಲ್ಲಿ, ಕಾರ್ಯಕ್ಷಮತೆ, ಬ್ಯಾಕ್ಅಪ್, ಇತ್ಯಾದಿ. ಒಂದು ಮೋಡದಿಂದ ಇನ್ನೊಂದಕ್ಕೆ ವಲಸೆ ಹೋಗುವುದು ವಿಶೇಷವಾಗಿ ಸಂಕೀರ್ಣವಾದ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಸವಾಲಾಗಿರಬಹುದು.
ಮತ್ತು ಇಲ್ಲಿ ಪ್ರಶ್ನೆ ಉದ್ಭವಿಸುತ್ತದೆ - ಡೇಟಾಬೇಸ್ನ ಅನುಕೂಲತೆಯನ್ನು ಸೇವೆಯಾಗಿ ಪಡೆಯಲು ಸಾಧ್ಯವೇ, ಆದರೆ ಸರಳವಾದ ಮುಕ್ತ ಮೂಲ ಪರಿಹಾರವಾಗಿ?
ಕೆಟ್ಟ ಸುದ್ದಿ ಏನೆಂದರೆ, ದುರದೃಷ್ಟವಶಾತ್, ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಅಂತಹ ಯಾವುದೇ ಪರಿಹಾರಗಳಿಲ್ಲ. ಒಳ್ಳೆಯ ಸುದ್ದಿ ಎಂದರೆ ಕುಬರ್ನೆಟ್ಸ್ ಇದೆ, ಅದು ನಿಮಗೆ ಅಂತಹ ಪರಿಹಾರಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.
ಕುಬರ್ನೆಟ್ಸ್ ಕ್ಲೌಡ್ ಅಥವಾ ಡೇಟಾ ಸೆಂಟರ್ಗಾಗಿ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಂ ಆಗಿದ್ದು, ಇದು ಒಂದೇ ಹೋಸ್ಟ್ನಲ್ಲದೇ ಕ್ಲಸ್ಟರ್ನಲ್ಲಿ ಬಹು ಸರ್ವರ್ಗಳಾದ್ಯಂತ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ನಿಯೋಜಿಸಲು ಮತ್ತು ನಿರ್ವಹಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
ಈಗ ಕುಬರ್ನೆಟ್ಸ್ ಅಂತಹ ಸಾಫ್ಟ್ವೇರ್ ವಿಭಾಗದಲ್ಲಿ ನಾಯಕರಾಗಿದ್ದಾರೆ. ಅಂತಹ ಸಮಸ್ಯೆಗಳಿಗೆ ಹಲವು ವಿಭಿನ್ನ ಪರಿಹಾರಗಳು ಇದ್ದವು, ಆದರೆ ಇದು ಪ್ರಮಾಣಿತವಾಯಿತು. ಪರ್ಯಾಯ ಪರಿಹಾರಗಳ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸುತ್ತಿದ್ದ ಅನೇಕ ಕಂಪನಿಗಳು ಈಗ ಕುಬರ್ನೆಟ್ಗಳನ್ನು ಬೆಂಬಲಿಸಲು ತಮ್ಮ ಉತ್ಪನ್ನಗಳನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳುವತ್ತ ಗಮನಹರಿಸುತ್ತಿವೆ.
ಜೊತೆಗೆ, Kubernetes ಅನೇಕ ಮಾರಾಟಗಾರರ ಖಾಸಗಿ, ಸಾರ್ವಜನಿಕ ಮತ್ತು ಹೈಬ್ರಿಡ್ ಕ್ಲೌಡ್ಗಳಲ್ಲಿ ಬೆಂಬಲಿಸುವ ಸಾರ್ವತ್ರಿಕ ಪರಿಹಾರವಾಗಿದೆ, ಉದಾಹರಣೆಗೆ: AWS, Google Cloud, Microsoft Azure, Mail.ru ಕ್ಲೌಡ್ ಪರಿಹಾರಗಳು.
ಡೇಟಾಬೇಸ್ಗಳೊಂದಿಗೆ ಕುಬರ್ನೆಟ್ಸ್ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ
ಕುಬರ್ನೆಟ್ಸ್ ಅನ್ನು ಮೂಲತಃ ಸ್ಟೇಟ್ಲೆಸ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ ಅದು ಡೇಟಾವನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ ಆದರೆ ಮೈಕ್ರೋಸರ್ವಿಸ್ ಅಥವಾ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಂತಹ ಯಾವುದನ್ನೂ ಸಂಗ್ರಹಿಸುವುದಿಲ್ಲ. ಡೇಟಾಬೇಸ್ಗಳು ಸ್ಪೆಕ್ಟ್ರಮ್ನ ಇನ್ನೊಂದು ತುದಿಯಲ್ಲಿವೆ, ಅಂದರೆ ಅವು ಸ್ಟೇಟ್ಫುಲ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಾಗಿವೆ. ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್ ಮೂಲತಃ ಅಂತಹ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಉದ್ದೇಶಿಸಿರಲಿಲ್ಲ.
ಆದಾಗ್ಯೂ, ಡೇಟಾಬೇಸ್ಗಳು ಮತ್ತು ಇತರ ಸ್ಟೇಟ್ಫುಲ್ ಅಪ್ಲಿಕೇಶನ್ಗಳ ಬಳಕೆಯನ್ನು ಅನುಮತಿಸುವ ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ ಇತ್ತೀಚೆಗೆ ಕಾಣಿಸಿಕೊಂಡ ವೈಶಿಷ್ಟ್ಯಗಳಿವೆ:
ಸ್ಟೇಟ್ಫುಲ್ಸೆಟ್ ಪರಿಕಲ್ಪನೆಯು ಪಾಡ್ಗಳ ಕೆಲಸವನ್ನು ನಿಲ್ಲಿಸುವ ಮತ್ತು ಗ್ರೇಸ್ಫುಲ್ ಶಟ್ಡೌನ್ ಅನ್ನು (ಅಪ್ಲಿಕೇಶನ್ನ ಊಹಿಸಬಹುದಾದ ಸ್ಥಗಿತಗೊಳಿಸುವಿಕೆ) ಕಾರ್ಯಗತಗೊಳಿಸುವ ಈವೆಂಟ್ಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ಮೂಲಗಳ ಸಂಪೂರ್ಣ ಸರಣಿಯಾಗಿದೆ.
ಪರ್ಸಿಸ್ಟೆಂಟ್ ವಾಲ್ಯೂಮ್ಗಳು ಪಾಡ್ಗಳು, ಕುಬರ್ನೆಟ್ಸ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್ ಆಬ್ಜೆಕ್ಟ್ಗಳೊಂದಿಗೆ ಸಂಯೋಜಿತವಾಗಿರುವ ಡೇಟಾ ಸ್ಟೋರ್ಗಳಾಗಿವೆ.
ಆಪರೇಟರ್ ಫ್ರೇಮ್ವರ್ಕ್ - ಅಂದರೆ, ಅನೇಕ ನೋಡ್ಗಳಲ್ಲಿ ವಿತರಿಸಲಾದ ಡೇಟಾಬೇಸ್ಗಳು ಮತ್ತು ಇತರ ಸ್ಟೇಟ್ಫುಲ್ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಘಟಕಗಳನ್ನು ರಚಿಸುವ ಸಾಮರ್ಥ್ಯ.
ಈಗಾಗಲೇ ಸಾರ್ವಜನಿಕ ಮೋಡಗಳಲ್ಲಿ ಸೇವೆಯಾಗಿ ದೊಡ್ಡ ಡೇಟಾಬೇಸ್ಗಳಿವೆ, ಅದರ ಬ್ಯಾಕೆಂಡ್ ಕುಬರ್ನೆಟ್ಸ್ ಆಗಿದೆ, ಉದಾಹರಣೆಗೆ: ಕಾಕ್ರೋಚ್ಕ್ಲೌಡ್, ಇನ್ಫ್ಲಕ್ಸ್ಡಿಬಿ, ಪ್ಲಾನೆಟ್ಸ್ಕೇಲ್. ಅಂದರೆ, ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿನ ಡೇಟಾಬೇಸ್ ಸೈದ್ಧಾಂತಿಕವಾಗಿ ಸಾಧ್ಯವಾಗುವ ಸಂಗತಿಯಲ್ಲ, ಆದರೆ ಪ್ರಾಯೋಗಿಕವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಸಂಗತಿಯಾಗಿದೆ.
ಪರ್ಕೋನಾ ಕುಬರ್ನೆಟ್ಸ್ಗಾಗಿ ಎರಡು ಮುಕ್ತ ಮೂಲ ಪರಿಹಾರಗಳನ್ನು ಹೊಂದಿದೆ:
MongoDB ಗಾಗಿ ಪರ್ಕೋನಾ ಸರ್ವರ್ಗಾಗಿ ಕುಬರ್ನೆಟ್ಸ್ ಆಪರೇಟರ್.
XtraDB CLUSTER ಗಾಗಿ Kubernetes ಆಪರೇಟರ್ MySQL ಗೆ ಹೊಂದಿಕೆಯಾಗುವ ಸೇವೆಯಾಗಿದೆ ಮತ್ತು ಹೆಚ್ಚಿನ ಲಭ್ಯತೆ ಮತ್ತು ಸ್ಥಿರತೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ. ಹೆಚ್ಚಿನ ಲಭ್ಯತೆಯ ಅಗತ್ಯವಿಲ್ಲದಿದ್ದರೆ ನೀವು ಒಂದೇ ನೋಡ್ ಅನ್ನು ಸಹ ಬಳಸಬಹುದು, ಉದಾಹರಣೆಗೆ dev ಡೇಟಾಬೇಸ್ಗಾಗಿ.
ಕುಬರ್ನೆಟ್ ಬಳಕೆದಾರರನ್ನು ಎರಡು ಗುಂಪುಗಳಾಗಿ ವಿಂಗಡಿಸಬಹುದು. ಕೆಲವು ಜನರು ನೇರವಾಗಿ ಕುಬರ್ನೆಟ್ಸ್ ಆಪರೇಟರ್ಗಳನ್ನು ಬಳಸುತ್ತಾರೆ - ಇವರು ಮುಖ್ಯವಾಗಿ ತಂತ್ರಜ್ಞಾನವು ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂಬುದರ ಬಗ್ಗೆ ಉತ್ತಮ ತಿಳುವಳಿಕೆಯನ್ನು ಹೊಂದಿರುವ ಸುಧಾರಿತ ಬಳಕೆದಾರರು. ಇತರರು ಅದನ್ನು ಬ್ಯಾಕೆಂಡ್ನಲ್ಲಿ ಚಲಾಯಿಸುತ್ತಾರೆ - ಅಂತಹ ಬಳಕೆದಾರರು ಡೇಟಾಬೇಸ್ನಂತಹ ಸೇವೆಯಾಗಿ ಆಸಕ್ತಿ ಹೊಂದಿದ್ದಾರೆ, ಅವರು ಕುಬರ್ನೆಟ್ಸ್ನ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ಬಯಸುವುದಿಲ್ಲ. ಎರಡನೇ ಗುಂಪಿನ ಬಳಕೆದಾರರಿಗೆ, ನಾವು ಇನ್ನೊಂದು ತೆರೆದ ಮೂಲ ಪರಿಹಾರವನ್ನು ಹೊಂದಿದ್ದೇವೆ - Percona DBaaS CLI ಟೂಲ್. ತಂತ್ರಜ್ಞಾನದ ಆಳವಾದ ತಿಳುವಳಿಕೆಯಿಲ್ಲದೆ ಕುಬರ್ನೆಟ್ಸ್ ಆಧಾರಿತ ಮುಕ್ತ ಮೂಲ DBaaS ಅನ್ನು ಪಡೆಯಲು ಬಯಸುವವರಿಗೆ ಇದು ಪ್ರಾಯೋಗಿಕ ಪರಿಹಾರವಾಗಿದೆ.
Google Kubernetes ಎಂಜಿನ್ನಲ್ಲಿ Percona ನ DBaaS ಅನ್ನು ಹೇಗೆ ರನ್ ಮಾಡುವುದು
Google Kubernetes ಎಂಜಿನ್, ನನ್ನ ಅಭಿಪ್ರಾಯದಲ್ಲಿ, Kubernetes ತಂತ್ರಜ್ಞಾನದ ಅತ್ಯಂತ ಕ್ರಿಯಾತ್ಮಕ ಅಳವಡಿಕೆಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಇದು ಪ್ರಪಂಚದ ಅನೇಕ ಪ್ರದೇಶಗಳಲ್ಲಿ ಲಭ್ಯವಿದೆ ಮತ್ತು ಸರಳ ಮತ್ತು ಅನುಕೂಲಕರವಾದ ಕಮಾಂಡ್ ಲೈನ್ ಟೂಲ್ (SDK) ಅನ್ನು ಹೊಂದಿದೆ, ಇದು ವೇದಿಕೆಯನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ನಿರ್ವಹಿಸುವ ಬದಲು ಸ್ಕ್ರಿಪ್ಟ್ಗಳನ್ನು ರಚಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
ನಮ್ಮ DBaaS ಕೆಲಸ ಮಾಡಲು, ನಮಗೆ ಈ ಕೆಳಗಿನ ಘಟಕಗಳು ಬೇಕಾಗುತ್ತವೆ:
ಕುಬೆಕ್ಟ್ಲ್.
Google ಮೇಘ SDK.
ಪರ್ಕೋನಾ DBaaS CLI.
kubectl ಅನ್ನು ಸ್ಥಾಪಿಸಿ
ನಿಮ್ಮ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ಗಾಗಿ ನಾವು ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಸ್ಥಾಪಿಸುತ್ತೇವೆ, ನಾವು ಉಬುಂಟುನ ಉದಾಹರಣೆಯನ್ನು ನೋಡುತ್ತೇವೆ. ಹೆಚ್ಚಿನ ವಿವರಗಳಿಗಾಗಿ ಇಲ್ಲಿ.
ನಾವು ಸಾಫ್ಟ್ವೇರ್ ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಅದೇ ರೀತಿಯಲ್ಲಿ ಸ್ಥಾಪಿಸುತ್ತೇವೆ. ಹೆಚ್ಚಿನ ವಿವರಗಳಿಗಾಗಿ ಇಲ್ಲಿ.
# Add the Cloud SDK distribution URI as a package source
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg]
http://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
# Import the Google Cloud Platform public key
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
# Update the package list and install the Cloud SDK
sudo apt-get update && sudo apt-get install google-cloud-sdk
Percona DBaaS CLI ಅನ್ನು ಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ
ಪರ್ಕೋನಾ ರೆಪೊಸಿಟರಿಗಳಿಂದ ಸ್ಥಾಪಿಸಿ. Percona DBaaS CLI ಟೂಲ್ ಇನ್ನೂ ಪ್ರಾಯೋಗಿಕ ಉತ್ಪನ್ನವಾಗಿದೆ, ಆದ್ದರಿಂದ ಇದು ಪ್ರಾಯೋಗಿಕ ರೆಪೊಸಿಟರಿಯಲ್ಲಿದೆ, ನೀವು ಈಗಾಗಲೇ ಪರ್ಕೋನಾ ರೆಪೊಸಿಟರಿಗಳನ್ನು ಸ್ಥಾಪಿಸಿದ್ದರೂ ಸಹ ಅದನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಸಕ್ರಿಯಗೊಳಿಸಬೇಕು.
ಪರ್ಕೋನಾ-ಬಿಡುಗಡೆ ಉಪಕರಣವನ್ನು ಬಳಸಿಕೊಂಡು ಪರ್ಕೋನಾ ರೆಪೊಸಿಟರಿಗಳನ್ನು ಹೊಂದಿಸಿ. ಮೊದಲು ನೀವು ಪರ್ಕೋನಾದಿಂದ ಅಧಿಕೃತ ಪರ್ಕೋನಾ-ಬಿಡುಗಡೆ ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಿ ಮತ್ತು ಸ್ಥಾಪಿಸಬೇಕು:
ಮೊದಲು ನೀವು ನಿಮ್ಮ Google ಖಾತೆಗೆ ಲಾಗ್ ಇನ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಇದಲ್ಲದೆ, Google ಕ್ಲೌಡ್ ಒಬ್ಬ ಬಳಕೆದಾರರಿಗೆ ಅನೇಕ ಸ್ವತಂತ್ರ ಯೋಜನೆಗಳನ್ನು ಹೊಂದಲು ಅನುಮತಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ನೀವು ಈ ಯೋಜನೆಗಾಗಿ ಕೋಡ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಯೋಜನೆಯನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಬೇಕಾಗಿದೆ:
gcloud auth login
gcloud config set project hidden-brace-236921
ಮುಂದೆ, ನಾವು ಕ್ಲಸ್ಟರ್ ಅನ್ನು ರಚಿಸುತ್ತೇವೆ. ಡೆಮೊಗಾಗಿ, ನಾನು ಕೇವಲ ಮೂರು ನೋಡ್ಗಳ ಕುಬರ್ನೆಟ್ಸ್ ಕ್ಲಸ್ಟರ್ ಅನ್ನು ರಚಿಸಿದ್ದೇನೆ - ಇದು ಹೆಚ್ಚಿನ ಲಭ್ಯತೆಗೆ ಅಗತ್ಯವಿರುವ ಕನಿಷ್ಠವಾಗಿದೆ:
ನಂತರ ನಾವು ನೇಮ್ಸ್ಪೇಸ್ ಅನ್ನು ರಚಿಸುತ್ತೇವೆ ಮತ್ತು ಅದನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುತ್ತೇವೆ. ನೇಮ್ಸ್ಪೇಸ್, ಸ್ಥೂಲವಾಗಿ ಹೇಳುವುದಾದರೆ, ಪ್ರಾಜೆಕ್ಟ್ ಅಥವಾ ಪರಿಸರದಂತಿದೆ, ಆದರೆ ಈಗಾಗಲೇ ಕುಬರ್ನೆಟ್ಸ್ ಕ್ಲಸ್ಟರ್ನೊಳಗೆ. ಇದು Google ಮೇಘ ಯೋಜನೆಗಳಿಂದ ಸ್ವತಂತ್ರವಾಗಿದೆ:
ನಾವು ಈ ಕೆಲವು ಹಂತಗಳ ಮೂಲಕ ಹೋದ ನಂತರ, ಈ ಸರಳ ಆಜ್ಞೆಯೊಂದಿಗೆ ನಾವು ಮೂರು-ನೋಡ್ ಕ್ಲಸ್ಟರ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಬಹುದು:
# percona-dbaas mysql create-db example
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider: k8s
Engine: pxc
Resource Name: example
Resource Endpoint: example-proxysql.my-namespace.pxc.svc.local
Port: 3306
User: root
Pass: Nt9YZquajW7nfVXTTrP
Status: ready
ಕ್ಲಸ್ಟರ್ ಅನ್ನು ಹೇಗೆ ಸಂಪರ್ಕಿಸುವುದು
ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ, ಇದು ಕುಬರ್ನೆಟ್ಸ್ ಒಳಗೆ ಮಾತ್ರ ಲಭ್ಯವಿದೆ. ಅಂದರೆ, ನೀವು "ರಚಿಸು" ಆಜ್ಞೆಯನ್ನು ಚಲಾಯಿಸಿದ ಈ ಸರ್ವರ್ನಿಂದ ಅದನ್ನು ಪ್ರವೇಶಿಸಲಾಗುವುದಿಲ್ಲ. ಅದನ್ನು ಲಭ್ಯವಾಗುವಂತೆ ಮಾಡಲು, ಉದಾಹರಣೆಗೆ, ಕ್ಲೈಂಟ್ನೊಂದಿಗೆ ಪರೀಕ್ಷೆಗಳಿಗಾಗಿ, ನೀವು ಪೋರ್ಟ್ ಮ್ಯಾಪಿಂಗ್ ಮೂಲಕ ಪೋರ್ಟ್ ಅನ್ನು ಫಾರ್ವರ್ಡ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ:
ನಂತರ ನಾವು ನಿಮ್ಮ MySQL ಕ್ಲೈಂಟ್ ಅನ್ನು ಸಂಪರ್ಕಿಸುತ್ತೇವೆ:
mysql -h 127.0.0.1 -P 3306 -uroot -pNt9YZquajW7nfVXTTrP
ಸುಧಾರಿತ ಕ್ಲಸ್ಟರ್ ನಿರ್ವಹಣೆ ಆಜ್ಞೆಗಳು
ಸಾರ್ವಜನಿಕ IP ನಲ್ಲಿ ಡೇಟಾಬೇಸ್
ಕ್ಲಸ್ಟರ್ ಲಭ್ಯತೆಗಾಗಿ ನೀವು ಹೆಚ್ಚು ಶಾಶ್ವತ ಪರಿಹಾರವನ್ನು ಬಯಸಿದರೆ, ನೀವು ಬಾಹ್ಯ IP ವಿಳಾಸವನ್ನು ಪಡೆಯಬಹುದು. ಈ ಸಂದರ್ಭದಲ್ಲಿ, ಡೇಟಾಬೇಸ್ ಎಲ್ಲಿಂದಲಾದರೂ ಪ್ರವೇಶಿಸಬಹುದು. ಇದು ಕಡಿಮೆ ಸುರಕ್ಷಿತವಾಗಿದೆ, ಆದರೆ ಸಾಮಾನ್ಯವಾಗಿ ಹೆಚ್ಚು ಅನುಕೂಲಕರವಾಗಿದೆ. ಬಾಹ್ಯ IP ಗಾಗಿ ನಾವು ಈ ಕೆಳಗಿನ ಆಜ್ಞೆಯನ್ನು ಬಳಸುತ್ತೇವೆ:
# percona-dbaas mysql create-db exposed
--options="proxysql.serviceType=LoadBalancer"
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider: k8s
Engine: pxc
Resource Name: exposed
Resource Endpoint: 104.154.133.197
Port: 3306
User: root
Pass: k0QVxTr8EVfgyCLYse
Status: ready
To access database please run the following command:
mysql -h 104.154.133.197 -P 3306 -uroot -pk0QVxTr8EVfgyCLYse
ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಹೊಂದಿಸಿ
ಸಿಸ್ಟಮ್ ಯಾದೃಚ್ಛಿಕವಾಗಿ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ರಚಿಸುವ ಬದಲು, ನೀವು ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಹೊಂದಿಸಬಹುದು:
MySQL ಅನ್ನು ತ್ವರಿತವಾಗಿ ಮತ್ತು ಸುಲಭವಾಗಿ ಚಾಲನೆ ಮಾಡಲು, ಅದನ್ನು ಪರೀಕ್ಷಿಸಲು ಮತ್ತು ನಂತರ ಅದನ್ನು ಮುಚ್ಚಲು ಅಥವಾ ಅಭಿವೃದ್ಧಿಗೆ ಬಳಸಲು ಪರೀಕ್ಷಾ ಕಾರ್ಯಗಳಿಗೆ ಇದು ಒಂದು ಪರಿಹಾರವಾಗಿದೆ.
Percona DBaaS CLI ಉಪಕರಣವು ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ DBaaS ತರಹದ ಪರಿಹಾರವನ್ನು ಸಾಧಿಸಲು ನಿಮಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಅದೇ ಸಮಯದಲ್ಲಿ, ನಾವು ಅದರ ಕ್ರಿಯಾತ್ಮಕತೆ ಮತ್ತು ಉಪಯುಕ್ತತೆಯ ಮೇಲೆ ಕೆಲಸ ಮಾಡುವುದನ್ನು ಮುಂದುವರಿಸುತ್ತೇವೆ.