ಟೆರಾಫಾರ್ಮ್ ಡೆವಲಪರ್ಗಳು AWS ಮೂಲಸೌಕರ್ಯದೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು ಸಾಕಷ್ಟು ಅನುಕೂಲಕರವಾದ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ನೀಡುತ್ತವೆ ಎಂದು ತೋರುತ್ತದೆ. ಕೇವಲ ಒಂದು ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸವಿದೆ. ಕಾಲಾನಂತರದಲ್ಲಿ, ಪರಿಸರಗಳ ಸಂಖ್ಯೆಯು ಹೆಚ್ಚಾಗುತ್ತದೆ, ಪ್ರತಿಯೊಂದೂ ತನ್ನದೇ ಆದ ವೈಶಿಷ್ಟ್ಯಗಳೊಂದಿಗೆ. ಅಪ್ಲಿಕೇಶನ್ ಸ್ಟಾಕ್ನ ಬಹುತೇಕ ನಕಲು ನೆರೆಯ ಪ್ರದೇಶದಲ್ಲಿ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಮತ್ತು ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ ಅನ್ನು ಎಚ್ಚರಿಕೆಯಿಂದ ನಕಲಿಸಬೇಕು ಮತ್ತು ಹೊಸ ಅವಶ್ಯಕತೆಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಸಂಪಾದಿಸಬೇಕು ಅಥವಾ ಸ್ನೋಫ್ಲೇಕ್ ಆಗಿ ಮಾಡಬೇಕಾಗುತ್ತದೆ.
ದೊಡ್ಡ ಮತ್ತು ದೀರ್ಘ ಯೋಜನೆಗಳಲ್ಲಿ ಅವ್ಯವಸ್ಥೆ ಮತ್ತು ಹಸ್ತಚಾಲಿತ ದಿನಚರಿಯನ್ನು ಎದುರಿಸಲು ಟೆರಾಫಾರ್ಮ್ನಲ್ಲಿನ ಮಾದರಿಗಳ ಕುರಿತು ನನ್ನ ವರದಿ.
ವೀಡಿಯೊ:
ನನಗೆ 40 ವರ್ಷ, ನಾನು 20 ವರ್ಷಗಳಿಂದ ಐಟಿಯಲ್ಲಿದ್ದೇನೆ. ನಾನು 12 ವರ್ಷಗಳಿಂದ Ixtens ನಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದೇನೆ. ನಾವು ಇಕಾಮರ್ಸ್-ಚಾಲಿತ-ಅಭಿವೃದ್ಧಿಯಲ್ಲಿ ತೊಡಗಿದ್ದೇವೆ. ಮತ್ತು ನಾನು 5 ವರ್ಷಗಳಿಂದ DevOps ಅಭ್ಯಾಸಗಳನ್ನು ಅಭ್ಯಾಸ ಮಾಡುತ್ತಿದ್ದೇನೆ.
ನನ್ನ ಕಥೆಯು ಕಂಪನಿಯಲ್ಲಿನ ಪ್ರಾಜೆಕ್ಟ್ನಲ್ಲಿನ ನನ್ನ ಅನುಭವದ ಬಗ್ಗೆ ಇರುತ್ತದೆ, ಅದರ ಹೆಸರನ್ನು ನಾನು ಹೇಳುವುದಿಲ್ಲ, ಬಹಿರಂಗಪಡಿಸದಿರುವ ಒಪ್ಪಂದದ ಹಿಂದೆ ಅಡಗಿದೆ.
ಯೋಜನೆಯ ಪ್ರಮಾಣವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸ್ಲೈಡ್ನಲ್ಲಿರುವ ಸಂಖ್ಯೆಗಳನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆ. ಮತ್ತು ನಾನು ಮುಂದೆ ಹೇಳುವ ಎಲ್ಲವೂ ಅಮೆಜಾನ್ಗೆ ಸಂಬಂಧಿಸಿದೆ.
ನಾನು 4 ವರ್ಷಗಳ ಹಿಂದೆ ಈ ಯೋಜನೆಗೆ ಸೇರಿಕೊಂಡೆ. ಮತ್ತು ಯೋಜನೆಯು ಬೆಳೆದ ಕಾರಣ ಮೂಲಸೌಕರ್ಯ ಮರುಫಲಕೀಕರಣವು ಪೂರ್ಣ ಸ್ವಿಂಗ್ನಲ್ಲಿತ್ತು. ಮತ್ತು ಬಳಸಿದ ಮಾದರಿಗಳು ಇನ್ನು ಮುಂದೆ ಸೂಕ್ತವಲ್ಲ. ಮತ್ತು ಯೋಜನೆಯ ಎಲ್ಲಾ ಯೋಜಿತ ಬೆಳವಣಿಗೆಯನ್ನು ನೀಡಿದರೆ, ಹೊಸದನ್ನು ತರಲು ಇದು ಅಗತ್ಯವಾಗಿತ್ತು.
ಡೋಡೋ ಪಿಜ್ಜಾದಲ್ಲಿ ಏನಾಯಿತು ಎಂದು ನಿನ್ನೆ ನಮಗೆ ತಿಳಿಸಿದ ಮ್ಯಾಟ್ವೆಗೆ ಧನ್ಯವಾದಗಳು. 4 ವರ್ಷಗಳ ಹಿಂದೆ ಇಲ್ಲಿ ನಡೆದಿದ್ದು ಇದೇ.
ಡೆವಲಪರ್ಗಳು ಬಂದು ಮೂಲಸೌಕರ್ಯ ಕೋಡ್ ಮಾಡಲು ಪ್ರಾರಂಭಿಸಿದರು.
ಇದು ಏಕೆ ಅಗತ್ಯವಿದೆ ಎಂಬುದಕ್ಕೆ ಅತ್ಯಂತ ಸ್ಪಷ್ಟವಾದ ಕಾರಣವೆಂದರೆ ಮಾರುಕಟ್ಟೆಗೆ ಸಮಯ. ರೋಲ್ಔಟ್ ಸಮಯದಲ್ಲಿ DevOps ತಂಡವು ಅಡಚಣೆಯಾಗಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು ಅಗತ್ಯವಾಗಿತ್ತು. ಮತ್ತು ಇತರ ವಿಷಯಗಳ ನಡುವೆ, ಟೆರಾಫಾರ್ಮ್ ಮತ್ತು ಪಪಿಟ್ ಅನ್ನು ಮೊದಲ ಹಂತದಲ್ಲಿ ಬಳಸಲಾಯಿತು.
ಟೆರಾಫಾರ್ಮ್ ಹ್ಯಾಶಿಕಾರ್ಪ್ನಿಂದ ತೆರೆದ ಮೂಲ ಯೋಜನೆಯಾಗಿದೆ. ಮತ್ತು ಇದು ಏನು ಎಂದು ತಿಳಿದಿಲ್ಲದವರಿಗೆ, ಮುಂದಿನ ಕೆಲವು ಸ್ಲೈಡ್ಗಳು.
ಮೂಲಸೌಕರ್ಯವು ಕೋಡ್ನಂತೆ ನಾವು ನಮ್ಮ ಮೂಲಸೌಕರ್ಯವನ್ನು ವಿವರಿಸಬಹುದು ಮತ್ತು ನಾವು ವಿವರಿಸಿದ ಸಂಪನ್ಮೂಲಗಳನ್ನು ನಾವು ಸ್ವೀಕರಿಸುತ್ತೇವೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಕೆಲವು ರೋಬೋಟ್ಗಳನ್ನು ಕೇಳಬಹುದು.
ಉದಾಹರಣೆಗೆ, ನಮಗೆ ವರ್ಚುವಲ್ ಯಂತ್ರದ ಅಗತ್ಯವಿದೆ. ನಾವು ಹಲವಾರು ಅಗತ್ಯವಿರುವ ನಿಯತಾಂಕಗಳನ್ನು ವಿವರಿಸುತ್ತೇವೆ ಮತ್ತು ಸೇರಿಸುತ್ತೇವೆ.
ಇದರ ನಂತರ, ನಾವು ಕನ್ಸೋಲ್ನಲ್ಲಿ Amazon ಗೆ ಪ್ರವೇಶವನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡುತ್ತೇವೆ. ಮತ್ತು ನಾವು ಟೆರಾಫಾರ್ಮ್ ಯೋಜನೆಯನ್ನು ಕೇಳುತ್ತೇವೆ. ಟೆರಾಫಾರ್ಮ್ ಯೋಜನೆಯು ಹೇಳುತ್ತದೆ: "ಸರಿ, ನಿಮ್ಮ ಸಂಪನ್ಮೂಲಕ್ಕಾಗಿ ನಾವು ಈ ಕೆಲಸಗಳನ್ನು ಮಾಡಬಹುದು." ಮತ್ತು ಕನಿಷ್ಠ ಒಂದು ಸಂಪನ್ಮೂಲವನ್ನು ಸೇರಿಸಲಾಗುತ್ತದೆ. ಮತ್ತು ಯಾವುದೇ ಬದಲಾವಣೆಗಳನ್ನು ನಿರೀಕ್ಷಿಸಲಾಗುವುದಿಲ್ಲ.
ಒಮ್ಮೆ ನೀವು ಎಲ್ಲದರ ಬಗ್ಗೆ ತೃಪ್ತರಾಗಿದ್ದರೆ, ನೀವು ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಅನ್ವಯಿಸಲು ಕೇಳಬಹುದು ಮತ್ತು ಟೆರ್ರಾಫಾರ್ಮ್ ನಿಮಗಾಗಿ ಒಂದು ನಿದರ್ಶನವನ್ನು ರಚಿಸುತ್ತದೆ ಮತ್ತು ನಿಮ್ಮ ಕ್ಲೌಡ್ನಲ್ಲಿ ನೀವು ವರ್ಚುವಲ್ ಯಂತ್ರವನ್ನು ಸ್ವೀಕರಿಸುತ್ತೀರಿ.
ಮತ್ತಷ್ಟು ನಮ್ಮ ಯೋಜನೆಯು ಅಭಿವೃದ್ಧಿ ಹೊಂದುತ್ತಿದೆ. ನಾವು ಅಲ್ಲಿ ಕೆಲವು ಬದಲಾವಣೆಗಳನ್ನು ಸೇರಿಸುತ್ತಿದ್ದೇವೆ. ನಾವು ಹೆಚ್ಚಿನ ನಿದರ್ಶನಗಳನ್ನು ಕೇಳುತ್ತೇವೆ, ನಾವು 53 ನಮೂದುಗಳನ್ನು ಸೇರಿಸುತ್ತೇವೆ.
ಮತ್ತು ನಾವು ಪುನರಾವರ್ತಿಸುತ್ತೇವೆ. ದಯವಿಟ್ಟು ಯೋಜನೆ ಮಾಡಿ. ಯಾವ ಬದಲಾವಣೆಗಳನ್ನು ಯೋಜಿಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ನಾವು ನೋಡುತ್ತೇವೆ. ನಾವು ಅರ್ಜಿ ಸಲ್ಲಿಸುತ್ತೇವೆ. ಮತ್ತು ನಮ್ಮ ಮೂಲಸೌಕರ್ಯಗಳು ಈ ರೀತಿ ಬೆಳೆಯುತ್ತವೆ.
ಟೆರ್ರಾಫಾರ್ಮ್ ಸ್ಟೇಟ್ ಫೈಲ್ಸ್ ಎಂದು ಕರೆಯಲ್ಪಡುವ ಯಾವುದನ್ನಾದರೂ ಬಳಸುತ್ತದೆ. ಅಂದರೆ, ಅಮೆಜಾನ್ಗೆ ಹೋಗುವ ಎಲ್ಲಾ ಬದಲಾವಣೆಗಳನ್ನು ಫೈಲ್ನಲ್ಲಿ ಉಳಿಸಲಾಗುತ್ತದೆ, ಅಲ್ಲಿ ನೀವು ವಿವರಿಸಿದ ಪ್ರತಿಯೊಂದು ಸಂಪನ್ಮೂಲಕ್ಕೂ, Amazon ನಲ್ಲಿ ರಚಿಸಲಾದ ಅನುಗುಣವಾದ ಸಂಪನ್ಮೂಲಗಳಿವೆ. ಹೀಗಾಗಿ, ಸಂಪನ್ಮೂಲದ ವಿವರಣೆಯು ಬದಲಾದಾಗ, ಅಮೆಜಾನ್ನಲ್ಲಿ ಏನು ಬದಲಾಯಿಸಬೇಕೆಂದು ಟೆರ್ರಾಫಾರ್ಮ್ ನಿಖರವಾಗಿ ತಿಳಿದಿದೆ.
ಈ ರಾಜ್ಯದ ಕಡತಗಳು ಮೂಲತಃ ಕೇವಲ ಕಡತಗಳಾಗಿದ್ದವು. ಮತ್ತು ನಾವು ಅವುಗಳನ್ನು Git ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಿದ್ದೇವೆ, ಅದು ಅತ್ಯಂತ ಅನಾನುಕೂಲವಾಗಿದೆ. ಯಾರಾದರೂ ಯಾವಾಗಲೂ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡಲು ಮರೆತಿದ್ದಾರೆ ಮತ್ತು ಅನೇಕ ಘರ್ಷಣೆಗಳು ಹುಟ್ಟಿಕೊಂಡವು.
ಈಗ ಬ್ಯಾಕೆಂಡ್ ಅನ್ನು ಬಳಸಲು ಸಾಧ್ಯವಿದೆ, ಅಂದರೆ ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಯಾವ ಬಕೆಟ್ನಲ್ಲಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಲಾಗಿದೆ ಮತ್ತು ಯಾವ ಕೀಲಿಯಿಂದ ಸ್ಟೇಟ್ ಫೈಲ್ ಅನ್ನು ಉಳಿಸಬೇಕು. ಮತ್ತು ಟೆರ್ರಾಫಾರ್ಮ್ ಸ್ವತಃ ಈ ಸ್ಟೇಟ್ ಫೈಲ್ ಅನ್ನು ಪಡೆಯುವಲ್ಲಿ ಕಾಳಜಿಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಎಲ್ಲಾ ಮ್ಯಾಜಿಕ್ ಮಾಡಿ ಮತ್ತು ಅಂತಿಮ ಫಲಿತಾಂಶವನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ.
ನಮ್ಮ ಮೂಲಸೌಕರ್ಯ ಬೆಳೆಯುತ್ತಿದೆ. ನಮ್ಮ ಕೋಡ್ ಇಲ್ಲಿದೆ. ಮತ್ತು ಈಗ ನಾವು ವರ್ಚುವಲ್ ಯಂತ್ರವನ್ನು ರಚಿಸಲು ಬಯಸುವುದಿಲ್ಲ, ನಾವು ಪರೀಕ್ಷಾ ಪರಿಸರವನ್ನು ಹೊಂದಲು ಬಯಸುತ್ತೇವೆ.
ಮಾಡ್ಯೂಲ್ನಂತಹ ವಿಷಯವನ್ನು ರಚಿಸಲು ಟೆರಾಫಾರ್ಮ್ ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ, ಅಂದರೆ, ಕೆಲವು ಫೋಲ್ಡರ್ನಲ್ಲಿ ಅದೇ ವಿಷಯವನ್ನು ವಿವರಿಸಿ.
ಮತ್ತು, ಉದಾಹರಣೆಗೆ, ಪರೀಕ್ಷೆಯಲ್ಲಿ, ಈ ಮಾಡ್ಯೂಲ್ಗೆ ಕರೆ ಮಾಡಿ ಮತ್ತು ನಾವು ಮಾಡ್ಯೂಲ್ನಲ್ಲಿಯೇ ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿದಂತೆಯೇ ಅದೇ ವಿಷಯವನ್ನು ಪಡೆಯಿರಿ. ಪರೀಕ್ಷೆಗಾಗಿ ಈ ಕೋಡ್ ಇರುತ್ತದೆ.
ಉತ್ಪಾದನೆಗಾಗಿ, ನಾವು ಅಲ್ಲಿ ಕೆಲವು ಬದಲಾವಣೆಗಳನ್ನು ಕಳುಹಿಸಬಹುದು, ಏಕೆಂದರೆ ಪರೀಕ್ಷೆಯಲ್ಲಿ ನಮಗೆ ದೊಡ್ಡ ನಿದರ್ಶನಗಳ ಅಗತ್ಯವಿಲ್ಲ; ಉತ್ಪಾದನೆಯಲ್ಲಿ, ದೊಡ್ಡ ನಿದರ್ಶನಗಳು ಕೇವಲ ಉಪಯುಕ್ತವಾಗಿವೆ.
ತದನಂತರ ನಾನು ಯೋಜನೆಗೆ ಹಿಂತಿರುಗುತ್ತೇನೆ. ಇದು ಕಷ್ಟಕರವಾದ ಕೆಲಸವಾಗಿತ್ತು, ಯೋಜಿತ ಮೂಲಸೌಕರ್ಯವು ತುಂಬಾ ದೊಡ್ಡದಾಗಿತ್ತು. ಮತ್ತು ಎಲ್ಲರಿಗೂ ಅನುಕೂಲಕರವಾಗುವಂತೆ ಎಲ್ಲಾ ಕೋಡ್ ಅನ್ನು ಹೇಗಾದರೂ ಇರಿಸಲು ಅಗತ್ಯವಾಗಿತ್ತು: ಈ ಕೋಡ್ನಲ್ಲಿ ನಿರ್ವಹಣೆ ಮಾಡುವವರಿಗೆ ಮತ್ತು ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡುವವರಿಗೆ. ಮತ್ತು ಯಾವುದೇ ಡೆವಲಪರ್ ತನ್ನ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗೆ ಅಗತ್ಯವಿರುವ ಮೂಲಸೌಕರ್ಯಗಳನ್ನು ಸರಿಪಡಿಸಲು ಹೋಗಬಹುದು ಎಂದು ಯೋಜಿಸಲಾಗಿತ್ತು.
ಇದು ಡೈರೆಕ್ಟರಿ ಟ್ರೀ ಆಗಿದ್ದು, ನೀವು ದೊಡ್ಡ ಯೋಜನೆಯನ್ನು ಹೊಂದಿದ್ದರೆ ಮತ್ತು ಸಂಪೂರ್ಣ ಮೂಲಸೌಕರ್ಯವನ್ನು ಕೆಲವು ಸಣ್ಣ ತುಂಡುಗಳಾಗಿ ವಿಭಜಿಸಲು ಮತ್ತು ಪ್ರತಿ ತುಣುಕನ್ನು ಪ್ರತ್ಯೇಕ ಫೋಲ್ಡರ್ನಲ್ಲಿ ವಿವರಿಸಲು HashiCorp ಸ್ವತಃ ಶಿಫಾರಸು ಮಾಡುತ್ತದೆ.
ಸಂಪನ್ಮೂಲಗಳ ವ್ಯಾಪಕವಾದ ಗ್ರಂಥಾಲಯವನ್ನು ಹೊಂದಿರುವ ನೀವು ಪರೀಕ್ಷೆಯಲ್ಲಿ ಮತ್ತು ಉತ್ಪಾದನೆಯಲ್ಲಿ ಸರಿಸುಮಾರು ಒಂದೇ ವಿಷಯವನ್ನು ಕರೆಯಬಹುದು.
ನಮ್ಮ ಸಂದರ್ಭದಲ್ಲಿ, ಇದು ಸಂಪೂರ್ಣವಾಗಿ ಸೂಕ್ತವಲ್ಲ, ಏಕೆಂದರೆ ಡೆವಲಪರ್ಗಳಿಗೆ ಅಥವಾ ಪರೀಕ್ಷೆಗಾಗಿ ಪರೀಕ್ಷಾ ಸ್ಟಾಕ್ ಅನ್ನು ಹೇಗಾದರೂ ಸರಳವಾಗಿ ಪಡೆಯಬೇಕಾಗಿತ್ತು. ಆದರೆ ಫೋಲ್ಡರ್ಗಳ ಮೂಲಕ ಹೋಗಲು ಮತ್ತು ಅವುಗಳನ್ನು ಅಗತ್ಯವಿರುವ ಅನುಕ್ರಮದಲ್ಲಿ ಅನ್ವಯಿಸಲು ನಾನು ಬಯಸುವುದಿಲ್ಲ ಮತ್ತು ಡೇಟಾಬೇಸ್ ಏರುತ್ತದೆ ಎಂದು ಚಿಂತಿಸುತ್ತೇನೆ ಮತ್ತು ನಂತರ ಈ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಬಳಸುವ ಉದಾಹರಣೆಯು ಹೆಚ್ಚಾಗುತ್ತದೆ. ಆದ್ದರಿಂದ, ಎಲ್ಲಾ ಪರೀಕ್ಷೆಗಳನ್ನು ಒಂದು ಫೋಲ್ಡರ್ನಿಂದ ಪ್ರಾರಂಭಿಸಲಾಗಿದೆ. ಅದೇ ಮಾಡ್ಯೂಲ್ಗಳನ್ನು ಅಲ್ಲಿಗೆ ಕರೆಯಲಾಯಿತು, ಆದರೆ ಎಲ್ಲವನ್ನೂ ಒಂದೇ ಓಟದಲ್ಲಿ ಮಾಡಲಾಯಿತು.
ಟೆರಾಫಾರ್ಮ್ ಎಲ್ಲಾ ಅವಲಂಬನೆಗಳನ್ನು ನೋಡಿಕೊಳ್ಳುತ್ತದೆ. ಮತ್ತು ಇದು ಯಾವಾಗಲೂ ಅನುಕ್ರಮದಲ್ಲಿ ಸಂಪನ್ಮೂಲಗಳನ್ನು ರಚಿಸುತ್ತದೆ ಇದರಿಂದ ನೀವು IP ವಿಳಾಸವನ್ನು ಪಡೆಯಬಹುದು, ಉದಾಹರಣೆಗೆ, ಹೊಸದಾಗಿ ರಚಿಸಲಾದ ನಿದರ್ಶನದಿಂದ, ಮತ್ತು ಈ IP ವಿಳಾಸವನ್ನು ಮಾರ್ಗ 53 ದಾಖಲೆಯಲ್ಲಿ ಪಡೆಯಿರಿ.
ಜೊತೆಗೆ, ವೇದಿಕೆ ತುಂಬಾ ದೊಡ್ಡದಾಗಿದೆ. ಮತ್ತು ಪರೀಕ್ಷಾ ಸ್ಟಾಕ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸುವುದು, ಒಂದು ಗಂಟೆಯಾದರೂ, 8 ಗಂಟೆಗಳ ಕಾಲ ಕೂಡ, ಸಾಕಷ್ಟು ದುಬಾರಿ ಕಾರ್ಯವಾಗಿದೆ.
ಮತ್ತು ನಾವು ಈ ವಿಷಯವನ್ನು ಸ್ವಯಂಚಾಲಿತಗೊಳಿಸಿದ್ದೇವೆ. ಮತ್ತು ಜೆಂಕಿನ್ಸ್ ಕೆಲಸ ನಮಗೆ ಸ್ಟಾಕ್ ಅನ್ನು ಚಲಾಯಿಸಲು ಅವಕಾಶ ಮಾಡಿಕೊಟ್ಟಿತು. ಅದರಲ್ಲಿ, ಡೆವಲಪರ್ ಪರೀಕ್ಷಿಸಲು ಬಯಸುವ ಬದಲಾವಣೆಗಳೊಂದಿಗೆ ಪುಲ್ ವಿನಂತಿಯನ್ನು ಪ್ರಾರಂಭಿಸುವುದು ಅಗತ್ಯವಾಗಿತ್ತು, ಅಗತ್ಯವಿರುವ ಎಲ್ಲಾ ಆಯ್ಕೆಗಳು, ಘಟಕಗಳು ಮತ್ತು ಆಯಾಮಗಳನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಿ. ಅವರು ಕಾರ್ಯಕ್ಷಮತೆ ಪರೀಕ್ಷೆಯನ್ನು ಬಯಸಿದರೆ, ಅವರು ಹೆಚ್ಚಿನ ನಿದರ್ಶನಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಬಹುದು. ಕೆಲವು ಫಾರ್ಮ್ ತೆರೆಯುತ್ತದೆಯೇ ಎಂದು ಅವನು ಪರಿಶೀಲಿಸಬೇಕಾದರೆ, ಅವನು ಕನಿಷ್ಟ ವೇತನದಲ್ಲಿ ಪ್ರಾರಂಭಿಸಬಹುದು. ಮತ್ತು ಕ್ಲಸ್ಟರ್ ಅಗತ್ಯವಿದೆಯೇ ಅಥವಾ ಇಲ್ಲವೇ ಎಂಬುದನ್ನು ಸಹ ಸೂಚಿಸಿ.
ತದನಂತರ ಜೆಂಕಿನ್ಸ್ ಶೆಲ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ತಳ್ಳಿದರು, ಇದು ಟೆರಾಫಾರ್ಮ್ ಫೋಲ್ಡರ್ನಲ್ಲಿ ಕೋಡ್ ಅನ್ನು ಸ್ವಲ್ಪ ಮಾರ್ಪಡಿಸಿತು. ನಾನು ಅನಗತ್ಯ ಫೈಲ್ಗಳನ್ನು ತೆಗೆದುಹಾಕಿದ್ದೇನೆ ಮತ್ತು ಅಗತ್ಯ ಫೈಲ್ಗಳನ್ನು ಸೇರಿಸಿದ್ದೇನೆ. ತದನಂತರ ಟೆರಾಫಾರ್ಮ್ನ ಒಂದು ರನ್ನೊಂದಿಗೆ ಸ್ಟಾಕ್ ಅನ್ನು ಹೆಚ್ಚಿಸಲಾಯಿತು.
ತದನಂತರ ನಾನು ಹೋಗಲು ಬಯಸದ ಇತರ ಹಂತಗಳಿವೆ.
ಪರೀಕ್ಷೆಗಾಗಿ ನಮಗೆ ಉತ್ಪಾದನೆಗಿಂತ ಸ್ವಲ್ಪ ಹೆಚ್ಚಿನ ಆಯ್ಕೆಗಳು ಬೇಕಾಗಿರುವುದರಿಂದ, ನಾವು ಮಾಡ್ಯೂಲ್ಗಳ ನಕಲುಗಳನ್ನು ಮಾಡಬೇಕಾಗಿತ್ತು ಇದರಿಂದ ಈ ಪ್ರತಿಗಳಲ್ಲಿ ನಾವು ಪರೀಕ್ಷೆಗೆ ಮಾತ್ರ ಅಗತ್ಯವಿರುವ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸಬಹುದು.
ಮತ್ತು ಪರೀಕ್ಷೆಯಲ್ಲಿ ನಾನು ಆ ಬದಲಾವಣೆಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ಬಯಸುತ್ತೇನೆ ಅದು ಅಂತಿಮವಾಗಿ ಉತ್ಪಾದನೆಗೆ ಹೋಗುತ್ತದೆ. ಆದರೆ ವಾಸ್ತವವಾಗಿ, ಒಂದು ವಿಷಯವನ್ನು ಪರೀಕ್ಷಿಸಲಾಯಿತು, ಮತ್ತು ಸ್ವಲ್ಪ ವಿಭಿನ್ನವಾದದನ್ನು ಉತ್ಪಾದನೆಯಲ್ಲಿ ಬಳಸಲಾಯಿತು. ಮತ್ತು ಉತ್ಪಾದನೆಯಲ್ಲಿ ಎಲ್ಲಾ ಬದಲಾವಣೆಗಳನ್ನು ಕಾರ್ಯಾಚರಣೆ ತಂಡವು ಅನ್ವಯಿಸುವ ಮಾದರಿಯಲ್ಲಿ ಸಣ್ಣ ವಿರಾಮವಿತ್ತು. ಮತ್ತು ಕೆಲವೊಮ್ಮೆ ಪರೀಕ್ಷೆಯಿಂದ ಉತ್ಪಾದನೆಗೆ ಹೋಗಬೇಕಾದ ಬದಲಾವಣೆಗಳು ಮತ್ತೊಂದು ಆವೃತ್ತಿಯಲ್ಲಿ ಉಳಿದಿವೆ ಎಂದು ತಿಳಿದುಬಂದಿದೆ.
ಹೆಚ್ಚುವರಿಯಾಗಿ, ಹೊಸ ಸೇವೆಯನ್ನು ಸೇರಿಸುವ ಅಂತಹ ಸಮಸ್ಯೆ ಕಂಡುಬಂದಿದೆ, ಇದು ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಒಂದಕ್ಕಿಂತ ಸ್ವಲ್ಪ ಭಿನ್ನವಾಗಿದೆ. ಮತ್ತು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಮಾರ್ಪಡಿಸುವ ಬದಲು, ನಾವು ಅದರ ನಕಲನ್ನು ಮಾಡಬೇಕಾಗಿತ್ತು ಮತ್ತು ಅಗತ್ಯ ಬದಲಾವಣೆಗಳನ್ನು ಸೇರಿಸಬೇಕಾಗಿತ್ತು.
ಮೂಲಭೂತವಾಗಿ, ಟೆರಾಫಾರ್ಮ್ ನಿಜವಾದ ಭಾಷೆಯಲ್ಲ. ಇದು ಘೋಷಣೆಯಾಗಿದೆ. ನಾವು ಏನನ್ನಾದರೂ ಘೋಷಿಸಬೇಕಾದರೆ, ನಾವು ಅದನ್ನು ಘೋಷಿಸುತ್ತೇವೆ. ಮತ್ತು ಇದು ಎಲ್ಲಾ ಕೆಲಸ ಮಾಡುತ್ತದೆ.
ಕೆಲವು ಹಂತದಲ್ಲಿ, ನನ್ನ ಪುಲ್ ವಿನಂತಿಗಳಲ್ಲಿ ಒಂದನ್ನು ಚರ್ಚಿಸಿದಾಗ, ನನ್ನ ಸಹೋದ್ಯೋಗಿಯೊಬ್ಬರು ಸ್ನೋಫ್ಲೇಕ್ಗಳನ್ನು ರಚಿಸುವ ಅಗತ್ಯವಿಲ್ಲ ಎಂದು ಹೇಳಿದರು. ಅವನು ಏನು ಹೇಳುತ್ತಾನೆ ಎಂದು ನಾನು ಆಶ್ಚರ್ಯಪಟ್ಟೆ. ಪ್ರಪಂಚದಲ್ಲಿ ಎರಡು ಒಂದೇ ರೀತಿಯ ಸ್ನೋಫ್ಲೇಕ್ಗಳು ಇಲ್ಲ ಎಂದು ವೈಜ್ಞಾನಿಕ ಸತ್ಯವಿದೆ, ಅವೆಲ್ಲವೂ ಸ್ವಲ್ಪ ವಿಭಿನ್ನವಾಗಿವೆ. ಮತ್ತು ನಾನು ಇದನ್ನು ಕೇಳಿದ ತಕ್ಷಣ, ನಾನು ತಕ್ಷಣವೇ ಟೆರ್ರಾಫಾರ್ಮ್ ಕೋಡ್ನ ಸಂಪೂರ್ಣ ತೂಕವನ್ನು ಅನುಭವಿಸಿದೆ. ಏಕೆಂದರೆ ಆವೃತ್ತಿಯಿಂದ ಆವೃತ್ತಿಗೆ ಚಲಿಸಲು ಅಗತ್ಯವಾದಾಗ, ಟೆರ್ರಾಫಾರ್ಮ್ಗೆ ಬ್ರೇಕಿಂಗ್ ಚೈನ್ ಬದಲಾವಣೆಗಳು ಬೇಕಾಗುತ್ತವೆ, ಅಂದರೆ ಕೋಡ್ ಮುಂದಿನ ಆವೃತ್ತಿಯೊಂದಿಗೆ ಹೊಂದಾಣಿಕೆಯಾಗುವುದಿಲ್ಲ. ಮತ್ತು ನಾವು ಟೆರಾಫಾರ್ಮ್ನ ಮುಂದಿನ ಆವೃತ್ತಿಗೆ ಮೂಲಸೌಕರ್ಯವನ್ನು ತರಲು ಮೂಲಸೌಕರ್ಯದಲ್ಲಿನ ಅರ್ಧದಷ್ಟು ಫೈಲ್ಗಳನ್ನು ಒಳಗೊಂಡಿರುವ ಪುಲ್ ವಿನಂತಿಯನ್ನು ಮಾಡಬೇಕಾಗಿತ್ತು.
ಮತ್ತು ಅಂತಹ ಸ್ನೋಫ್ಲೇಕ್ ಕಾಣಿಸಿಕೊಂಡ ನಂತರ, ನಾವು ಎಲ್ಲಾ ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ ಅನ್ನು ದೊಡ್ಡದಾದ, ದೊಡ್ಡ ಹಿಮದ ರಾಶಿಯಾಗಿ ಪರಿವರ್ತಿಸಿದ್ದೇವೆ.
ಕಾರ್ಯಾಚರಣೆಯ ಹೊರಗಿರುವ ಬಾಹ್ಯ ಡೆವಲಪರ್ಗೆ, ಇದು ಅವರಿಗೆ ಹೆಚ್ಚು ವಿಷಯವಲ್ಲ, ಏಕೆಂದರೆ ಅವರು ಪುಲ್ ವಿನಂತಿಯನ್ನು ಮಾಡಿದರು, ಅವರ ಸಂಪನ್ಮೂಲ ಪ್ರಾರಂಭವಾಯಿತು. ಮತ್ತು ಅಷ್ಟೆ, ಇದು ಇನ್ನು ಮುಂದೆ ಅವನ ಕಾಳಜಿಯಲ್ಲ. ಮತ್ತು ಎಲ್ಲವೂ ಸರಿಯಾಗಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವ DevOps ತಂಡವು ಈ ಎಲ್ಲಾ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡುವ ಅಗತ್ಯವಿದೆ. ಮತ್ತು ಪ್ರತಿ ಹೆಚ್ಚುವರಿ ಸ್ನೋಫ್ಲೇಕ್ನೊಂದಿಗೆ ಈ ಬದಲಾವಣೆಗಳ ವೆಚ್ಚವು ತುಂಬಾ ಹೆಚ್ಚಾಗಿದೆ.
ಸೆಮಿನಾರ್ನಲ್ಲಿ ವಿದ್ಯಾರ್ಥಿಯು ಕಪ್ಪು ಹಲಗೆಯ ಮೇಲೆ ಸೀಮೆಸುಣ್ಣದಿಂದ ಎರಡು ಪರಿಪೂರ್ಣ ವಲಯಗಳನ್ನು ಹೇಗೆ ಸೆಳೆಯುತ್ತಾನೆ ಎಂಬುದರ ಕುರಿತು ಒಂದು ಕಥೆಯಿದೆ. ಮತ್ತು ದಿಕ್ಸೂಚಿ ಇಲ್ಲದೆ ಅವನು ಹೇಗೆ ಸಲೀಸಾಗಿ ಸೆಳೆಯಲು ನಿರ್ವಹಿಸುತ್ತಿದ್ದನೆಂದು ಶಿಕ್ಷಕನಿಗೆ ಆಶ್ಚರ್ಯವಾಗುತ್ತದೆ. ವಿದ್ಯಾರ್ಥಿ ಉತ್ತರಿಸುತ್ತಾನೆ: "ತುಂಬಾ ಸರಳವಾಗಿದೆ, ನಾನು ಮಾಂಸ ಬೀಸುವ ಯಂತ್ರವನ್ನು ತಿರುಗಿಸಲು ಸೈನ್ಯದಲ್ಲಿ ಎರಡು ವರ್ಷಗಳನ್ನು ಕಳೆದಿದ್ದೇನೆ."
ಮತ್ತು ನಾನು ಈ ಯೋಜನೆಯಲ್ಲಿ ತೊಡಗಿಸಿಕೊಂಡಿರುವ ನಾಲ್ಕು ವರ್ಷಗಳಲ್ಲಿ, ನಾನು ಸುಮಾರು ಎರಡು ವರ್ಷಗಳಿಂದ ಟೆರ್ರಾಫಾರ್ಮ್ ಮಾಡುತ್ತಿದ್ದೇನೆ. ಮತ್ತು, ಸಹಜವಾಗಿ, ನಾನು ಕೆಲವು ತಂತ್ರಗಳನ್ನು ಹೊಂದಿದ್ದೇನೆ, ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ ಅನ್ನು ಹೇಗೆ ಸರಳೀಕರಿಸುವುದು, ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಂತೆ ಅದರೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದು ಮತ್ತು ಈ ಕೋಡ್ ಅನ್ನು ನವೀಕೃತವಾಗಿರಿಸಿಕೊಳ್ಳಬೇಕಾದ ಡೆವಲಪರ್ಗಳ ಮೇಲಿನ ಹೊರೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬುದರ ಕುರಿತು ಕೆಲವು ಸಲಹೆಗಳನ್ನು ಹೊಂದಿದ್ದೇನೆ.
ನಾನು ಪ್ರಾರಂಭಿಸಲು ಬಯಸುವ ಮೊದಲ ವಿಷಯವೆಂದರೆ ಸಿಮ್ಲಿಂಕ್ಸ್. ಟೆರ್ರಾಫಾರ್ಮ್ ಬಹಳಷ್ಟು ಪುನರಾವರ್ತಿತ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿದೆ. ಉದಾಹರಣೆಗೆ, ನಾವು ಮೂಲಸೌಕರ್ಯವನ್ನು ರಚಿಸುವ ಪ್ರತಿಯೊಂದು ಹಂತದಲ್ಲೂ ಒದಗಿಸುವವರಿಗೆ ಕರೆ ಒಂದೇ ಆಗಿರುತ್ತದೆ. ಮತ್ತು ಅದನ್ನು ಪ್ರತ್ಯೇಕ ಫೋಲ್ಡರ್ನಲ್ಲಿ ಹಾಕಲು ತಾರ್ಕಿಕವಾಗಿದೆ. ಮತ್ತು ಒದಗಿಸುವವರು ಈ ಫೈಲ್ಗೆ ಸಿಮ್ಲಿಂಕ್ಗಳನ್ನು ಮಾಡಲು ಅಗತ್ಯವಿರುವಲ್ಲೆಲ್ಲಾ.
ಉದಾಹರಣೆಗೆ, ಉತ್ಪಾದನೆಯಲ್ಲಿ ನೀವು ಕೆಲವು ಬಾಹ್ಯ Amazon ಖಾತೆಗೆ ಪ್ರವೇಶ ಹಕ್ಕುಗಳನ್ನು ಪಡೆಯಲು ಅನುಮತಿಸುವ ಪಾತ್ರವನ್ನು ಊಹಿಸಿಕೊಳ್ಳಿ. ಮತ್ತು ಒಂದು ಫೈಲ್ ಅನ್ನು ಬದಲಾಯಿಸಿದ ನಂತರ, ಸಂಪನ್ಮೂಲ ವೃಕ್ಷದಲ್ಲಿ ಉಳಿದಿರುವ ಎಲ್ಲಾ ಹಕ್ಕುಗಳು ಅಗತ್ಯವಿರುವ ಹಕ್ಕುಗಳನ್ನು ಹೊಂದಿರುತ್ತವೆ, ಇದರಿಂದಾಗಿ ಟೆರ್ರಾಫಾರ್ಮ್ ಯಾವ ಅಮೆಜಾನ್ ವಿಭಾಗವನ್ನು ಪ್ರವೇಶಿಸಬೇಕೆಂದು ತಿಳಿಯುತ್ತದೆ.
ಸಿಮ್ಲಿಂಕ್ಗಳು ಎಲ್ಲಿ ವಿಫಲಗೊಳ್ಳುತ್ತವೆ? ನಾನು ಹೇಳಿದಂತೆ, ಟೆರ್ರಾಫಾರ್ಮ್ ರಾಜ್ಯದ ಫೈಲ್ಗಳನ್ನು ಹೊಂದಿದೆ. ಮತ್ತು ಅವರು ತುಂಬಾ ತಂಪಾಗಿರುತ್ತಾರೆ. ಆದರೆ ವಿಷಯವೆಂದರೆ ಟೆರ್ರಾಫಾರ್ಮ್ ಬ್ಯಾಕೆಂಡ್ ಅನ್ನು ಮೊದಲ ಸ್ಥಾನದಲ್ಲಿ ಪ್ರಾರಂಭಿಸುತ್ತದೆ. ಮತ್ತು ಈ ನಿಯತಾಂಕಗಳಲ್ಲಿ ಅವನು ಯಾವುದೇ ಅಸ್ಥಿರಗಳನ್ನು ಬಳಸಲಾಗುವುದಿಲ್ಲ; ಅವುಗಳನ್ನು ಯಾವಾಗಲೂ ಪಠ್ಯದಲ್ಲಿ ಬರೆಯಬೇಕು.
ಮತ್ತು ಪರಿಣಾಮವಾಗಿ, ಯಾರಾದರೂ ಹೊಸ ಸಂಪನ್ಮೂಲವನ್ನು ಮಾಡಿದಾಗ, ಅವನು ಇತರ ಫೋಲ್ಡರ್ಗಳಿಂದ ಕೆಲವು ಕೋಡ್ ಅನ್ನು ನಕಲಿಸುತ್ತಾನೆ. ಮತ್ತು ಅವನು ಕೀಲಿಯೊಂದಿಗೆ ಅಥವಾ ಬಕೆಟ್ನೊಂದಿಗೆ ತಪ್ಪು ಮಾಡಬಹುದು. ಉದಾಹರಣೆಗೆ, ಅವನು ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ನಿಂದ ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ ವಿಷಯವನ್ನು ತಯಾರಿಸುತ್ತಾನೆ ಮತ್ತು ನಂತರ ಅದನ್ನು ಉತ್ಪಾದನೆಯಲ್ಲಿ ಮಾಡುತ್ತಾನೆ. ಮತ್ತು ಆದ್ದರಿಂದ ಉತ್ಪಾದನೆಯಲ್ಲಿನ ಬಕೆಟ್ ಅನ್ನು ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ನಿಂದ ಬಳಸಲಾಗುವುದು ಎಂದು ಅದು ತಿರುಗಬಹುದು. ಸಹಜವಾಗಿ, ಅವರು ಅದನ್ನು ತ್ವರಿತವಾಗಿ ಕಂಡುಕೊಳ್ಳುತ್ತಾರೆ. ಇದನ್ನು ಹೇಗಾದರೂ ಸರಿಪಡಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ, ಆದರೆ ಅದೇನೇ ಇದ್ದರೂ ಇದು ಸಮಯ ಮತ್ತು ಸ್ವಲ್ಪ ಮಟ್ಟಿಗೆ ಸಂಪನ್ಮೂಲಗಳನ್ನು ವ್ಯರ್ಥ ಮಾಡುತ್ತದೆ.
ನಾವು ಮುಂದೆ ಏನು ಮಾಡಬಹುದು? ಟೆರ್ರಾಫಾರ್ಮ್ನೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವ ಮೊದಲು, ನೀವು ಅದನ್ನು ಪ್ರಾರಂಭಿಸಬೇಕು. ಪ್ರಾರಂಭದಲ್ಲಿ, Terraform ಎಲ್ಲಾ ಪ್ಲಗಿನ್ಗಳನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡುತ್ತದೆ. ಕೆಲವು ಹಂತದಲ್ಲಿ ಅವರು ಏಕಶಿಲೆಯಿಂದ ಹೆಚ್ಚು ಮೈಕ್ರೊ ಸರ್ವೀಸ್ ಆರ್ಕಿಟೆಕ್ಚರ್ಗೆ ವಿಭಜಿಸುತ್ತಾರೆ. ಮತ್ತು ನೀವು ಯಾವಾಗಲೂ Terraform init ಅನ್ನು ಮಾಡಬೇಕಾಗಿರುವುದರಿಂದ ಅದು ಎಲ್ಲಾ ಮಾಡ್ಯೂಲ್ಗಳನ್ನು, ಎಲ್ಲಾ ಪ್ಲಗಿನ್ಗಳನ್ನು ಎಳೆಯುತ್ತದೆ.
ಮತ್ತು ನೀವು ಶೆಲ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಬಳಸಬಹುದು, ಇದು ಮೊದಲನೆಯದಾಗಿ, ಎಲ್ಲಾ ಅಸ್ಥಿರಗಳನ್ನು ಪಡೆಯಬಹುದು. ಶೆಲ್ ಸ್ಕ್ರಿಪ್ಟ್ ಯಾವುದೇ ರೀತಿಯಲ್ಲಿ ಸೀಮಿತವಾಗಿಲ್ಲ. ಮತ್ತು, ಎರಡನೆಯದಾಗಿ, ಮಾರ್ಗಗಳು. ನಾವು ಯಾವಾಗಲೂ ರೆಪೊಸಿಟರಿಯಲ್ಲಿರುವ ಮಾರ್ಗವನ್ನು ಸ್ಟೇಟ್ ಫೈಲ್ಗೆ ಕೀಲಿಯಾಗಿ ಬಳಸಿದರೆ, ಅದರ ಪ್ರಕಾರ, ಇಲ್ಲಿ ದೋಷವನ್ನು ತೆಗೆದುಹಾಕಲಾಗುತ್ತದೆ.
ನಾನು ಡೇಟಾವನ್ನು ಎಲ್ಲಿ ಪಡೆಯಬಹುದು? JSON ಫೈಲ್. ಟೆರಾಫಾರ್ಮ್ ನಿಮಗೆ ಮೂಲಸೌಕರ್ಯವನ್ನು hcl (ಹಶಿಕಾರ್ಪ್ ಕಾನ್ಫಿಗರೇಶನ್ ಲಾಂಗ್ವೇಜ್) ನಲ್ಲಿ ಮಾತ್ರವಲ್ಲದೆ JSON ನಲ್ಲಿಯೂ ಬರೆಯಲು ಅನುಮತಿಸುತ್ತದೆ.
JSON ಅನ್ನು ಶೆಲ್ ಸ್ಕ್ರಿಪ್ಟ್ನಿಂದ ಓದುವುದು ಸುಲಭ. ಅಂತೆಯೇ, ನೀವು ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ ಅನ್ನು ಬಕೆಟ್ನೊಂದಿಗೆ ಕೆಲವು ಸ್ಥಳದಲ್ಲಿ ಇರಿಸಬಹುದು. ಮತ್ತು ಈ ಬಕೆಟ್ ಅನ್ನು ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ನಲ್ಲಿ ಮತ್ತು ಪ್ರಾರಂಭಕ್ಕಾಗಿ ಶೆಲ್ ಸ್ಕ್ರಿಪ್ಟ್ನಲ್ಲಿ ಬಳಸಿ.
ಟೆರಾಫಾರ್ಮ್ಗಾಗಿ ಬಕೆಟ್ ಹೊಂದುವುದು ಏಕೆ ಮುಖ್ಯ? ಏಕೆಂದರೆ ರಿಮೋಟ್ ಸ್ಟೇಟ್ ಫೈಲ್ಗಳಂತಹ ವಿಷಯವಿದೆ. ಅಂದರೆ, ನಾನು ಕೆಲವು ಸಂಪನ್ಮೂಲಗಳನ್ನು ಸಂಗ್ರಹಿಸಿದಾಗ, ಅಮೆಜಾನ್ಗೆ ಹೇಳಲು: “ದಯವಿಟ್ಟು ನಿದರ್ಶನವನ್ನು ಹೆಚ್ಚಿಸಿ,” ನಾನು ಸಾಕಷ್ಟು ಅಗತ್ಯವಿರುವ ನಿಯತಾಂಕಗಳನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಬೇಕಾಗಿದೆ.
ಮತ್ತು ಈ ಗುರುತಿಸುವಿಕೆಗಳನ್ನು ಬೇರೆ ಕೆಲವು ಫೋಲ್ಡರ್ಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗಿದೆ. ಮತ್ತು ನಾನು ಹೋಗಿ ಹೀಗೆ ಹೇಳಬಹುದು: "ಟೆರ್ರಾಫಾರ್ಮ್, ದಯವಿಟ್ಟು ಆ ಸಂಪನ್ಮೂಲದ ರಾಜ್ಯ ಫೈಲ್ಗೆ ಓಡಿ ಮತ್ತು ನನಗೆ ಈ ಗುರುತಿಸುವಿಕೆಗಳನ್ನು ಪಡೆಯಿರಿ." ಮತ್ತು ಹೀಗೆ ವಿವಿಧ ಪ್ರದೇಶಗಳು ಅಥವಾ ಪರಿಸರಗಳ ನಡುವೆ ಒಂದು ನಿರ್ದಿಷ್ಟ ಏಕೀಕರಣವು ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ.
ರಿಮೋಟ್ ಸ್ಟೇಟ್ ಫೈಲ್ ಅನ್ನು ಬಳಸಲು ಯಾವಾಗಲೂ ಸಾಧ್ಯವಿಲ್ಲ. ಉದಾಹರಣೆಗೆ, ನೀವು ಕೈಯಿಂದ VPC ಅನ್ನು ರಚಿಸಿದ್ದೀರಿ. ಮತ್ತು VPC ಅನ್ನು ರಚಿಸುವ ಟೆರ್ರಾಫಾರ್ಮ್ ಕೋಡ್ ಅಂತಹ ವಿಭಿನ್ನ VPC ಗಳನ್ನು ರಚಿಸುತ್ತದೆ ಅದು ಬಹಳ ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ನೀವು ಒಂದಕ್ಕೊಂದು ಸರಿಹೊಂದಿಸಬೇಕಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ನೀವು ಈ ಕೆಳಗಿನ ಟ್ರಿಕ್ ಅನ್ನು ಬಳಸಬಹುದು.
ಅಂದರೆ, VPC ಮಾಡಲು ತೋರುವ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಮಾಡಿ ಮತ್ತು ಅದು ನಿಮಗೆ ಗುರುತಿಸುವಿಕೆಗಳನ್ನು ನೀಡುತ್ತದೆ, ಆದರೆ ವಾಸ್ತವವಾಗಿ ಹಾರ್ಡ್ಕೋಡ್ ಮಾಡಲಾದ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಫೈಲ್ ಇದೆ, ಅದನ್ನು ಅದೇ ಉದಾಹರಣೆಯನ್ನು ರಚಿಸಲು ಬಳಸಬಹುದು.
ಕ್ಲೌಡ್ನಲ್ಲಿ ಸ್ಟೇಟ್ ಫೈಲ್ ಅನ್ನು ಉಳಿಸಲು ಯಾವಾಗಲೂ ಅಗತ್ಯವಿಲ್ಲ. ಉದಾಹರಣೆಗೆ, ಮಾಡ್ಯೂಲ್ಗಳನ್ನು ಪರೀಕ್ಷಿಸುವಾಗ, ನೀವು ಬ್ಯಾಕೆಂಡ್ ಪ್ರಾರಂಭವನ್ನು ಬಳಸಬಹುದು, ಅಲ್ಲಿ ಫೈಲ್ ಅನ್ನು ಪರೀಕ್ಷೆಯ ಸಮಯದಲ್ಲಿ ಡಿಸ್ಕ್ನಲ್ಲಿ ಸರಳವಾಗಿ ಉಳಿಸಲಾಗುತ್ತದೆ.
ಈಗ ಪರೀಕ್ಷೆಯ ಬಗ್ಗೆ ಸ್ವಲ್ಪ. ಟೆರಾಫಾರ್ಮ್ನಲ್ಲಿ ನೀವು ಏನನ್ನು ಪರೀಕ್ಷಿಸಬಹುದು? ಬಹುಶಃ ಬಹಳಷ್ಟು ಸಾಧ್ಯ, ಆದರೆ ನಾನು ಈ 4 ವಿಷಯಗಳ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತೇನೆ.
ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ ಅನ್ನು ಹೇಗೆ ಫಾರ್ಮ್ಯಾಟ್ ಮಾಡಬೇಕು ಎಂಬುದರ ಕುರಿತು HashiCorp ತಿಳುವಳಿಕೆಯನ್ನು ಹೊಂದಿದೆ. ಮತ್ತು ಈ ನಂಬಿಕೆಯ ಪ್ರಕಾರ ನೀವು ಸಂಪಾದಿಸುವ ಕೋಡ್ ಅನ್ನು ಫಾರ್ಮಾಟ್ ಮಾಡಲು Terraform fmt ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಅಂತೆಯೇ, ಹ್ಯಾಶಿಕಾರ್ಪ್ ನೀಡಿದ್ದಕ್ಕೆ ಫಾರ್ಮ್ಯಾಟಿಂಗ್ ಅನುರೂಪವಾಗಿದೆಯೇ ಎಂದು ಪರೀಕ್ಷೆಗಳು ಅಗತ್ಯವಾಗಿ ಪರಿಶೀಲಿಸಬೇಕು, ಆದ್ದರಿಂದ ಬ್ರಾಕೆಟ್ಗಳ ಸ್ಥಳವನ್ನು ಬದಲಾಯಿಸುವ ಅಗತ್ಯವಿಲ್ಲ.
ಮುಂದಿನದು ಟೆರಾಫಾರ್ಮ್ ಮೌಲ್ಯೀಕರಿಸುವುದು. ಇದು ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ಪರಿಶೀಲಿಸುವುದಕ್ಕಿಂತ ಸ್ವಲ್ಪ ಹೆಚ್ಚಿನದನ್ನು ಮಾಡುತ್ತದೆ - ಅಲಾ, ಎಲ್ಲಾ ಆವರಣಗಳು ಜೋಡಿಯಾಗಿವೆಯೇ. ಇಲ್ಲಿ ಯಾವುದು ಮುಖ್ಯ? ನಮ್ಮ ಮೂಲಸೌಕರ್ಯ ಬಹಳ ವಿಸ್ತಾರವಾಗಿದೆ. ಅದರಲ್ಲಿ ಸಾಕಷ್ಟು ವಿಭಿನ್ನ ಅಪ್ಪಂದಿರಿದ್ದಾರೆ. ಮತ್ತು ಪ್ರತಿಯೊಂದರಲ್ಲೂ ನೀವು ಟೆರಾಫಾರ್ಮ್ ಮೌಲ್ಯೀಕರಿಸುವಿಕೆಯನ್ನು ಚಲಾಯಿಸಬೇಕು.
ಅಂತೆಯೇ, ಪರೀಕ್ಷೆಯನ್ನು ವೇಗಗೊಳಿಸಲು, ನಾವು ಸಮಾನಾಂತರವನ್ನು ಬಳಸಿಕೊಂಡು ಸಮಾನಾಂತರವಾಗಿ ಅನೇಕ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ನಡೆಸುತ್ತೇವೆ.
ಸಮಾನಾಂತರವು ತುಂಬಾ ತಂಪಾದ ವಿಷಯ, ಅದನ್ನು ಬಳಸಿ.
ಆದರೆ ಪ್ರತಿ ಬಾರಿ ಟೆರಾಫಾರ್ಮ್ ಆರಂಭಿಸಿದಾಗ, ಅದು HashiCorp ಗೆ ಹೋಗುತ್ತದೆ ಮತ್ತು "ಇತ್ತೀಚಿನ ಪ್ಲಗಿನ್ ಆವೃತ್ತಿಗಳು ಯಾವುವು? ಮತ್ತು ನಾನು ಸಂಗ್ರಹದಲ್ಲಿರುವ ಪ್ಲಗಿನ್ - ಇದು ಸರಿಯೇ ಅಥವಾ ತಪ್ಪೇ?" ಮತ್ತು ಇದು ಪ್ರತಿ ಹಂತದಲ್ಲೂ ನಿಧಾನವಾಯಿತು.
ಪ್ಲಗಿನ್ಗಳು ಎಲ್ಲಿವೆ ಎಂದು ನೀವು Terraform ಗೆ ಹೇಳಿದರೆ, ನಂತರ Terraform ಹೀಗೆ ಹೇಳುತ್ತದೆ: “ಸರಿ, ಇದು ಬಹುಶಃ ಇತ್ತೀಚಿನ ವಿಷಯವಾಗಿದೆ. ನಾನು ಎಲ್ಲಿಯೂ ಹೋಗುವುದಿಲ್ಲ, ನಾನು ತಕ್ಷಣ ನಿಮ್ಮ ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ ಅನ್ನು ಮೌಲ್ಯೀಕರಿಸಲು ಪ್ರಾರಂಭಿಸುತ್ತೇನೆ.
ಅಗತ್ಯವಿರುವ ಪ್ಲಗಿನ್ಗಳೊಂದಿಗೆ ಫೋಲ್ಡರ್ ಅನ್ನು ತುಂಬಲು, ನಾವು ಸರಳವಾದ ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿದ್ದೇವೆ ಅದನ್ನು ಪ್ರಾರಂಭಿಸಬೇಕಾಗಿದೆ. ಇಲ್ಲಿ, ಸಹಜವಾಗಿ, ನಿಮ್ಮ ಕೋಡ್ನಲ್ಲಿ ಹೇಗಾದರೂ ಭಾಗವಹಿಸುವ ಎಲ್ಲಾ ಪೂರೈಕೆದಾರರನ್ನು ನೀವು ನಿರ್ದಿಷ್ಟಪಡಿಸಬೇಕಾಗಿದೆ, ಇಲ್ಲದಿದ್ದರೆ Terraform ಹೀಗೆ ಹೇಳುತ್ತದೆ: "ನನಗೆ ನಿರ್ದಿಷ್ಟ ಪೂರೈಕೆದಾರರು ತಿಳಿದಿಲ್ಲ ಏಕೆಂದರೆ ಅದು ಸಂಗ್ರಹದಲ್ಲಿಲ್ಲ."
ಮುಂದಿನದು ಟೆರಾಫಾರ್ಮ್ ಯೋಜನೆ. ನಾನು ಹೇಳಿದಂತೆ, ಅಭಿವೃದ್ಧಿಯು ಆವರ್ತಕವಾಗಿದೆ. ನಾವು ಕೋಡ್ಗೆ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡುತ್ತೇವೆ. ತದನಂತರ ಮೂಲಸೌಕರ್ಯಕ್ಕಾಗಿ ಯಾವ ಬದಲಾವಣೆಗಳನ್ನು ಯೋಜಿಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ನೀವು ಕಂಡುಹಿಡಿಯಬೇಕು.
ಮತ್ತು ಮೂಲಸೌಕರ್ಯವು ತುಂಬಾ ದೊಡ್ಡದಾಗಿದ್ದರೆ, ನೀವು ಒಂದು ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಬದಲಾಯಿಸಬಹುದು, ಕೆಲವು ಪರೀಕ್ಷಾ ಪರಿಸರ ಅಥವಾ ಕೆಲವು ನಿರ್ದಿಷ್ಟ ಪ್ರದೇಶವನ್ನು ಸರಿಪಡಿಸಬಹುದು ಮತ್ತು ಕೆಲವು ನೆರೆಯ ಒಂದನ್ನು ಮುರಿಯಬಹುದು. ಆದ್ದರಿಂದ, ಸಂಪೂರ್ಣ ಮೂಲಸೌಕರ್ಯಕ್ಕಾಗಿ ಟೆರಾಫಾರ್ಮ್ ಯೋಜನೆಯನ್ನು ಮಾಡಬೇಕು ಮತ್ತು ಯಾವ ಬದಲಾವಣೆಗಳನ್ನು ಯೋಜಿಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ತೋರಿಸಬೇಕು.
ನೀವು ಇದನ್ನು ಬುದ್ಧಿವಂತಿಕೆಯಿಂದ ಮಾಡಬಹುದು. ಉದಾಹರಣೆಗೆ, ನಾವು ಅವಲಂಬನೆಗಳನ್ನು ಪರಿಹರಿಸುವ ಪೈಥಾನ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಬರೆದಿದ್ದೇವೆ. ಮತ್ತು ಏನನ್ನು ಬದಲಾಯಿಸಲಾಗಿದೆ ಎಂಬುದರ ಆಧಾರದ ಮೇಲೆ: ಟೆರಾಫಾರ್ಮ್ ಮಾಡ್ಯೂಲ್ ಅಥವಾ ಕೇವಲ ಒಂದು ನಿರ್ದಿಷ್ಟ ಘಟಕ, ಇದು ಎಲ್ಲಾ ಅವಲಂಬಿತ ಫೋಲ್ಡರ್ಗಳಿಗೆ ಯೋಜನೆಗಳನ್ನು ಮಾಡುತ್ತದೆ.
ಕೋರಿಕೆಯ ಮೇರೆಗೆ ಟೆರಾಫಾರ್ಮ್ ಯೋಜನೆಗಳನ್ನು ಮಾಡಬೇಕು. ಕನಿಷ್ಠ ನಾವು ಏನು ಮಾಡುತ್ತೇವೆ.
ಸಹಜವಾಗಿ, ಪ್ರತಿ ಬದಲಾವಣೆಗೆ, ಪ್ರತಿ ಬದ್ಧತೆಗೆ ಪರೀಕ್ಷೆಗಳನ್ನು ಮಾಡುವುದು ಒಳ್ಳೆಯದು, ಆದರೆ ಯೋಜನೆಗಳು ಸಾಕಷ್ಟು ದುಬಾರಿ ವಿಷಯವಾಗಿದೆ. ಮತ್ತು ಪುಲ್ ವಿನಂತಿಯಲ್ಲಿ ನಾವು ಹೇಳುತ್ತೇವೆ, "ದಯವಿಟ್ಟು ನನಗೆ ಯೋಜನೆಗಳನ್ನು ನೀಡಿ." ರೋಬೋಟ್ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ಮತ್ತು ಕಾಮೆಂಟ್ಗಳಲ್ಲಿ ಕಳುಹಿಸುತ್ತದೆ ಅಥವಾ ನಿಮ್ಮ ಬದಲಾವಣೆಗಳಿಂದ ನಿರೀಕ್ಷಿಸಲಾದ ಎಲ್ಲಾ ಯೋಜನೆಗಳನ್ನು ಲಗತ್ತಿಸುತ್ತದೆ.
ಯೋಜನೆಯು ಸಾಕಷ್ಟು ದುಬಾರಿ ವಸ್ತುವಾಗಿದೆ. ಇದು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಏಕೆಂದರೆ ಟೆರ್ರಾಫಾರ್ಮ್ ಅಮೆಜಾನ್ಗೆ ಹೋಗಿ ಕೇಳುತ್ತದೆ, “ಈ ನಿದರ್ಶನ ಇನ್ನೂ ಇದೆಯೇ? ಈ ಆಟೋಸ್ಕೇಲ್ ಒಂದೇ ರೀತಿಯ ನಿಯತಾಂಕಗಳನ್ನು ಹೊಂದಿದೆಯೇ?" ಮತ್ತು ಇದನ್ನು ವೇಗಗೊಳಿಸಲು, ನೀವು refresh=false ನಂತಹ ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ಬಳಸಬಹುದು. ಇದರರ್ಥ ಟೆರ್ರಾಫಾರ್ಮ್ S3 ನಿಂದ ಸ್ಥಿತಿಯನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡುತ್ತದೆ. ಮತ್ತು ರಾಜ್ಯವು ಅಮೆಜಾನ್ನಲ್ಲಿರುವುದನ್ನು ನಿಖರವಾಗಿ ಹೊಂದಿಸುತ್ತದೆ ಎಂದು ಅದು ನಂಬುತ್ತದೆ.
ಅಂತಹ ಟೆರ್ರಾಫಾರ್ಮ್ ಯೋಜನೆಯು ಹೆಚ್ಚು ವೇಗವಾಗಿ ಹೋಗುತ್ತದೆ, ಆದರೆ ರಾಜ್ಯವು ನಿಮ್ಮ ಮೂಲಸೌಕರ್ಯಕ್ಕೆ ಅನುಗುಣವಾಗಿರಬೇಕು, ಅಂದರೆ ಎಲ್ಲೋ, ಕೆಲವೊಮ್ಮೆ ಟೆರಾಫಾರ್ಮ್ ರಿಫ್ರೆಶ್ ಪ್ರಾರಂಭವಾಗಬೇಕು. ಟೆರಾಫಾರ್ಮ್ ರಿಫ್ರೆಶ್ ನಿಖರವಾಗಿ ಹಾಗೆ ಮಾಡುತ್ತದೆ: ನಿಜವಾದ ಮೂಲಸೌಕರ್ಯದಲ್ಲಿ ಏನಿದೆ ಎಂಬುದನ್ನು ರಾಜ್ಯವು ಹೊಂದಿಸುತ್ತದೆ.
ಮತ್ತು ನಾವು ಸುರಕ್ಷತೆಯ ಬಗ್ಗೆ ಮಾತನಾಡಬೇಕಾಗಿದೆ. ಇಲ್ಲಿ ನಾವು ಪ್ರಾರಂಭಿಸಬೇಕಾಗಿತ್ತು. ನಿಮ್ಮ ಮೂಲಸೌಕರ್ಯದಲ್ಲಿ ನೀವು ಟೆರ್ರಾಫಾರ್ಮ್ ಮತ್ತು ಟೆರ್ರಾಫಾರ್ಮ್ ರನ್ ಮಾಡುವಲ್ಲಿ ದುರ್ಬಲತೆ ಇರುತ್ತದೆ. ಅಂದರೆ, ನೀವು ಮೂಲಭೂತವಾಗಿ ಕೋಡ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತಿದ್ದೀರಿ. ಮತ್ತು ಪುಲ್ ವಿನಂತಿಯು ಕೆಲವು ರೀತಿಯ ದುರುದ್ದೇಶಪೂರಿತ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿದ್ದರೆ, ನಂತರ ಹೆಚ್ಚಿನ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುವ ಮೂಲಸೌಕರ್ಯದಲ್ಲಿ ಅದನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು. ಆದ್ದರಿಂದ ನೀವು ಟೆರ್ರಾಫಾರ್ಮ್ ಯೋಜನೆಯನ್ನು ಎಲ್ಲಿ ನಡೆಸುತ್ತೀರಿ ಎಂದು ಜಾಗರೂಕರಾಗಿರಿ.
ನಾನು ಮಾತನಾಡಲು ಬಯಸುವ ಮುಂದಿನ ವಿಷಯವೆಂದರೆ ಬಳಕೆದಾರ-ಡೇಟಾ ಪರೀಕ್ಷೆ.
ಬಳಕೆದಾರರ ಡೇಟಾ ಎಂದರೇನು? ಅಮೆಜಾನ್ನಲ್ಲಿ, ನಾವು ನಿದರ್ಶನವನ್ನು ರಚಿಸಿದಾಗ, ನಾವು ನಿದರ್ಶನದೊಂದಿಗೆ ನಿರ್ದಿಷ್ಟ ಪತ್ರವನ್ನು ಕಳುಹಿಸಬಹುದು - ಮೆಟಾ ಡೇಟಾ. ನಿದರ್ಶನ ಪ್ರಾರಂಭವಾದಾಗ, ಸಾಮಾನ್ಯವಾಗಿ ಕ್ಲೌಡ್ init ಈ ನಿದರ್ಶನಗಳಲ್ಲಿ ಯಾವಾಗಲೂ ಇರುತ್ತದೆ. Cloud init ಈ ಪತ್ರವನ್ನು ಓದುತ್ತದೆ ಮತ್ತು ಹೀಗೆ ಹೇಳುತ್ತದೆ: "ಸರಿ, ಇಂದು ನಾನು ಲೋಡ್ ಬ್ಯಾಲೆನ್ಸರ್ ಆಗಿದ್ದೇನೆ." ಮತ್ತು ಈ ಒಪ್ಪಂದಗಳಿಗೆ ಅನುಸಾರವಾಗಿ ಅವನು ಕೆಲವು ಕ್ರಿಯೆಗಳನ್ನು ಮಾಡುತ್ತಾನೆ.
ಆದರೆ, ದುರದೃಷ್ಟವಶಾತ್, ನಾವು ಟೆರ್ರಾಫಾರ್ಮ್ ಯೋಜನೆಯನ್ನು ಮಾಡಿದಾಗ ಮತ್ತು ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಅನ್ವಯಿಸಿದಾಗ, ಬಳಕೆದಾರ-ಡೇಟಾ ಈ ರೀತಿಯ ಸಂಖ್ಯೆಗಳಂತೆ ಕಾಣುತ್ತದೆ. ಅಂದರೆ, ಅವನು ನಿಮಗೆ ಹ್ಯಾಶ್ ಅನ್ನು ಸರಳವಾಗಿ ಕಳುಹಿಸುತ್ತಾನೆ. ಮತ್ತು ನೀವು ಯೋಜನೆಯಲ್ಲಿ ನೋಡಬಹುದಾದ ಎಲ್ಲಾ ಬದಲಾವಣೆಗಳು ಇರುತ್ತದೆಯೇ ಅಥವಾ ಹ್ಯಾಶ್ ಒಂದೇ ಆಗಿರುತ್ತದೆಯೇ ಎಂಬುದು.
ಮತ್ತು ನೀವು ಇದಕ್ಕೆ ಗಮನ ಕೊಡದಿದ್ದರೆ, ಕೆಲವು ಮುರಿದ ಪಠ್ಯ ಫೈಲ್ ಅಮೆಜಾನ್ನಲ್ಲಿ, ನಿಜವಾದ ಮೂಲಸೌಕರ್ಯದಲ್ಲಿ ಕೊನೆಗೊಳ್ಳಬಹುದು.
ಪರ್ಯಾಯವಾಗಿ, ಕಾರ್ಯಗತಗೊಳಿಸುವಾಗ, ನೀವು ಸಂಪೂರ್ಣ ಮೂಲಸೌಕರ್ಯವನ್ನು ಅಲ್ಲ, ಆದರೆ ಟೆಂಪ್ಲೇಟ್ ಅನ್ನು ಮಾತ್ರ ನಿರ್ದಿಷ್ಟಪಡಿಸಬಹುದು. ಮತ್ತು ಕೋಡ್ನಲ್ಲಿ ಹೀಗೆ ಹೇಳಿ: "ದಯವಿಟ್ಟು ಈ ಟೆಂಪ್ಲೇಟ್ ಅನ್ನು ನನ್ನ ಪರದೆಯ ಮೇಲೆ ಪ್ರದರ್ಶಿಸಿ." ಮತ್ತು ಪರಿಣಾಮವಾಗಿ, Amazon ನಲ್ಲಿ ನಿಮ್ಮ ಡೇಟಾ ಹೇಗಿರುತ್ತದೆ ಎಂಬುದರ ಪ್ರಿಂಟ್ ಔಟ್ ಅನ್ನು ನೀವು ಪಡೆಯಬಹುದು.
ಬಳಕೆದಾರರ ಡೇಟಾವನ್ನು ಉತ್ಪಾದಿಸಲು ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಬಳಸುವುದು ಮತ್ತೊಂದು ಆಯ್ಕೆಯಾಗಿದೆ. ನೀವು ಈ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಅನ್ವಯಿಸುತ್ತೀರಿ. ನೀವು ಡಿಸ್ಕ್ನಲ್ಲಿ ಫೈಲ್ ಅನ್ನು ಸ್ವೀಕರಿಸುತ್ತೀರಿ. ಅದನ್ನು ಒಂದು ಉಲ್ಲೇಖದೊಂದಿಗೆ ಹೋಲಿಕೆ ಮಾಡಿ. ಹೀಗಾಗಿ, ಕೆಲವು ವ್ಯಕ್ತಿಗಳು ಬಳಕೆದಾರರ ಡೇಟಾವನ್ನು ಸ್ವಲ್ಪ ಸರಿಪಡಿಸಲು ನಿರ್ಧರಿಸಿದರೆ, ನಿಮ್ಮ ಪರೀಕ್ಷೆಗಳು ಹೀಗೆ ಹೇಳುತ್ತವೆ: "ಸರಿ, ಇಲ್ಲಿ ಮತ್ತು ಅಲ್ಲಿ ಕೆಲವು ಬದಲಾವಣೆಗಳಿವೆ - ಇದು ಸಾಮಾನ್ಯವಾಗಿದೆ."
ನಾನು ಮಾತನಾಡಲು ಬಯಸುವ ಮುಂದಿನ ವಿಷಯವೆಂದರೆ ಸ್ವಯಂಚಾಲಿತ ಟೆರಾಫಾರ್ಮ್ ಅನ್ವಯಿಸು.
ಸಹಜವಾಗಿ, ಟೆರಾಫಾರ್ಮ್ ಅನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಅನ್ವಯಿಸಲು ಇದು ತುಂಬಾ ಭಯಾನಕವಾಗಿದೆ, ಏಕೆಂದರೆ ಅಲ್ಲಿ ಯಾವ ಬದಲಾವಣೆಗಳು ಬಂದಿವೆ ಮತ್ತು ಅವು ವಾಸಿಸುವ ಮೂಲಸೌಕರ್ಯಕ್ಕೆ ಎಷ್ಟು ವಿನಾಶಕಾರಿಯಾಗಬಹುದು ಎಂದು ಯಾರಿಗೆ ತಿಳಿದಿದೆ.
ಪರೀಕ್ಷಾ ಪರಿಸರಕ್ಕೆ, ಇದು ಸಾಮಾನ್ಯವಾಗಿದೆ. ಅಂದರೆ, ಪರೀಕ್ಷಾ ವಾತಾವರಣವನ್ನು ಸೃಷ್ಟಿಸುವ ಕೆಲಸವು ಎಲ್ಲಾ ಡೆವಲಪರ್ಗಳಿಗೆ ಬೇಕಾಗುತ್ತದೆ. ಮತ್ತು "ಎಲ್ಲವೂ ನನಗೆ ಕೆಲಸ ಮಾಡಿದೆ" ಎಂಬಂತಹ ಅಭಿವ್ಯಕ್ತಿಯು ತಮಾಷೆಯ ಮೆಮೆ ಅಲ್ಲ, ಆದರೆ ಒಬ್ಬ ವ್ಯಕ್ತಿಯು ಗೊಂದಲಕ್ಕೊಳಗಾದ, ಸ್ಟಾಕ್ ಅನ್ನು ಹೆಚ್ಚಿಸಿದ ಮತ್ತು ಈ ಸ್ಟಾಕ್ನಲ್ಲಿ ಕೆಲವು ಪರೀಕ್ಷೆಗಳನ್ನು ನಡೆಸಿದ್ದಾನೆ ಎಂಬುದಕ್ಕೆ ಪುರಾವೆಯಾಗಿದೆ. ಮತ್ತು ಅವರು ಅಲ್ಲಿ ಎಲ್ಲವೂ ಸರಿಯಾಗಿದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಂಡರು ಮತ್ತು ಹೇಳಿದರು: "ಸರಿ, ನಾನು ಬಿಡುಗಡೆ ಮಾಡುವ ಕೋಡ್ ಅನ್ನು ಪರೀಕ್ಷಿಸಲಾಗಿದೆ."
ಉತ್ಪಾದನೆಯಲ್ಲಿ, ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ ಮತ್ತು ಇತರ ಪರಿಸರದಲ್ಲಿ ಹೆಚ್ಚು ವ್ಯವಹಾರ ನಿರ್ಣಾಯಕವಾಗಿದೆ, ನೀವು ಕೆಲವು ಸಂಪನ್ಮೂಲಗಳನ್ನು ಭಾಗಶಃ ಸುರಕ್ಷಿತವಾಗಿ ಬಳಸಬಹುದು ಏಕೆಂದರೆ ಅದು ಯಾರಿಗೂ ಸಾಯುವುದಿಲ್ಲ. ಅವುಗಳೆಂದರೆ: ಆಟೋಸ್ಕೇಲ್ ಗುಂಪುಗಳು, ಭದ್ರತಾ ಗುಂಪುಗಳು, ಪಾತ್ರಗಳು, ಮಾರ್ಗ 53, ಮತ್ತು ಪಟ್ಟಿಯು ಸಾಕಷ್ಟು ದೊಡ್ಡದಾಗಿರಬಹುದು. ಆದರೆ ಏನು ನಡೆಯುತ್ತಿದೆ ಎಂಬುದರ ಮೇಲೆ ನಿಗಾ ಇರಿಸಿ, ಸ್ವಯಂಚಾಲಿತ ಅಪ್ಲಿಕೇಶನ್ ವರದಿಗಳನ್ನು ಓದಿ.
ಅನ್ವಯಿಸಲು ಅಪಾಯಕಾರಿ ಅಥವಾ ಭಯಾನಕವಾಗಿರುವಲ್ಲಿ, ಉದಾಹರಣೆಗೆ, ಇವು ಡೇಟಾಬೇಸ್ನಿಂದ ಕೆಲವು ನಿರಂತರ ಸಂಪನ್ಮೂಲಗಳಾಗಿದ್ದರೆ, ಮೂಲಸೌಕರ್ಯದ ಕೆಲವು ಭಾಗಗಳಲ್ಲಿ ಅನ್ವಯಿಸದ ಬದಲಾವಣೆಗಳಿವೆ ಎಂದು ವರದಿಗಳನ್ನು ಸ್ವೀಕರಿಸಿ. ಮತ್ತು ಇಂಜಿನಿಯರ್, ಮೇಲ್ವಿಚಾರಣೆಯಲ್ಲಿ, ತನ್ನ ಕನ್ಸೋಲ್ನಿಂದ ಅನ್ವಯಿಸಲು ಅಥವಾ ಅದನ್ನು ಮಾಡಲು ಉದ್ಯೋಗಗಳನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತಾನೆ.
ಅಮೆಜಾನ್ ಟರ್ಮಿನೇಟ್ ರಕ್ಷಣೆಯಂತಹ ವಿಷಯವನ್ನು ಹೊಂದಿದೆ. ಮತ್ತು ಇದು ನಿಮಗೆ ಅಗತ್ಯವಿಲ್ಲದ ಬದಲಾವಣೆಗಳಿಂದ ಕೆಲವು ಸಂದರ್ಭಗಳಲ್ಲಿ ರಕ್ಷಿಸಬಹುದು. ಅಂದರೆ, ಟೆರಾಫಾರ್ಮ್ ಅಮೆಜಾನ್ಗೆ ಹೋಗಿ ಹೇಳಿದರು: "ಇನ್ನೊಂದನ್ನು ಮಾಡಲು ನಾನು ಈ ನಿದರ್ಶನವನ್ನು ಕೊಲ್ಲಬೇಕಾಗಿದೆ." ಮತ್ತು ಅಮೆಜಾನ್ ಹೇಳುತ್ತಾರೆ: “ಕ್ಷಮಿಸಿ, ಇಂದು ಅಲ್ಲ. ನಾವು ಟರ್ಮಿನೇಟ್ ರಕ್ಷಣೆಯನ್ನು ಹೊಂದಿದ್ದೇವೆ."
ಮತ್ತು ಕೇಕ್ ಮೇಲೆ ಐಸಿಂಗ್ ಕೋಡ್ ಆಪ್ಟಿಮೈಸೇಶನ್ ಆಗಿದೆ. ನಾವು ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ನೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವಾಗ, ನಾವು ಮಾಡ್ಯೂಲ್ಗೆ ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ನಿಯತಾಂಕಗಳನ್ನು ರವಾನಿಸಬೇಕು. ಕೆಲವು ರೀತಿಯ ಸಂಪನ್ಮೂಲವನ್ನು ರಚಿಸಲು ಅಗತ್ಯವಾದ ನಿಯತಾಂಕಗಳು ಇವು. ಮತ್ತು ಕೋಡ್ ಮಾಡ್ಯೂಲ್ನಿಂದ ಮಾಡ್ಯೂಲ್ಗೆ, ಮಾಡ್ಯೂಲ್ನಿಂದ ಮಾಡ್ಯೂಲ್ಗೆ ರವಾನಿಸಬೇಕಾದ ನಿಯತಾಂಕಗಳ ದೊಡ್ಡ ಪಟ್ಟಿಗಳಾಗಿ ಬದಲಾಗುತ್ತದೆ, ವಿಶೇಷವಾಗಿ ಮಾಡ್ಯೂಲ್ಗಳು ನೆಸ್ಟೆಡ್ ಆಗಿದ್ದರೆ.
ಮತ್ತು ಓದಲು ತುಂಬಾ ಕಷ್ಟ. ಇದನ್ನು ಪರಿಶೀಲಿಸುವುದು ತುಂಬಾ ಕಷ್ಟ. ಮತ್ತು ಆಗಾಗ್ಗೆ ಕೆಲವು ನಿಯತಾಂಕಗಳು ಪರಿಶೀಲನೆಗೆ ಒಳಗಾಗುತ್ತವೆ ಮತ್ತು ಅವುಗಳು ನಿಖರವಾಗಿ ಅಗತ್ಯವಿಲ್ಲ ಎಂದು ತಿರುಗುತ್ತದೆ. ಮತ್ತು ಇದು ನಂತರ ಸರಿಪಡಿಸಲು ಸಮಯ ಮತ್ತು ಹಣವನ್ನು ವ್ಯಯಿಸುತ್ತದೆ.
ಆದ್ದರಿಂದ, ಮೌಲ್ಯಗಳ ಒಂದು ನಿರ್ದಿಷ್ಟ ಮರವನ್ನು ಒಳಗೊಂಡಿರುವ ಸಂಕೀರ್ಣ ನಿಯತಾಂಕದಂತೆ ಅಂತಹ ವಿಷಯವನ್ನು ಬಳಸಲು ನಾನು ನಿಮಗೆ ಸಲಹೆ ನೀಡುತ್ತೇನೆ. ಅಂದರೆ, ನೀವು ಕೆಲವು ಪರಿಸರದಲ್ಲಿ ಹೊಂದಲು ಬಯಸುವ ಎಲ್ಲಾ ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರುವ ಕೆಲವು ರೀತಿಯ ಫೋಲ್ಡರ್ ಅಗತ್ಯವಿದೆ.
ಮತ್ತು ಈ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಕರೆಯುವ ಮೂಲಕ, ನೀವು ಒಂದು ಸಾಮಾನ್ಯ ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ ಉತ್ಪತ್ತಿಯಾಗುವ ಮರವನ್ನು ಪಡೆಯಬಹುದು, ಅಂದರೆ, ಸಂಪೂರ್ಣ ಮೂಲಸೌಕರ್ಯಕ್ಕೆ ಒಂದೇ ರೀತಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಸಾಮಾನ್ಯ ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ.
ಈ ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ ನೀವು ಸ್ಥಳೀಯರಂತೆ ಟೆರಾಫಾರ್ಮ್ನಲ್ಲಿ ಇತ್ತೀಚಿನ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಬಳಸಿಕೊಂಡು ಕೆಲವು ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಮಾಡಬಹುದು. ತದನಂತರ, ಒಂದು ಔಟ್ಪುಟ್ನೊಂದಿಗೆ, ಕೆಲವು ಸಂಕೀರ್ಣ ನಿಯತಾಂಕವನ್ನು ನೀಡಿ, ಇದು ಅರೇ ಹ್ಯಾಶ್ಗಳನ್ನು ಒಳಗೊಂಡಿರಬಹುದು, ಇತ್ಯಾದಿ.
ಇಲ್ಲಿಯೇ ನಾನು ಎಲ್ಲಾ ಅತ್ಯುತ್ತಮ ಆವಿಷ್ಕಾರಗಳನ್ನು ಕೊನೆಗೊಳಿಸಿದೆ. ಮತ್ತು ನಾನು ಕೊಲಂಬಸ್ ಬಗ್ಗೆ ಒಂದು ಕಥೆಯನ್ನು ಹೇಳಲು ಬಯಸುತ್ತೇನೆ. ಅವನು ಭಾರತವನ್ನು ಅನ್ವೇಷಿಸಲು ತನ್ನ ದಂಡಯಾತ್ರೆಗೆ ಹಣವನ್ನು ಹುಡುಕುತ್ತಿದ್ದಾಗ (ಅವನು ಅಂದುಕೊಂಡಂತೆ), ಯಾರೂ ಅವನನ್ನು ನಂಬಲಿಲ್ಲ ಮತ್ತು ಅದು ಅಸಾಧ್ಯವೆಂದು ಅವರು ಭಾವಿಸಿದರು. ನಂತರ ಅವರು ಹೇಳಿದರು: "ಮೊಟ್ಟೆ ಬೀಳದಂತೆ ನೋಡಿಕೊಳ್ಳಿ." ಎಲ್ಲಾ ಬ್ಯಾಂಕರ್ಗಳು, ಅತ್ಯಂತ ಶ್ರೀಮಂತ ಮತ್ತು ಬಹುಶಃ ಸ್ಮಾರ್ಟ್ ಜನರು, ಹೇಗಾದರೂ ಮೊಟ್ಟೆಯನ್ನು ಇಡಲು ಪ್ರಯತ್ನಿಸಿದರು, ಮತ್ತು ಅದು ಬೀಳುತ್ತಲೇ ಇತ್ತು. ನಂತರ ಕೊಲಂಬಸ್ ಮೊಟ್ಟೆಯನ್ನು ತೆಗೆದುಕೊಂಡು ಅದನ್ನು ಸ್ವಲ್ಪ ಒತ್ತಿದರು. ಶೆಲ್ ಸುಕ್ಕುಗಟ್ಟಿದ ಮತ್ತು ಮೊಟ್ಟೆ ಚಲನರಹಿತವಾಗಿ ಉಳಿಯಿತು. ಅವರು ಹೇಳಿದರು, "ಓಹ್, ಇದು ತುಂಬಾ ಸುಲಭ!" ಮತ್ತು ಕೊಲಂಬಸ್ ಉತ್ತರಿಸಿದರು: "ಹೌದು, ಇದು ತುಂಬಾ ಸರಳವಾಗಿದೆ. ಮತ್ತು ನಾನು ಭಾರತವನ್ನು ತೆರೆದಾಗ, ಎಲ್ಲರೂ ಈ ವ್ಯಾಪಾರ ಮಾರ್ಗವನ್ನು ಬಳಸುತ್ತಾರೆ.
ಮತ್ತು ನಾನು ನಿಮಗೆ ಹೇಳಿದ್ದು ಬಹುಶಃ ತುಂಬಾ ಸರಳ ಮತ್ತು ಕ್ಷುಲ್ಲಕ ವಿಷಯಗಳು. ಮತ್ತು ನೀವು ಅವುಗಳ ಬಗ್ಗೆ ಕಲಿತಾಗ ಮತ್ತು ಅವುಗಳನ್ನು ಬಳಸಲು ಪ್ರಾರಂಭಿಸಿದಾಗ, ಅದು ವಸ್ತುಗಳ ಕ್ರಮದಲ್ಲಿದೆ. ಆದ್ದರಿಂದ ಲಾಭ ಪಡೆಯಿರಿ. ಮತ್ತು ಇವುಗಳು ನಿಮಗೆ ಸಂಪೂರ್ಣವಾಗಿ ಸಾಮಾನ್ಯ ಸಂಗತಿಗಳಾಗಿದ್ದರೆ, ಮೊಟ್ಟೆ ಬೀಳದಂತೆ ಅದನ್ನು ಹೇಗೆ ಇಡಬೇಕೆಂದು ನಿಮಗೆ ತಿಳಿದಿದೆ.
ಒಟ್ಟಾರೆಯಾಗಿ ನೋಡೋಣ:
- ಸ್ನೋಫ್ಲೇಕ್ಗಳನ್ನು ತಪ್ಪಿಸಲು ಪ್ರಯತ್ನಿಸಿ. ಮತ್ತು ಕಡಿಮೆ ಸ್ನೋಫ್ಲೇಕ್ಗಳು, ಕಡಿಮೆ ಸಂಪನ್ಮೂಲಗಳು ನಿಮ್ಮ ದೊಡ್ಡ ಮೂಲಸೌಕರ್ಯದಲ್ಲಿ ಯಾವುದೇ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡಬೇಕಾಗುತ್ತದೆ.
- ನಿರಂತರ ಬದಲಾವಣೆಗಳು. ಅಂದರೆ, ಕೋಡ್ನಲ್ಲಿ ಕೆಲವು ಬದಲಾವಣೆಗಳು ಸಂಭವಿಸಿದಾಗ, ನಿಮ್ಮ ಮೂಲಸೌಕರ್ಯವನ್ನು ನೀವು ಸಾಧ್ಯವಾದಷ್ಟು ಬೇಗ ಈ ಬದಲಾವಣೆಗಳೊಂದಿಗೆ ಅನುಸರಣೆಗೆ ತರಬೇಕಾಗುತ್ತದೆ. ಎರಡ್ಮೂರು ತಿಂಗಳ ನಂತರ ಯಾರಾದರೂ Elasticsearch ನೋಡಲು ಬಂದು, Terraform ಪ್ಲಾನ್ ಮಾಡುತ್ತಾರೆ ಮತ್ತು ಅವರು ನಿರೀಕ್ಷಿಸದಂತಹ ಬದಲಾವಣೆಗಳ ಗುಂಪೇ ಇರುವಂತಹ ಪರಿಸ್ಥಿತಿ ಇರಬಾರದು. ಮತ್ತು ಎಲ್ಲವನ್ನೂ ಕ್ರಮವಾಗಿ ಇರಿಸಲು ಸಾಕಷ್ಟು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ.
- ಪರೀಕ್ಷೆಗಳು ಮತ್ತು ಯಾಂತ್ರೀಕೃತಗೊಂಡ. ನಿಮ್ಮ ಕೋಡ್ ಪರೀಕ್ಷೆಗಳು ಮತ್ತು ವೈಶಿಷ್ಟ್ಯಗಳೊಂದಿಗೆ ಹೆಚ್ಚು ಆವರಿಸಲ್ಪಟ್ಟಿದೆ, ನೀವು ಎಲ್ಲವನ್ನೂ ಸರಿಯಾಗಿ ಮಾಡುತ್ತಿದ್ದೀರಿ ಎಂದು ನೀವು ಹೆಚ್ಚು ವಿಶ್ವಾಸ ಹೊಂದಿದ್ದೀರಿ. ಮತ್ತು ಸ್ವಯಂಚಾಲಿತ ವಿತರಣೆಯು ನಿಮ್ಮ ವಿಶ್ವಾಸವನ್ನು ಹಲವು ಬಾರಿ ಹೆಚ್ಚಿಸುತ್ತದೆ.
- ಪರೀಕ್ಷೆ ಮತ್ತು ಉತ್ಪಾದನಾ ಪರಿಸರದ ಕೋಡ್ ಬಹುತೇಕ ಒಂದೇ ಆಗಿರಬೇಕು. ಪ್ರಾಯೋಗಿಕವಾಗಿ, ಉತ್ಪಾದನೆಯು ಇನ್ನೂ ಸ್ವಲ್ಪ ವಿಭಿನ್ನವಾಗಿದೆ ಮತ್ತು ಪರೀಕ್ಷಾ ಪರಿಸರವನ್ನು ಮೀರಿ ಹೋಗುವ ಕೆಲವು ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳು ಇನ್ನೂ ಇರುತ್ತದೆ. ಆದರೆ ಅದೇನೇ ಇದ್ದರೂ, ಪ್ಲಸ್ ಅಥವಾ ಮೈನಸ್, ಇದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಬಹುದು.
- ಮತ್ತು ನೀವು ಸಾಕಷ್ಟು ಟೆರಾಫಾರ್ಮ್ ಕೋಡ್ ಹೊಂದಿದ್ದರೆ ಮತ್ತು ಈ ಕೋಡ್ ಅನ್ನು ನವೀಕೃತವಾಗಿಡಲು ಸಾಕಷ್ಟು ಸಮಯ ತೆಗೆದುಕೊಂಡರೆ, ಅದನ್ನು ರಿಫ್ಯಾಕ್ಟರ್ ಮಾಡಲು ಮತ್ತು ಅದನ್ನು ಉತ್ತಮ ಆಕಾರದಲ್ಲಿ ಪಡೆಯಲು ಎಂದಿಗೂ ತಡವಾಗಿಲ್ಲ.
- ಬದಲಾಗದ ಮೂಲಸೌಕರ್ಯ. ವೇಳಾಪಟ್ಟಿಯಲ್ಲಿ AMI ವಿತರಣೆ.
- ನೀವು ಸಾಕಷ್ಟು ನಮೂದುಗಳನ್ನು ಹೊಂದಿರುವಾಗ ಮತ್ತು ಅವು ಸ್ಥಿರವಾದ ಕ್ರಮದಲ್ಲಿರಬೇಕೆಂದು ನೀವು ಬಯಸಿದಾಗ ಮಾರ್ಗ53 ಗಾಗಿ ರಚನೆ.
- API ದರ ಮಿತಿಗಳನ್ನು ಹೋರಾಡುತ್ತಿದೆ. ಅಮೆಜಾನ್ ಹೇಳಿದಾಗ, "ಅಷ್ಟೆ, ನಾನು ಯಾವುದೇ ಹೆಚ್ಚಿನ ವಿನಂತಿಗಳನ್ನು ಸ್ವೀಕರಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ, ದಯವಿಟ್ಟು ನಿರೀಕ್ಷಿಸಿ." ಮತ್ತು ಅರ್ಧದಷ್ಟು ಕಚೇರಿಯು ತನ್ನ ಮೂಲಸೌಕರ್ಯವನ್ನು ಪ್ರಾರಂಭಿಸುವವರೆಗೆ ಕಾಯುತ್ತಿದೆ.
- ಸ್ಪಾಟ್ ನಿದರ್ಶನಗಳು. ಅಮೆಜಾನ್ ಅಗ್ಗದ ಈವೆಂಟ್ ಅಲ್ಲ ಮತ್ತು ತಾಣಗಳು ನಿಮಗೆ ಸಾಕಷ್ಟು ಉಳಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಮತ್ತು ಅಲ್ಲಿ ನೀವು ಅದರ ಬಗ್ಗೆ ಸಂಪೂರ್ಣ ವರದಿಯನ್ನು ಹೇಳಬಹುದು.
- ಭದ್ರತೆ ಮತ್ತು IAM ಪಾತ್ರಗಳು.
- ಕಳೆದುಹೋದ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಹುಡುಕಲಾಗುತ್ತಿದೆ, ನೀವು Amazone ನಲ್ಲಿ ಅಜ್ಞಾತ ಮೂಲದ ನಿದರ್ಶನಗಳನ್ನು ಹೊಂದಿರುವಾಗ, ಅವರು ಹಣವನ್ನು ತಿನ್ನುತ್ತಾರೆ. ನಿದರ್ಶನಗಳು ತಿಂಗಳಿಗೆ $ 100-150 ವೆಚ್ಚವಾಗಿದ್ದರೂ ಸಹ, ಅದು ವರ್ಷಕ್ಕೆ $ 1 ಕ್ಕಿಂತ ಹೆಚ್ಚು. ಅಂತಹ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಹುಡುಕುವುದು ಲಾಭದಾಯಕ ವ್ಯವಹಾರವಾಗಿದೆ.
- ಮತ್ತು ಕಾಯ್ದಿರಿಸಿದ ನಿದರ್ಶನಗಳು.
ನನಗೂ ಅಷ್ಟೆ. ಟೆರಾಫಾರ್ಮ್ ತುಂಬಾ ತಂಪಾಗಿದೆ, ನೀವು ಅದನ್ನು ಬಳಸಿ. ಧನ್ಯವಾದ!
ಪ್ರಶ್ನೆಗಳು
ವರದಿಗಾಗಿ ಧನ್ಯವಾದಗಳು! ನಿಮ್ಮ ರಾಜ್ಯದ ಫೈಲ್ S3 ನಲ್ಲಿದೆ, ಆದರೆ ಹಲವಾರು ಜನರು ಈ ಸ್ಟೇಟ್ ಫೈಲ್ ಅನ್ನು ತೆಗೆದುಕೊಂಡು ವಿಸ್ತರಿಸಲು ಪ್ರಯತ್ನಿಸಬಹುದಾದ ಸಮಸ್ಯೆಯನ್ನು ನೀವು ಹೇಗೆ ಪರಿಹರಿಸುತ್ತೀರಿ?
ಮೊದಲನೆಯದಾಗಿ, ನಾವು ಯಾವುದೇ ಹಸಿವಿನಲ್ಲಿ ಇಲ್ಲ. ಎರಡನೆಯದಾಗಿ, ಧ್ವಜಗಳಿವೆ, ಅದರಲ್ಲಿ ನಾವು ಕೆಲವು ಕೋಡ್ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದ್ದೇವೆ ಎಂದು ನಾವು ವರದಿ ಮಾಡುತ್ತೇವೆ. ಅಂದರೆ, ಮೂಲಸೌಕರ್ಯವು ತುಂಬಾ ದೊಡ್ಡದಾಗಿದೆ ಎಂಬ ವಾಸ್ತವದ ಹೊರತಾಗಿಯೂ, ಯಾರಾದರೂ ನಿರಂತರವಾಗಿ ಏನನ್ನಾದರೂ ಬಳಸುತ್ತಿದ್ದಾರೆ ಎಂದು ಇದರ ಅರ್ಥವಲ್ಲ. ಮತ್ತು ಸಕ್ರಿಯ ಹಂತ ಇದ್ದಾಗ, ಇದು ಸಮಸ್ಯೆಯಾಗಿತ್ತು; ನಾವು ರಾಜ್ಯ ಫೈಲ್ಗಳನ್ನು Git ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಿದ್ದೇವೆ. ಇದು ಮುಖ್ಯವಾಗಿತ್ತು, ಇಲ್ಲದಿದ್ದರೆ ಯಾರಾದರೂ ಸ್ಟೇಟ್ ಫೈಲ್ ಮಾಡುತ್ತಾರೆ, ಮತ್ತು ಎಲ್ಲವನ್ನೂ ಮುಂದುವರಿಸಲು ನಾವು ಹಸ್ತಚಾಲಿತವಾಗಿ ಅವುಗಳನ್ನು ಒಟ್ಟಿಗೆ ಸೇರಿಸಬೇಕಾಗಿತ್ತು. ಈಗ ಅಂತಹ ಸಮಸ್ಯೆ ಇಲ್ಲ. ಸಾಮಾನ್ಯವಾಗಿ, ಟೆರ್ರಾಫಾರ್ಮ್ ಈ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಿದೆ. ಮತ್ತು ಏನಾದರೂ ನಿರಂತರವಾಗಿ ಬದಲಾಗುತ್ತಿದ್ದರೆ, ನೀವು ಲಾಕ್ಗಳನ್ನು ಬಳಸಬಹುದು, ಅದು ನೀವು ಹೇಳಿದ್ದನ್ನು ತಡೆಯುತ್ತದೆ.
ನೀವು ಓಪನ್ ಸೋರ್ಸ್ ಅಥವಾ ಎಂಟರ್ಪ್ರೈಸ್ ಬಳಸುತ್ತಿರುವಿರಾ?
ಯಾವುದೇ ಎಂಟರ್ಪ್ರೈಸ್ ಇಲ್ಲ, ಅಂದರೆ ನೀವು ಹೋಗಿ ಎಲ್ಲವನ್ನೂ ಉಚಿತವಾಗಿ ಡೌನ್ಲೋಡ್ ಮಾಡಬಹುದು.
ನನ್ನ ಹೆಸರು ಸ್ಟಾನಿಸ್ಲಾವ್. ನಾನು ಒಂದು ಸಣ್ಣ ಸೇರ್ಪಡೆ ಮಾಡಲು ಬಯಸುತ್ತೇನೆ. ನೀವು ಅಮೆಜಾನ್ ವೈಶಿಷ್ಟ್ಯದ ಕುರಿತು ಮಾತನಾಡಿದ್ದೀರಿ ಅದು ನಿಮಗೆ ಒಂದು ನಿದರ್ಶನವನ್ನು ಕೊಲ್ಲಲಾಗದ ರೀತಿಯಲ್ಲಿ ಮಾಡಲು ಅನುಮತಿಸುತ್ತದೆ. ಇದು ಟೆರಾಫಾರ್ಮ್ನಲ್ಲಿಯೇ ಇದೆ; ಲೈಫ್ ಸೆಕೆಂಡ್ ಬ್ಲಾಕ್ನಲ್ಲಿ ನೀವು ಬದಲಾವಣೆಗಳ ಮೇಲಿನ ನಿಷೇಧ ಅಥವಾ ವಿನಾಶದ ನಿಷೇಧವನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಬಹುದು.
ಸಮಯ ಸೀಮಿತವಾಗಿತ್ತು. ಒಳ್ಳೆಯ ಅಂಶ.
ನನಗೂ ಎರಡು ವಿಷಯಗಳನ್ನು ಕೇಳಬೇಕೆನಿಸಿತು. ಮೊದಲನೆಯದಾಗಿ, ನೀವು ಪರೀಕ್ಷೆಯ ಬಗ್ಗೆ ಮಾತನಾಡಿದ್ದೀರಿ. ನೀವು ಯಾವುದೇ ಪರೀಕ್ಷಾ ಸಾಧನಗಳನ್ನು ಬಳಸಿದ್ದೀರಾ? ನಾನು ಟೆಸ್ಟ್ ಕಿಚನ್ ಪ್ಲಗಿನ್ ಬಗ್ಗೆ ಕೇಳಿದೆ. ಬಹುಶಃ ಇನ್ನೂ ಏನಾದರೂ ಇದೆ. ಮತ್ತು ನಾನು ಸ್ಥಳೀಯ ಮೌಲ್ಯಗಳ ಬಗ್ಗೆ ಕೇಳಲು ಬಯಸುತ್ತೇನೆ. ಇನ್ಪುಟ್ ವೇರಿಯೇಬಲ್ಗಳಿಂದ ಅವು ಮೂಲಭೂತವಾಗಿ ಹೇಗೆ ಭಿನ್ನವಾಗಿವೆ? ಮತ್ತು ನಾನು ಸ್ಥಳೀಯ ಮೌಲ್ಯಗಳ ಮೂಲಕ ಮಾತ್ರ ಏನನ್ನಾದರೂ ಪ್ಯಾರಾಮೀಟರ್ ಮಾಡಲು ಏಕೆ ಸಾಧ್ಯವಿಲ್ಲ? ನಾನು ಈ ವಿಷಯವನ್ನು ಕಂಡುಹಿಡಿಯಲು ಪ್ರಯತ್ನಿಸಿದೆ, ಆದರೆ ಹೇಗಾದರೂ ನಾನು ಅದನ್ನು ನಾನೇ ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ.
ಈ ಕೋಣೆಯ ಹೊರಗೆ ನಾವು ಹೆಚ್ಚು ವಿವರವಾಗಿ ಮಾತನಾಡಬಹುದು. ನಮ್ಮ ಪರೀಕ್ಷಾ ಸಾಧನಗಳು ಸಂಪೂರ್ಣವಾಗಿ ಸ್ವಯಂ ನಿರ್ಮಿತವಾಗಿವೆ. ಅಲ್ಲಿ ಪರೀಕ್ಷಿಸಲು ಏನೂ ಇಲ್ಲ. ಸಾಮಾನ್ಯವಾಗಿ, ಸ್ವಯಂಚಾಲಿತ ಪರೀಕ್ಷೆಗಳು ಎಲ್ಲೋ ಮೂಲಸೌಕರ್ಯವನ್ನು ಎತ್ತಿಕೊಂಡು, ಅದು ಸರಿಯೇ ಎಂದು ಪರಿಶೀಲಿಸಿ, ತದನಂತರ ನಿಮ್ಮ ಮೂಲಸೌಕರ್ಯವು ಇನ್ನೂ ಉತ್ತಮ ಸ್ಥಿತಿಯಲ್ಲಿದೆ ಎಂಬ ವರದಿಯೊಂದಿಗೆ ಎಲ್ಲವನ್ನೂ ನಾಶಪಡಿಸಿದಾಗ ಆಯ್ಕೆಗಳಿವೆ. ಪರೀಕ್ಷಾ ಸ್ಟ್ಯಾಕ್ಗಳು ಪ್ರತಿದಿನ ರನ್ ಆಗುವುದರಿಂದ ನಾವು ಇದನ್ನು ಹೊಂದಿಲ್ಲ. ಮತ್ತು ಅದು ಸಾಕು. ಮತ್ತು ಏನಾದರೂ ಒಡೆಯಲು ಪ್ರಾರಂಭಿಸಿದರೆ, ನಾವು ಅದನ್ನು ಬೇರೆಡೆ ಪರಿಶೀಲಿಸದೆಯೇ ಅದು ಒಡೆಯಲು ಪ್ರಾರಂಭಿಸುತ್ತದೆ.
ಸ್ಥಳೀಯ ಮೌಲ್ಯಗಳಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ, ಕೋಣೆಯ ಹೊರಗೆ ಸಂಭಾಷಣೆಯನ್ನು ಮುಂದುವರಿಸೋಣ.
ನಮಸ್ಕಾರ! ವರದಿಗಾಗಿ ಧನ್ಯವಾದಗಳು! ಬಹಳ ತಿಳಿವಳಿಕೆ. ಮೂಲಸೌಕರ್ಯವನ್ನು ವಿವರಿಸಲು ನೀವು ಒಂದೇ ರೀತಿಯ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿದ್ದೀರಿ ಎಂದು ನೀವು ಹೇಳಿದ್ದೀರಿ. ಈ ಕೋಡ್ ಅನ್ನು ರಚಿಸಲು ನೀವು ಯೋಚಿಸಿದ್ದೀರಾ?
ಉತ್ತಮ ಪ್ರಶ್ನೆ, ಧನ್ಯವಾದಗಳು! ನಾವು ಮೂಲಸೌಕರ್ಯವನ್ನು ಕೋಡ್ ಆಗಿ ಬಳಸುವಾಗ, ನಾವು ಕೋಡ್ ಅನ್ನು ನೋಡುತ್ತೇವೆ ಮತ್ತು ಆ ಕೋಡ್ ಹಿಂದೆ ಯಾವ ಮೂಲಸೌಕರ್ಯವಿದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತೇವೆ ಎಂದು ನಾವು ಭಾವಿಸುತ್ತೇವೆ. ಕೋಡ್ ಅನ್ನು ರಚಿಸಿದರೆ, ಯಾವ ರೀತಿಯ ಮೂಲಸೌಕರ್ಯವು ಇರುತ್ತದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಯಾವ ಕೋಡ್ ಅನ್ನು ರಚಿಸಲಾಗುವುದು ಎಂಬುದನ್ನು ನಾವು ಊಹಿಸಬೇಕಾಗಿದೆ. ಒಂದೋ ನಾವು ಕೋಡ್ ಅನ್ನು ರಚಿಸುತ್ತೇವೆ, ಅದನ್ನು ಒಪ್ಪುತ್ತೇವೆ ಮತ್ತು ಮೂಲಭೂತವಾಗಿ ಅದೇ ಸಂಭವಿಸುತ್ತದೆ. ಹಾಗಾಗಿ ನಾವು ಬರೆದ ಮಾರ್ಗವನ್ನು ನಾವು ಅನುಸರಿಸಿದ್ದೇವೆ, ಅದು ನಮಗೆ ಸಿಕ್ಕಿತು. ನಾವು ಅವುಗಳನ್ನು ತಯಾರಿಸಲು ಪ್ರಾರಂಭಿಸಿದಾಗ ಪ್ಲಸ್ ಜನರೇಟರ್ಗಳು ಸ್ವಲ್ಪ ಸಮಯದ ನಂತರ ಕಾಣಿಸಿಕೊಂಡವು. ಮತ್ತು ಬದಲಾಯಿಸಲು ಈಗಾಗಲೇ ತಡವಾಗಿತ್ತು.
ನೀವು jsonnet ಬಗ್ಗೆ ಏನಾದರೂ ಕೇಳಿದ್ದೀರಾ?
ನಂ
ನೋಡಿ, ಇದು ತುಂಬಾ ತಂಪಾದ ವಿಷಯ. ನೀವು ಅದನ್ನು ಅನ್ವಯಿಸುವ ಮತ್ತು ಡೇಟಾ ರಚನೆಯನ್ನು ರಚಿಸುವ ನಿರ್ದಿಷ್ಟ ಪ್ರಕರಣವನ್ನು ನಾನು ನೋಡುತ್ತೇನೆ.
ಕ್ಷೌರದ ಯಂತ್ರದ ಬಗ್ಗೆ ಜೋಕ್ನಲ್ಲಿರುವಂತೆ ನೀವು ಅವುಗಳನ್ನು ಹೊಂದಿರುವಾಗ ಜನರೇಟರ್ಗಳು ಒಳ್ಳೆಯದು. ಅಂದರೆ, ಮೊದಲ ಬಾರಿಗೆ ಮುಖವು ವಿಭಿನ್ನವಾಗಿರುತ್ತದೆ, ಆದರೆ ನಂತರ ಎಲ್ಲರಿಗೂ ಒಂದೇ ಮುಖ. ಜನರೇಟರ್ಗಳು ಚೆನ್ನಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತವೆ. ಆದರೆ, ದುರದೃಷ್ಟವಶಾತ್, ನಮ್ಮ ಮುಖಗಳು ಸ್ವಲ್ಪ ವಿಭಿನ್ನವಾಗಿವೆ. ಇದು ಸಮಸ್ಯೆ.
ಸುಮ್ಮನೆ ನೋಡು. ಧನ್ಯವಾದ!
ನನ್ನ ಹೆಸರು ಮ್ಯಾಕ್ಸಿಮ್, ನಾನು Sberbank ನಿಂದ ಬಂದಿದ್ದೇನೆ. ನೀವು ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗೆ ಸಮಾನವಾಗಿ ಹೇಗೆ ತರಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದೀರಿ ಎಂಬುದರ ಕುರಿತು ನೀವು ಸ್ವಲ್ಪ ಮಾತನಾಡಿದ್ದೀರಿ. ಅನ್ಸಿಬಲ್ ಅನ್ನು ಬಳಸುವುದು ಸುಲಭವಲ್ಲವೇ?
ಇವು ತುಂಬಾ ವಿಭಿನ್ನವಾದ ವಿಷಯಗಳು. ನೀವು ಅನ್ಸಿಬಲ್ನಲ್ಲಿ ಸಂಪನ್ಮೂಲಗಳನ್ನು ರಚಿಸಬಹುದು ಮತ್ತು ಪಪಿಟ್ ಅಮೆಜಾನ್ನಲ್ಲಿ ಸಂಪನ್ಮೂಲಗಳನ್ನು ರಚಿಸಬಹುದು. ಆದರೆ ಟೆರಾಫಾರ್ಮ್ ನೇರವಾಗಿ ಹರಿತವಾಗಿದೆ.
ನೀವು ಕೇವಲ ಅಮೆಜಾನ್ ಹೊಂದಿದ್ದೀರಾ?
ನಮ್ಮಲ್ಲಿ ಅಮೆಜಾನ್ ಮಾತ್ರ ಇದೆ ಎಂದಲ್ಲ. ನಾವು ಬಹುತೇಕ ಅಮೆಜಾನ್ ಅನ್ನು ಮಾತ್ರ ಹೊಂದಿದ್ದೇವೆ. ಆದರೆ ಪ್ರಮುಖ ವೈಶಿಷ್ಟ್ಯವೆಂದರೆ ಟೆರ್ರಾಫಾರ್ಮ್ ನೆನಪಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಅನ್ಸಿಬಲ್ನಲ್ಲಿ, "ನನಗೆ 5 ನಿದರ್ಶನಗಳನ್ನು ನೀಡಿ" ಎಂದು ನೀವು ಹೇಳಿದರೆ, ಅದು ಹೆಚ್ಚಾಗುತ್ತದೆ, ಮತ್ತು ನಂತರ ನೀವು ಹೇಳುತ್ತೀರಿ: "ಮತ್ತು ಈಗ ನನಗೆ 3 ಬೇಕು." ಮತ್ತು ಟೆರಾಫಾರ್ಮ್ ಹೇಳುತ್ತದೆ: "ಸರಿ, ನಾನು 2 ಅನ್ನು ಕೊಲ್ಲುತ್ತೇನೆ," ಮತ್ತು ಅನ್ಸಿಬಲ್ ಹೇಳುತ್ತಾನೆ: "ಸರಿ, ನಿಮಗಾಗಿ 3 ಇಲ್ಲಿದೆ." ಒಟ್ಟು 8.
ನಮಸ್ಕಾರ! ನಿಮ್ಮ ವರದಿಗಾಗಿ ಧನ್ಯವಾದಗಳು! ಟೆರ್ರಾಫಾರ್ಮ್ ಬಗ್ಗೆ ಕೇಳಲು ಇದು ತುಂಬಾ ಆಸಕ್ತಿದಾಯಕವಾಗಿತ್ತು. ಟೆರ್ರಾಫಾರ್ಮ್ ಇನ್ನೂ ಸ್ಥಿರವಾದ ಬಿಡುಗಡೆಯನ್ನು ಹೊಂದಿಲ್ಲ ಎಂಬ ಅಂಶದ ಬಗ್ಗೆ ನಾನು ತಕ್ಷಣ ಒಂದು ಸಣ್ಣ ಕಾಮೆಂಟ್ ಮಾಡಲು ಬಯಸುತ್ತೇನೆ, ಆದ್ದರಿಂದ ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಬಹಳ ಎಚ್ಚರಿಕೆಯಿಂದ ಪರಿಗಣಿಸಿ.
ಊಟಕ್ಕೆ ಉತ್ತಮ ಚಮಚ. ಅಂದರೆ, ನಿಮಗೆ ಪರಿಹಾರ ಬೇಕಾದರೆ, ಕೆಲವೊಮ್ಮೆ ನೀವು ಅಸ್ಥಿರವಾದದ್ದು ಇತ್ಯಾದಿಗಳನ್ನು ಮುಂದೂಡುತ್ತೀರಿ, ಆದರೆ ಅದು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು ಅದು ನಮಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
ಪ್ರಶ್ನೆ ಇದು. ನೀವು ರಿಮೋಟ್ ಬ್ಯಾಕೆಂಡ್ ಅನ್ನು ಬಳಸುತ್ತೀರಿ, ನೀವು S 3 ಅನ್ನು ಬಳಸುತ್ತೀರಿ. ನೀವು ಅಧಿಕೃತ ಬ್ಯಾಕೆಂಡ್ ಅನ್ನು ಏಕೆ ಬಳಸಬಾರದು?
ಅಧಿಕೃತ?
ಟೆರಾಫಾರ್ಮ್ ಮೇಘ.
ಅವನು ಯಾವಾಗ ಕಾಣಿಸಿಕೊಂಡನು?
ಸುಮಾರು 4 ತಿಂಗಳ ಹಿಂದೆ.
ಇದು 4 ವರ್ಷಗಳ ಹಿಂದೆ ಕಾಣಿಸಿಕೊಂಡಿದ್ದರೆ, ನಾನು ಬಹುಶಃ ನಿಮ್ಮ ಪ್ರಶ್ನೆಗೆ ಉತ್ತರಿಸುತ್ತಿದ್ದೆ.
ಈಗಾಗಲೇ ಅಂತರ್ನಿರ್ಮಿತ ಕಾರ್ಯ ಮತ್ತು ಲಾಕ್ಗಳಿವೆ, ಮತ್ತು ನೀವು ರಾಜ್ಯ ಫೈಲ್ ಅನ್ನು ಸಂಗ್ರಹಿಸಬಹುದು. ಒಮ್ಮೆ ಪ್ರಯತ್ನಿಸಿ. ಆದರೆ ನಾನು ಅದನ್ನು ಪರೀಕ್ಷಿಸಿಲ್ಲ.
ನಾವು ಅತಿ ವೇಗದಲ್ಲಿ ಚಲಿಸುವ ದೊಡ್ಡ ರೈಲಿನಲ್ಲಿ ಪ್ರಯಾಣಿಸುತ್ತಿದ್ದೇವೆ. ಮತ್ತು ನೀವು ಕೆಲವು ಕಾರುಗಳನ್ನು ತೆಗೆದುಕೊಂಡು ಅವುಗಳನ್ನು ಎಸೆಯಲು ಸಾಧ್ಯವಿಲ್ಲ.
ನೀವು ಸ್ನೋಫ್ಲೇಕ್ಗಳ ಬಗ್ಗೆ ಮಾತನಾಡಿದ್ದೀರಿ, ನೀವು ಶಾಖೆಯನ್ನು ಏಕೆ ಬಳಸಲಿಲ್ಲ? ಅದು ಏಕೆ ಆ ರೀತಿಯಲ್ಲಿ ಕೆಲಸ ಮಾಡಲಿಲ್ಲ?
ನಮ್ಮ ವಿಧಾನವೆಂದರೆ ಸಂಪೂರ್ಣ ಮೂಲಸೌಕರ್ಯವು ಒಂದು ಭಂಡಾರದಲ್ಲಿದೆ. ಟೆರಾಫಾರ್ಮ್, ಪಪಿಟ್, ಇದಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಎಲ್ಲಾ ಲಿಪಿಗಳು, ಅವೆಲ್ಲವೂ ಒಂದೇ ಭಂಡಾರದಲ್ಲಿವೆ. ಈ ರೀತಿಯಾಗಿ ಹೆಚ್ಚುತ್ತಿರುವ ಬದಲಾವಣೆಗಳನ್ನು ಒಂದರ ನಂತರ ಒಂದರಂತೆ ಪರೀಕ್ಷಿಸಲಾಗುತ್ತದೆ ಎಂದು ನಾವು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಬಹುದು. ಇದು ಶಾಖೆಗಳ ಗುಂಪಾಗಿದ್ದರೆ, ಅಂತಹ ಯೋಜನೆಯನ್ನು ನಿರ್ವಹಿಸಲು ಅಸಾಧ್ಯವಾಗಿದೆ. ಆರು ತಿಂಗಳುಗಳು ಹಾದುಹೋಗುತ್ತವೆ, ಮತ್ತು ಅವರು ತುಂಬಾ ಭಿನ್ನವಾಗುತ್ತಾರೆ, ಅದು ಕೇವಲ ಒಂದು ರೀತಿಯ ಶಿಕ್ಷೆಯಾಗಿದೆ. ರಿಫ್ಯಾಕ್ಟರಿಂಗ್ ಮಾಡುವ ಮೊದಲು ನಾನು ತಪ್ಪಿಸಿಕೊಳ್ಳಲು ಬಯಸಿದ್ದು ಇದನ್ನೇ.
ಆದ್ದರಿಂದ ಇದು ಕೆಲಸ ಮಾಡುವುದಿಲ್ಲ?
ಇದು ಎಲ್ಲಾ ಕೆಲಸ ಮಾಡುವುದಿಲ್ಲ.
ಶಾಖೆಯಲ್ಲಿ ನಾನು ಫೋಲ್ಡರ್ ಸ್ಲೈಡ್ ಅನ್ನು ಕತ್ತರಿಸಿದ್ದೇನೆ. ಅಂದರೆ, ನೀವು ಪ್ರತಿ ಪರೀಕ್ಷಾ ಸ್ಟಾಕ್ಗೆ ಇದನ್ನು ಮಾಡಿದರೆ, ಉದಾಹರಣೆಗೆ, ತಂಡ A ತನ್ನದೇ ಆದ ಫೋಲ್ಡರ್ ಅನ್ನು ಹೊಂದಿದೆ, ತಂಡ B ತನ್ನದೇ ಆದ ಫೋಲ್ಡರ್ ಅನ್ನು ಹೊಂದಿದೆ, ಆಗ ಇದು ಸಹ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ. ಎಲ್ಲರಿಗೂ ಸರಿಹೊಂದುವಷ್ಟು ಹೊಂದಿಕೊಳ್ಳುವ ಏಕೀಕೃತ ಪರೀಕ್ಷಾ ಪರಿಸರ ಕೋಡ್ ಅನ್ನು ನಾವು ರಚಿಸಿದ್ದೇವೆ. ಅಂದರೆ, ನಾವು ಒಂದು ಕೋಡ್ ಅನ್ನು ನೀಡಿದ್ದೇವೆ.
ನಮಸ್ಕಾರ! ನನ್ನ ಹೆಸರು ಯುರಾ! ವರದಿಗಾಗಿ ಧನ್ಯವಾದಗಳು! ಮಾಡ್ಯೂಲ್ಗಳ ಬಗ್ಗೆ ಪ್ರಶ್ನೆ. ನೀವು ಮಾಡ್ಯೂಲ್ಗಳನ್ನು ಬಳಸುತ್ತಿದ್ದೀರಿ ಎಂದು ನೀವು ಹೇಳುತ್ತೀರಿ. ಮತ್ತೊಂದು ವ್ಯಕ್ತಿಯ ಬದಲಾವಣೆಯೊಂದಿಗೆ ಹೊಂದಿಕೆಯಾಗದ ಒಂದು ಮಾಡ್ಯೂಲ್ಗೆ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡಿದ್ದರೆ ನೀವು ಸಮಸ್ಯೆಯನ್ನು ಹೇಗೆ ಪರಿಹರಿಸುತ್ತೀರಿ? ನೀವು ಹೇಗಾದರೂ ಮಾಡ್ಯೂಲ್ಗಳನ್ನು ಆವೃತ್ತಿ ಮಾಡುತ್ತಿದ್ದೀರಾ ಅಥವಾ ಎರಡು ಅವಶ್ಯಕತೆಗಳನ್ನು ಪೂರೈಸಲು ವಂಡರ್ವಾಫಲ್ ಅನ್ನು ತರಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದೀರಾ?
ಇದು ದೊಡ್ಡ ಹಿಮದ ರಾಶಿಯ ಸಮಸ್ಯೆಯಾಗಿದೆ. ಕೆಲವು ನಿರುಪದ್ರವಿ ಬದಲಾವಣೆಯು ಮೂಲಸೌಕರ್ಯದ ಕೆಲವು ಭಾಗವನ್ನು ಮುರಿಯಬಹುದಾದಾಗ ನಾವು ಬಳಲುತ್ತಿದ್ದೇವೆ. ಮತ್ತು ಇದು ಸ್ವಲ್ಪ ಸಮಯದ ನಂತರ ಮಾತ್ರ ಗಮನಿಸಬಹುದಾಗಿದೆ.
ಅಂದರೆ, ಅದನ್ನು ಇನ್ನೂ ಪರಿಹರಿಸಲಾಗಿಲ್ಲವೇ?
ನೀವು ಸಾರ್ವತ್ರಿಕ ಮಾಡ್ಯೂಲ್ಗಳನ್ನು ತಯಾರಿಸುತ್ತೀರಿ. ಸ್ನೋಫ್ಲೇಕ್ಗಳನ್ನು ತಪ್ಪಿಸಿ. ಮತ್ತು ಎಲ್ಲವೂ ಕಾರ್ಯರೂಪಕ್ಕೆ ಬರುತ್ತವೆ. ಇದನ್ನು ತಪ್ಪಿಸುವುದು ಹೇಗೆ ಎನ್ನುವುದೇ ವರದಿಯ ದ್ವಿತೀಯಾರ್ಧ.
ನಮಸ್ಕಾರ! ವರದಿಗಾಗಿ ಧನ್ಯವಾದಗಳು! ನಾನು ಸ್ಪಷ್ಟಪಡಿಸಲು ಬಯಸುತ್ತೇನೆ. ತೆರೆಮರೆಯಲ್ಲಿ ನಾನು ಬಂದ ದೊಡ್ಡ ರಾಶಿ ಇತ್ತು. ಪಪಿಟ್ ಮತ್ತು ಪಾತ್ರ ವಿತರಣೆಯನ್ನು ಹೇಗೆ ಸಂಯೋಜಿಸಲಾಗಿದೆ?
ಬಳಕೆದಾರ ಡೇಟಾ.
ಅಂದರೆ, ನೀವು ಫೈಲ್ ಅನ್ನು ಉಗುಳುವುದು ಮತ್ತು ಹೇಗಾದರೂ ಅದನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದೇ?
ಬಳಕೆದಾರ-ದತ್ತಾಂಶವು ಒಂದು ಟಿಪ್ಪಣಿಯಾಗಿದೆ, ಅಂದರೆ ನಾವು ಚಿತ್ರದ ತದ್ರೂಪಿ ಮಾಡುವಾಗ, ಡೀಮನ್ ಅಲ್ಲಿಗೆ ಏರುತ್ತಾನೆ ಮತ್ತು ಅವನು ಯಾರೆಂದು ಕಂಡುಹಿಡಿಯಲು ಪ್ರಯತ್ನಿಸುತ್ತಾ, ಅವನು ಲೋಡ್ ಬ್ಯಾಲೆನ್ಸರ್ ಎಂದು ಟಿಪ್ಪಣಿಯನ್ನು ಓದುತ್ತಾನೆ.
ಅಂದರೆ, ಇದು ಕೆಲವು ರೀತಿಯ ಪ್ರತ್ಯೇಕ ಪ್ರಕ್ರಿಯೆಯಾಗಿದೆಯೇ?
ನಾವು ಅದನ್ನು ಕಂಡುಹಿಡಿದಿಲ್ಲ. ನಾವು ಅದನ್ನು ಬಳಸುತ್ತೇವೆ.
ನಮಸ್ಕಾರ! ಬಳಕೆದಾರರ ಡೇಟಾದ ಕುರಿತು ನನ್ನ ಬಳಿ ಪ್ರಶ್ನೆಯಿದೆ. ಅಲ್ಲಿ ಸಮಸ್ಯೆಗಳಿವೆ, ಯಾರಾದರೂ ತಪ್ಪು ಸ್ಥಳಕ್ಕೆ ಕಳುಹಿಸಬಹುದು ಎಂದು ನೀವು ಹೇಳಿದ್ದೀರಿ. ಅದೇ Git ನಲ್ಲಿ ಬಳಕೆದಾರ-ದತ್ತಾಂಶವನ್ನು ಸಂಗ್ರಹಿಸಲು ಯಾವುದಾದರೂ ಮಾರ್ಗವಿದೆಯೇ, ಇದರಿಂದ ಬಳಕೆದಾರ-ದತ್ತಾಂಶವು ಏನನ್ನು ಉಲ್ಲೇಖಿಸುತ್ತದೆ ಎಂಬುದು ಯಾವಾಗಲೂ ಸ್ಪಷ್ಟವಾಗಿರುತ್ತದೆ?
ನಾವು ಟೆಂಪ್ಲೇಟ್ನಿಂದ ಬಳಕೆದಾರರ ಡೇಟಾವನ್ನು ರಚಿಸುತ್ತೇವೆ. ಅಂದರೆ, ನಿರ್ದಿಷ್ಟ ಸಂಖ್ಯೆಯ ಅಸ್ಥಿರಗಳನ್ನು ಅಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ. ಮತ್ತು ಟೆರ್ರಾಫಾರ್ಮ್ ಅಂತಿಮ ಫಲಿತಾಂಶವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ. ಆದ್ದರಿಂದ, ನೀವು ಕೇವಲ ಟೆಂಪ್ಲೇಟ್ ಅನ್ನು ನೋಡಲಾಗುವುದಿಲ್ಲ ಮತ್ತು ಏನಾಗುತ್ತದೆ ಎಂದು ಹೇಳಲು ಸಾಧ್ಯವಿಲ್ಲ, ಏಕೆಂದರೆ ಡೆವಲಪರ್ ಅವರು ಈ ವೇರಿಯೇಬಲ್ನಲ್ಲಿ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಹಾದುಹೋಗುತ್ತಿದ್ದಾರೆ ಎಂದು ಭಾವಿಸುತ್ತಾರೆ ಎಂಬ ಅಂಶಕ್ಕೆ ಎಲ್ಲಾ ಸಮಸ್ಯೆಗಳು ಸಂಬಂಧಿಸಿವೆ, ಆದರೆ ಅಲ್ಲಿ ಒಂದು ಶ್ರೇಣಿಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಮತ್ತು ಅವನು - ಬಾಮ್ ಮತ್ತು ನಾನು - ಹೀಗೆ, ಹೀಗೆ, ಮುಂದಿನ ಸಾಲು, ಮತ್ತು ಎಲ್ಲವೂ ಮುರಿಯಿತು. ಇದು ಹೊಸ ಸಂಪನ್ಮೂಲವಾಗಿದ್ದರೆ ಮತ್ತು ಒಬ್ಬ ವ್ಯಕ್ತಿಯು ಅದನ್ನು ಎತ್ತಿಕೊಂಡು ಏನಾದರೂ ಕೆಲಸ ಮಾಡುತ್ತಿಲ್ಲ ಎಂದು ನೋಡಿದರೆ, ಅದು ತ್ವರಿತವಾಗಿ ಪರಿಹರಿಸಲ್ಪಡುತ್ತದೆ. ಮತ್ತು ಈ ಆಟೋಸ್ಕೇಲ್ ಗುಂಪನ್ನು ನವೀಕರಿಸಿದರೆ, ಕೆಲವು ಹಂತದಲ್ಲಿ ಆಟೋಸ್ಕೇಲ್ ಗುಂಪಿನಲ್ಲಿರುವ ನಿದರ್ಶನಗಳನ್ನು ಬದಲಾಯಿಸಲು ಪ್ರಾರಂಭಿಸುತ್ತದೆ. ಮತ್ತು ಬ್ಯಾಂಗ್, ಏನೋ ಕೆಲಸ ಮಾಡುವುದಿಲ್ಲ. ಇದು ನೋವುಂಟುಮಾಡುತ್ತದೆ.
ಪರೀಕ್ಷೆ ಮಾತ್ರ ಪರಿಹಾರವಾಗಿದೆ ಎಂದು ಅದು ತಿರುಗುತ್ತದೆ?
ಹೌದು, ನೀವು ಸಮಸ್ಯೆಯನ್ನು ನೋಡುತ್ತೀರಿ, ನೀವು ಅಲ್ಲಿ ಪರೀಕ್ಷಾ ಹಂತಗಳನ್ನು ಸೇರಿಸುತ್ತೀರಿ. ಅಂದರೆ, ಔಟ್ಪುಟ್ ಅನ್ನು ಸಹ ಪರೀಕ್ಷಿಸಬಹುದು. ಬಹುಶಃ ಇದು ತುಂಬಾ ಅನುಕೂಲಕರವಾಗಿಲ್ಲ, ಆದರೆ ನೀವು ಕೆಲವು ಗುರುತುಗಳನ್ನು ಸಹ ಹಾಕಬಹುದು - ಬಳಕೆದಾರ-ಡೇಟಾವನ್ನು ಇಲ್ಲಿ ಹೊಡೆಯಲಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಿ.
ನನ್ನ ಹೆಸರು ತೈಮೂರ್. ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಸರಿಯಾಗಿ ಸಂಘಟಿಸುವುದು ಹೇಗೆ ಎಂಬುದರ ಕುರಿತು ವರದಿಗಳಿವೆ ಎಂಬುದು ತುಂಬಾ ತಂಪಾಗಿದೆ.
ನಾನು ಇನ್ನೂ ಪ್ರಾರಂಭಿಸಿಲ್ಲ.
ಬಹುಶಃ ಮುಂದಿನ ಸಮ್ಮೇಳನದಲ್ಲಿ ಇರುತ್ತದೆ ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ. ನನ್ನದೊಂದು ಸರಳ ಪ್ರಶ್ನೆಯಿದೆ. ನೀವು tfvars ಅನ್ನು ಬಳಸುವುದಕ್ಕಿಂತ ಪ್ರತ್ಯೇಕ ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ ಮೌಲ್ಯವನ್ನು ಏಕೆ ಹಾರ್ಡ್ಕೋಡಿಂಗ್ ಮಾಡುತ್ತಿದ್ದೀರಿ, ಅಂದರೆ tfvars ಗಿಂತ ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರುವ ಮಾಡ್ಯೂಲ್ ಏಕೆ ಉತ್ತಮವಾಗಿದೆ?
ಅಂದರೆ, ನಾನು ಇಲ್ಲಿ ಬರೆಯಬೇಕೇ (ಸ್ಲೈಡ್: Production/environment/settings.tf): domain = variable, domain vpcnetwork, variable vpcnetwork ಮತ್ತು stvars - ನಾನು ಅದೇ ವಿಷಯವನ್ನು ಪಡೆಯಬಹುದೇ?
ಅದನ್ನೇ ನಾವು ಮಾಡುತ್ತೇವೆ. ನಾವು ಸೆಟ್ಟಿಂಗ್ ಮೂಲ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಉಲ್ಲೇಖಿಸುತ್ತೇವೆ, ಉದಾಹರಣೆಗೆ.
ಮೂಲಭೂತವಾಗಿ, ಇದು ಅಂತಹ tfvars ಆಗಿದೆ. ಪರೀಕ್ಷಾ ಪರಿಸರದಲ್ಲಿ Tfvars ತುಂಬಾ ಅನುಕೂಲಕರವಾಗಿದೆ. ನನ್ನ ಬಳಿ ದೊಡ್ಡ ನಿದರ್ಶನಗಳಿಗೆ, ಚಿಕ್ಕದಕ್ಕೆ tfvar ಗಳಿವೆ. ಮತ್ತು ನಾನು ಒಂದು ಫೈಲ್ ಅನ್ನು ಫೋಲ್ಡರ್ಗೆ ಎಸೆದಿದ್ದೇನೆ. ಮತ್ತು ನಾನು ಬಯಸಿದ್ದನ್ನು ನಾನು ಪಡೆದುಕೊಂಡೆ. ನಾವು ಮೂಲಸೌಕರ್ಯವನ್ನು ಕಡಿತಗೊಳಿಸುವಾಗ, ಎಲ್ಲವನ್ನೂ ನೋಡಲು ಮತ್ತು ತಕ್ಷಣವೇ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗಬೇಕೆಂದು ನಾವು ಬಯಸುತ್ತೇವೆ. ಆದ್ದರಿಂದ ನೀವು ಇಲ್ಲಿ ನೋಡಬೇಕು, ನಂತರ tfvars ಅನ್ನು ನೋಡಬೇಕು ಎಂದು ಅದು ತಿರುಗುತ್ತದೆ.
ಎಲ್ಲವನ್ನೂ ಒಂದೇ ಸ್ಥಳದಲ್ಲಿ ಹೊಂದಲು ಸಾಧ್ಯವೇ?
ಹೌದು, ನೀವು ಒಂದು ಕೋಡ್ ಅನ್ನು ಹೊಂದಿರುವಾಗ tfvars ಆಗಿದೆ. ಮತ್ತು ಇದನ್ನು ವಿವಿಧ ಸ್ಥಳಗಳಲ್ಲಿ ವಿಭಿನ್ನ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳೊಂದಿಗೆ ಬಳಸಲಾಗುತ್ತದೆ. ನಂತರ ನೀವು tfvarಗಳನ್ನು ಎಸೆಯುತ್ತೀರಿ ಮತ್ತು ನಿಮ್ಮ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳನ್ನು ಪಡೆಯುತ್ತೀರಿ. ಮತ್ತು ನಾವು ಮೂಲಸೌಕರ್ಯವನ್ನು ಅದರ ಶುದ್ಧ ರೂಪದಲ್ಲಿ ಕೋಡ್ ಆಗಿರುತ್ತೇವೆ. ನಾನು ನೋಡಿದೆ ಮತ್ತು ಅರ್ಥವಾಯಿತು.
ನಮಸ್ಕಾರ! ನೀವು ಟೆರ್ರಾಫಾರ್ಮ್ ಮಾಡಿದ್ದನ್ನು ಕ್ಲೌಡ್ ಪೂರೈಕೆದಾರರು ಹಸ್ತಕ್ಷೇಪ ಮಾಡುವ ಸಂದರ್ಭಗಳನ್ನು ನೀವು ಎದುರಿಸಿದ್ದೀರಾ? ನಾವು ಮೆಟಾಡೇಟಾವನ್ನು ಸಂಪಾದಿಸುತ್ತೇವೆ ಎಂದು ಹೇಳೋಣ. ssh ಕೀಗಳಿವೆ. ಮತ್ತು ಗೂಗಲ್ ನಿರಂತರವಾಗಿ ತನ್ನ ಮೆಟಾಡೇಟಾ ಮತ್ತು ಅದರ ಕೀಗಳನ್ನು ಅಲ್ಲಿ ಇರಿಸುತ್ತದೆ. ಮತ್ತು ಟೆರ್ರಾಫಾರ್ಮ್ ಯಾವಾಗಲೂ ಬದಲಾವಣೆಗಳನ್ನು ಹೊಂದಿದೆ ಎಂದು ಬರೆಯುತ್ತಾರೆ. ಪ್ರತಿ ಓಟದ ನಂತರ, ಏನೂ ಬದಲಾಗದಿದ್ದರೂ, ಈಗ ಈ ಕ್ಷೇತ್ರವನ್ನು ನವೀಕರಿಸುತ್ತೇನೆ ಎಂದು ಅವರು ಯಾವಾಗಲೂ ಹೇಳುತ್ತಾರೆ.
ಕೀಲಿಗಳೊಂದಿಗೆ, ಆದರೆ ಹೌದು, ಮೂಲಸೌಕರ್ಯದ ಭಾಗವು ಈ ವಿಷಯದಿಂದ ಪ್ರಭಾವಿತವಾಗಿರುತ್ತದೆ, ಅಂದರೆ ಟೆರಾಫಾರ್ಮ್ ಏನನ್ನೂ ಬದಲಾಯಿಸುವುದಿಲ್ಲ. ನಾವು ನಮ್ಮ ಕೈಯಿಂದ ಏನನ್ನೂ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ನಾವು ಸದ್ಯಕ್ಕೆ ಅದರೊಂದಿಗೆ ಬದುಕುತ್ತೇವೆ.
ಅಂದರೆ, ನೀವು ಈ ರೀತಿಯದನ್ನು ಎದುರಿಸಿದ್ದೀರಿ, ಆದರೆ ಯಾವುದಕ್ಕೂ ಬಂದಿಲ್ಲ, ಅವನು ಅದನ್ನು ಹೇಗೆ ಮಾಡುತ್ತಾನೆ ಮತ್ತು ಅದನ್ನು ಸ್ವತಃ ಮಾಡುತ್ತಾನೆ?
ದುರದೃಷ್ಟವಶಾತ್ ಹೌದು.
ನಮಸ್ಕಾರ! ನನ್ನ ಹೆಸರು ಸ್ಟಾರ್ಕೋವ್ ಸ್ಟಾನಿಸ್ಲಾವ್. ಮೇಲ್. ರು ಗುಂಪು. ಟ್ಯಾಗ್ ಅನ್ನು ರಚಿಸುವ ಸಮಸ್ಯೆಯನ್ನು ನೀವು ಹೇಗೆ ಪರಿಹರಿಸುತ್ತೀರಿ ..., ನೀವು ಅದನ್ನು ಹೇಗೆ ಒಳಗೆ ರವಾನಿಸುತ್ತೀರಿ? ನಾನು ಅರ್ಥಮಾಡಿಕೊಂಡಂತೆ, ಹೋಸ್ಟ್ ಹೆಸರನ್ನು ಸೂಚಿಸಲು ಬಳಕೆದಾರ - ಡೇಟಾ ಮೂಲಕ, ಪಪಿಟ್ ಅನ್ನು ಹೊಂದಿಸುವುದೇ? ಮತ್ತು ಪ್ರಶ್ನೆಯ ಎರಡನೇ ಭಾಗ. SG ಯಲ್ಲಿ ನೀವು ಈ ಸಮಸ್ಯೆಯನ್ನು ಹೇಗೆ ಪರಿಹರಿಸುತ್ತೀರಿ, ಅಂದರೆ ನೀವು SG ಅನ್ನು ರಚಿಸಿದಾಗ, ಒಂದೇ ರೀತಿಯ ನೂರಾರು ನಿದರ್ಶನಗಳನ್ನು, ಅವುಗಳಿಗೆ ಸರಿಯಾದ ಹೆಸರೇನು?
ನಮಗೆ ಬಹಳ ಮುಖ್ಯವಾದ ನಿದರ್ಶನಗಳನ್ನು ನಾವು ಸುಂದರವಾಗಿ ಹೆಸರಿಸುತ್ತೇವೆ. ಅಗತ್ಯವಿಲ್ಲದವುಗಳು, ಇದು ಆಟೋಸ್ಕೇಲ್ ಗುಂಪು ಎಂದು ಟಿಪ್ಪಣಿ ಇದೆ. ಮತ್ತು ಸಿದ್ಧಾಂತದಲ್ಲಿ ನೀವು ಅದನ್ನು ಉಗುರು ಮತ್ತು ಹೊಸದನ್ನು ಪಡೆಯಬಹುದು.
ಟ್ಯಾಗ್ನ ಸಮಸ್ಯೆಗೆ ಸಂಬಂಧಿಸಿದಂತೆ, ಅಂತಹ ಸಮಸ್ಯೆ ಇಲ್ಲ, ಆದರೆ ಅಂತಹ ಕಾರ್ಯವಿದೆ. ಮತ್ತು ನಾವು ಟ್ಯಾಗ್ಗಳನ್ನು ತುಂಬಾ ಹೆಚ್ಚು ಬಳಸುತ್ತೇವೆ, ಏಕೆಂದರೆ ಮೂಲಸೌಕರ್ಯವು ದೊಡ್ಡದಾಗಿದೆ ಮತ್ತು ದುಬಾರಿಯಾಗಿದೆ. ಮತ್ತು ಹಣವು ಎಲ್ಲಿಗೆ ಹೋಗುತ್ತಿದೆ ಎಂಬುದನ್ನು ನಾವು ನೋಡಬೇಕಾಗಿದೆ, ಆದ್ದರಿಂದ ಟ್ಯಾಗ್ಗಳು ಎಲ್ಲಿಗೆ ಹೋದವು ಎಂಬುದನ್ನು ಮುರಿಯಲು ನಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಮತ್ತು, ಅದರ ಪ್ರಕಾರ, ಇಲ್ಲಿ ಬಹಳಷ್ಟು ಹಣವನ್ನು ಖರ್ಚು ಮಾಡುವ ಯಾವುದನ್ನಾದರೂ ಹುಡುಕಲಾಗುತ್ತದೆ.
ಇನ್ನೇನು ಪ್ರಶ್ನೆಯಿತ್ತು?
SG ನೂರಾರು ನಿದರ್ಶನಗಳನ್ನು ರಚಿಸಿದಾಗ, ಅವುಗಳನ್ನು ಹೇಗಾದರೂ ಪ್ರತ್ಯೇಕಿಸಬೇಕೇ?
ಇಲ್ಲ, ಬೇಡ. ಪ್ರತಿ ನಿದರ್ಶನದಲ್ಲಿ ನನಗೆ ಸಮಸ್ಯೆ ಇದೆ ಎಂದು ವರದಿ ಮಾಡುವ ಏಜೆಂಟ್ ಇದ್ದಾರೆ. ಏಜೆಂಟ್ ವರದಿ ಮಾಡಿದರೆ, ಏಜೆಂಟ್ ಅವನ ಬಗ್ಗೆ ತಿಳಿದಿರುತ್ತಾನೆ ಮತ್ತು ಕನಿಷ್ಠ, ಅವನ IP ವಿಳಾಸವು ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ. ನೀವು ಈಗಾಗಲೇ ಓಡಿಹೋಗಬಹುದು. ಎರಡನೆಯದಾಗಿ, ನಾವು ಡಿಸ್ಕವರಿಗಾಗಿ ಕಾನ್ಸುಲ್ ಅನ್ನು ಬಳಸುತ್ತೇವೆ, ಅಲ್ಲಿ ಕುಬರ್ನೆಟ್ಸ್ ಇಲ್ಲ. ಮತ್ತು ಕಾನ್ಸುಲ್ ನಿದರ್ಶನದ IP ವಿಳಾಸವನ್ನು ಸಹ ತೋರಿಸುತ್ತದೆ.
ಅಂದರೆ, ನೀವು ನಿರ್ದಿಷ್ಟವಾಗಿ ಐಪಿ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸುತ್ತಿದ್ದೀರಾ ಮತ್ತು ಹೋಸ್ಟ್ ಹೆಸರಿನ ಮೇಲೆ ಅಲ್ಲವೇ?
ಹೋಸ್ಟ್ ಹೆಸರಿನ ಮೂಲಕ ನ್ಯಾವಿಗೇಟ್ ಮಾಡುವುದು ಅಸಾಧ್ಯ, ಅಂದರೆ ಅವುಗಳಲ್ಲಿ ಬಹಳಷ್ಟು ಇವೆ. ನಿದರ್ಶನ ಗುರುತಿಸುವಿಕೆಗಳಿವೆ - AE, ಇತ್ಯಾದಿ. ನೀವು ಅದನ್ನು ಎಲ್ಲೋ ಹುಡುಕಬಹುದು, ನೀವು ಅದನ್ನು ಹುಡುಕಾಟಕ್ಕೆ ಎಸೆಯಬಹುದು.
ನಮಸ್ಕಾರ! ಮೋಡಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಟೆರ್ರಾಫಾರ್ಮ್ ಒಳ್ಳೆಯದು ಎಂದು ನಾನು ಅರಿತುಕೊಂಡೆ.
ಕೇವಲ.
ಇದು ನಿಖರವಾಗಿ ನನಗೆ ಆಸಕ್ತಿಯ ಪ್ರಶ್ನೆಯಾಗಿದೆ. ನಿಮ್ಮ ಎಲ್ಲಾ ನಿದರ್ಶನಗಳೊಂದಿಗೆ ಸಾಮೂಹಿಕವಾಗಿ ಬೇರ್ ಮೆಟಲ್ಗೆ ಸರಿಸಲು ನೀವು ನಿರ್ಧರಿಸಿದರೆ? ಏನಾದರೂ ಸಮಸ್ಯೆಗಳಿರುತ್ತವೆಯೇ? ಅಥವಾ ನೀವು ಇನ್ನೂ ಇತರ ಉತ್ಪನ್ನಗಳನ್ನು ಬಳಸಬೇಕೇ, ಉದಾಹರಣೆಗೆ, ಇಲ್ಲಿ ಉಲ್ಲೇಖಿಸಲಾದ ಅದೇ ಅನ್ಸಿಬಲ್?
ಅನ್ಸಿಬಲ್ ಬೇರೆ ಯಾವುದೋ ಬಗ್ಗೆ ಸ್ವಲ್ಪ. ಅಂದರೆ, ನಿದರ್ಶನ ಪ್ರಾರಂಭವಾದಾಗ ಅನ್ಸಿಬಲ್ ಈಗಾಗಲೇ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಮತ್ತು ಟೆರಾಫಾರ್ಮ್ ನಿದರ್ಶನ ಪ್ರಾರಂಭವಾಗುವ ಮೊದಲು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಬೇರ್ ಮೆಟಲ್ಗೆ ಬದಲಾಯಿಸುವುದು - ಇಲ್ಲ.
ಈಗ ಅಲ್ಲ, ಆದರೆ ವ್ಯಾಪಾರ ಬರುತ್ತದೆ ಮತ್ತು ಹೇಳುತ್ತದೆ: "ಬನ್ನಿ."
ಮತ್ತೊಂದು ಮೋಡಕ್ಕೆ ಬದಲಾಯಿಸಲಾಗುತ್ತಿದೆ - ಹೌದು, ಆದರೆ ಇಲ್ಲಿ ಸ್ವಲ್ಪ ವಿಭಿನ್ನವಾದ ಟ್ರಿಕ್ ಇದೆ. ನೀವು ಟೆರ್ರಾಫಾರ್ಮ್ ಕೋಡ್ ಅನ್ನು ಬರೆಯುವ ಅಗತ್ಯವಿದೆ ಆದ್ದರಿಂದ ನೀವು ಕಡಿಮೆ ಪ್ರಯತ್ನದಲ್ಲಿ ಬೇರೆ ಕ್ಲೌಡ್ಗೆ ಬದಲಾಯಿಸಬಹುದು.
ಆರಂಭದಲ್ಲಿ, ನಮ್ಮ ಸಂಪೂರ್ಣ ಮೂಲಸೌಕರ್ಯವು ಅಜ್ಞೇಯತಾವಾದಿ ಎಂದು ಕಾರ್ಯವನ್ನು ಹೊಂದಿಸಲಾಗಿದೆ, ಅಂದರೆ ಯಾವುದೇ ಮೋಡವು ಸೂಕ್ತವಾಗಿರಬೇಕು, ಆದರೆ ಕೆಲವು ಹಂತದಲ್ಲಿ ವ್ಯವಹಾರವು ಕೈಬಿಟ್ಟಿತು ಮತ್ತು ಹೇಳಿದರು: “ಸರಿ, ಮುಂದಿನ N ವರ್ಷಗಳಲ್ಲಿ ನಾವು ಎಲ್ಲಿಯೂ ಹೋಗುವುದಿಲ್ಲ, ನಾವು ಸೇವೆಗಳನ್ನು ಬಳಸಬಹುದು Amazon ನಿಂದ"
ಫ್ರಂಟ್-ಎಂಡ್ ಉದ್ಯೋಗಗಳನ್ನು ರಚಿಸಲು, ಪೇಜರ್ಡ್ಯೂಟಿ, ಡೇಟಾ ಡಾಕ್, ಇತ್ಯಾದಿಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಲು Terraform ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಇದು ಬಹಳಷ್ಟು ಬಾಲಗಳನ್ನು ಹೊಂದಿದೆ. ಅವನು ಪ್ರಾಯೋಗಿಕವಾಗಿ ಇಡೀ ಪ್ರಪಂಚವನ್ನು ನಿಯಂತ್ರಿಸಬಲ್ಲನು.
ವರದಿಗಾಗಿ ಧನ್ಯವಾದಗಳು! ನಾನು 4 ವರ್ಷಗಳಿಂದ ಟೆರ್ರಾಫಾರ್ಮ್ ಅನ್ನು ಸಹ ಬಳಸುತ್ತಿದ್ದೇನೆ. ಟೆರ್ರಾಫಾರ್ಮ್ಗೆ, ಮೂಲಸೌಕರ್ಯಕ್ಕೆ, ಘೋಷಣಾತ್ಮಕ ವಿವರಣೆಗೆ ಸುಗಮ ಪರಿವರ್ತನೆಯ ಹಂತದಲ್ಲಿ, ಯಾರಾದರೂ ಕೈಯಿಂದ ಏನನ್ನಾದರೂ ಮಾಡುತ್ತಿರುವ ಪರಿಸ್ಥಿತಿಯನ್ನು ನಾವು ಎದುರಿಸಿದ್ದೇವೆ ಮತ್ತು ನೀವು ಯೋಜನೆಯನ್ನು ಮಾಡಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದೀರಿ. ಮತ್ತು ನಾನು ಕೆಲವು ರೀತಿಯ ದೋಷವನ್ನು ಪಡೆದುಕೊಂಡಿದ್ದೇನೆ. ಅಂತಹ ಸಮಸ್ಯೆಗಳನ್ನು ನೀವು ಹೇಗೆ ಎದುರಿಸುತ್ತೀರಿ? ಪಟ್ಟಿ ಮಾಡಲಾದ ಕಳೆದುಹೋದ ಸಂಪನ್ಮೂಲಗಳನ್ನು ನೀವು ಹೇಗೆ ಕಂಡುಹಿಡಿಯುತ್ತೀರಿ?
ಮುಖ್ಯವಾಗಿ ನಮ್ಮ ಕೈ ಮತ್ತು ಕಣ್ಣುಗಳಿಂದ, ನಾವು ವರದಿಯಲ್ಲಿ ವಿಚಿತ್ರವಾದದ್ದನ್ನು ನೋಡಿದರೆ, ನಾವು ಅಲ್ಲಿ ಏನಾಗುತ್ತಿದೆ ಎಂಬುದನ್ನು ನಾವು ವಿಶ್ಲೇಷಿಸುತ್ತೇವೆ ಅಥವಾ ನಾವು ಸರಳವಾಗಿ ಕೊಲ್ಲುತ್ತೇವೆ. ಸಾಮಾನ್ಯವಾಗಿ, ಪುಲ್ ವಿನಂತಿಗಳು ಸಾಮಾನ್ಯ ವಿಷಯವಾಗಿದೆ.
ದೋಷವಿದ್ದರೆ, ನೀವು ಹಿಂತಿರುಗಿಸುತ್ತೀರಾ? ನೀವು ಇದನ್ನು ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿದ್ದೀರಾ?
ಇಲ್ಲ, ಒಬ್ಬ ವ್ಯಕ್ತಿಯು ಸಮಸ್ಯೆಯನ್ನು ನೋಡುವ ಕ್ಷಣದಲ್ಲಿ ಇದು ನಿರ್ಧಾರವಾಗಿದೆ.
ಮೂಲ: www.habr.com