ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿರುವ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿರುವ ಬಿಟ್ರಿಕ್ಸ್

ಸಿಸಾಡ್ಮಿಂಕಾ ಸಿಸ್ಟಮ್ ಅಡ್ಮಿನಿಸ್ಟ್ರೇಟರ್ ಮೀಟ್‌ಅಪ್‌ಗಳು ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿ ನಡೆಯುತ್ತಿವೆ ಮತ್ತು ಕೊನೆಯದಾಗಿ ನಾನು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ 1 ಸಿ-ಬಿಟ್ರಿಕ್ಸ್‌ನಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಚಲಾಯಿಸಲು ನಮ್ಮ ಪರಿಹಾರದ ಕುರಿತು ವರದಿಯನ್ನು ನೀಡಿದ್ದೇನೆ.

ಬಿಟ್ರಿಕ್ಸ್, ಕುಬರ್ನೆಟ್ಸ್, ಸೆಫ್ - ಉತ್ತಮ ಮಿಶ್ರಣ?

ಈ ಎಲ್ಲದರಿಂದ ನಾವು ಹೇಗೆ ಕೆಲಸ ಮಾಡುವ ಪರಿಹಾರವನ್ನು ಒಟ್ಟಿಗೆ ಸೇರಿಸುತ್ತೇವೆ ಎಂದು ನಾನು ನಿಮಗೆ ಹೇಳುತ್ತೇನೆ.

ಹೋಗೋಣ!

ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿರುವ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿರುವ ಬಿಟ್ರಿಕ್ಸ್

ಸಭೆಯು ಏಪ್ರಿಲ್ 18 ರಂದು ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್ನಲ್ಲಿ ನಡೆಯಿತು. ನಮ್ಮ ಸಭೆಗಳ ಬಗ್ಗೆ ನೀವು ಓದಬಹುದು ಟೈಮ್‌ಪ್ಯಾಡ್ ಮತ್ತು ನೋಡಿ YouTube.

ನೀವು ವರದಿಯೊಂದಿಗೆ ಅಥವಾ ಕೇಳುಗರಾಗಿ ನಮ್ಮ ಬಳಿಗೆ ಬರಲು ಬಯಸಿದರೆ - ಸ್ವಾಗತ, ಬರೆಯಿರಿ [ಇಮೇಲ್ ರಕ್ಷಿಸಲಾಗಿದೆ] ಮತ್ತು ಟೆಲಿಗ್ರಾಮ್ t.me/vadimisakanov ನಲ್ಲಿ.

ನನ್ನ ವರದಿ

ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿರುವ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿರುವ ಬಿಟ್ರಿಕ್ಸ್

ಸ್ಲೈಡ್‌ಗಳು

ಪರಿಹಾರ "ಬಿಟ್ರಿಕ್ಸ್ ಇನ್ ಕುಬರ್ನೆಟ್ಸ್, ಆವೃತ್ತಿ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ 1.0"

ಮೀಟಪ್‌ನಲ್ಲಿ ಮಾಡಿದಂತೆ "ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ಡಮ್ಮೀಸ್" ಫಾರ್ಮ್ಯಾಟ್‌ನಲ್ಲಿ ನಮ್ಮ ಪರಿಹಾರದ ಕುರಿತು ನಾನು ಮಾತನಾಡುತ್ತೇನೆ. ಆದರೆ ಬಿಟ್ರಿಕ್ಸ್, ಡಾಕರ್, ಕುಬರ್ನೆಟ್ಸ್, ಸೆಫ್ ಪದಗಳು ವಿಕಿಪೀಡಿಯಾದಲ್ಲಿನ ಲೇಖನಗಳ ಮಟ್ಟದಲ್ಲಿ ನಿಮಗೆ ತಿಳಿದಿದೆ ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ.

ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ ಬಿಟ್ರಿಕ್ಸ್ ಬಗ್ಗೆ ಏನು ಸಿದ್ಧವಾಗಿದೆ?

ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ಬಿಟ್ರಿಕ್ಸ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಕಾರ್ಯಾಚರಣೆಯ ಬಗ್ಗೆ ಸಂಪೂರ್ಣ ಇಂಟರ್ನೆಟ್‌ನಲ್ಲಿ ಬಹಳ ಕಡಿಮೆ ಮಾಹಿತಿ ಇದೆ.
ನಾನು ಈ ವಸ್ತುಗಳನ್ನು ಮಾತ್ರ ಕಂಡುಕೊಂಡಿದ್ದೇನೆ:

Qsoft ನಿಂದ ಅಲೆಕ್ಸಾಂಡರ್ ಸೆರ್ಬುಲ್, 1C-ಬಿಟ್ರಿಕ್ಸ್ ಮತ್ತು ಆಂಟನ್ ತುಜ್ಲುಕೋವ್ ಅವರ ವರದಿ:

ಅದನ್ನು ಕೇಳಲು ನಾನು ಶಿಫಾರಸು ಮಾಡುತ್ತೇವೆ.

ಬಳಕೆದಾರರಿಂದ ನಿಮ್ಮ ಸ್ವಂತ ಪರಿಹಾರವನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವುದು ಸರ್ಕಿರಾನ್ ಹಬ್ರೆ ಮೇಲೆ.
ಇನ್ನಷ್ಟು ಕಂಡುಬಂದಿದೆ ಅಂತಹ ನಿರ್ಧಾರ.

ಆಂದ್... ವಾಸ್ತವವಾಗಿ, ಅಷ್ಟೆ.

ನಾನು ನಿಮಗೆ ಎಚ್ಚರಿಕೆ ನೀಡುತ್ತೇನೆ, ಮೇಲಿನ ಲಿಂಕ್‌ಗಳಲ್ಲಿನ ಪರಿಹಾರಗಳ ಗುಣಮಟ್ಟವನ್ನು ನಾವು ಪರಿಶೀಲಿಸಿಲ್ಲ :)
ಅಂದಹಾಗೆ, ನಮ್ಮ ಪರಿಹಾರವನ್ನು ಸಿದ್ಧಪಡಿಸುವಾಗ, ನಾನು ಅಲೆಕ್ಸಾಂಡರ್ ಸೆರ್ಬುಲ್ ಅವರೊಂದಿಗೆ ಮಾತನಾಡಿದೆ, ನಂತರ ಅವರ ವರದಿ ಇನ್ನೂ ಕಾಣಿಸಿಕೊಂಡಿಲ್ಲ, ಆದ್ದರಿಂದ ನನ್ನ ಸ್ಲೈಡ್‌ಗಳಲ್ಲಿ “ಬಿಟ್ರಿಕ್ಸ್ ಕುಬರ್ನೆಟ್ಸ್ ಅನ್ನು ಬಳಸುವುದಿಲ್ಲ” ಎಂಬ ಐಟಂ ಇದೆ.

ಆದರೆ ಡಾಕರ್‌ನಲ್ಲಿ ಬಿಟ್ರಿಕ್ಸ್ ಅನ್ನು ಚಲಾಯಿಸಲು ಈಗಾಗಲೇ ಸಾಕಷ್ಟು ರೆಡಿಮೇಡ್ ಡಾಕರ್ ಚಿತ್ರಗಳಿವೆ: https://hub.docker.com/search?q=bitrix&type=image

ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ಬಿಟ್ರಿಕ್ಸ್‌ಗೆ ಸಂಪೂರ್ಣ ಪರಿಹಾರವನ್ನು ರಚಿಸಲು ಇದು ಸಾಕೇ?
ಸಂ. ಪರಿಹರಿಸಬೇಕಾದ ದೊಡ್ಡ ಸಂಖ್ಯೆಯ ಸಮಸ್ಯೆಗಳಿವೆ.

ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ ಬಿಟ್ರಿಕ್ಸ್ನ ಸಮಸ್ಯೆಗಳು ಯಾವುವು?

ಮೊದಲನೆಯದಾಗಿ, ಡಾಕರ್‌ಹಬ್‌ನಿಂದ ಸಿದ್ಧ-ಸಿದ್ಧ ಚಿತ್ರಗಳು ಕುಬರ್ನೆಟ್‌ಗಳಿಗೆ ಸೂಕ್ತವಲ್ಲ

ನಾವು ಮೈಕ್ರೊ ಸರ್ವೀಸ್ ಆರ್ಕಿಟೆಕ್ಚರ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಬಯಸಿದರೆ (ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ನಾವು ಸಾಮಾನ್ಯವಾಗಿ ಮಾಡುತ್ತೇವೆ), ನಾವು ನಮ್ಮ ಕುಬರ್ನೆಟ್ಸ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಕಂಟೇನರ್‌ಗಳಾಗಿ ಬೇರ್ಪಡಿಸಬೇಕು ಮತ್ತು ಪ್ರತಿ ಕಂಟೇನರ್ ಒಂದು ಸಣ್ಣ ಕಾರ್ಯವನ್ನು ನಿರ್ವಹಿಸಬೇಕು (ಮತ್ತು ಅದನ್ನು ಚೆನ್ನಾಗಿ ಮಾಡಿ). ಒಂದೇ ಏಕೆ? ಸಂಕ್ಷಿಪ್ತವಾಗಿ, ಸರಳವಾದ ಹೆಚ್ಚು ವಿಶ್ವಾಸಾರ್ಹ.
ಹೆಚ್ಚು ನಿರ್ದಿಷ್ಟವಾಗಿರಲು, ದಯವಿಟ್ಟು ಈ ಲೇಖನ ಮತ್ತು ವೀಡಿಯೊವನ್ನು ವೀಕ್ಷಿಸಿ: https://habr.com/ru/company/southbridge/blog/426637/

ಡಾಕರ್‌ಹಬ್‌ನಲ್ಲಿನ ಡಾಕರ್ ಚಿತ್ರಗಳನ್ನು ಮುಖ್ಯವಾಗಿ ಆಲ್-ಇನ್-ಒನ್ ತತ್ವದ ಮೇಲೆ ನಿರ್ಮಿಸಲಾಗಿದೆ, ಆದ್ದರಿಂದ ನಾವು ಇನ್ನೂ ನಮ್ಮ ಸ್ವಂತ ಬೈಕು ತಯಾರಿಸಬೇಕಾಗಿತ್ತು ಮತ್ತು ಮೊದಲಿನಿಂದಲೂ ಚಿತ್ರಗಳನ್ನು ರಚಿಸಬೇಕಾಗಿದೆ.

ಎರಡನೆಯದು - ಸೈಟ್ ಕೋಡ್ ಅನ್ನು ನಿರ್ವಾಹಕ ಫಲಕದಿಂದ ಸಂಪಾದಿಸಲಾಗಿದೆ

ನಾವು ಸೈಟ್‌ನಲ್ಲಿ ಹೊಸ ವಿಭಾಗವನ್ನು ರಚಿಸಿದ್ದೇವೆ - ಕೋಡ್ ಅನ್ನು ನವೀಕರಿಸಲಾಗಿದೆ (ಹೊಸ ವಿಭಾಗದ ಹೆಸರಿನೊಂದಿಗೆ ಡೈರೆಕ್ಟರಿಯನ್ನು ಸೇರಿಸಲಾಗಿದೆ).

ನಿರ್ವಾಹಕ ಫಲಕದಿಂದ ನೀವು ಘಟಕದ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಬದಲಾಯಿಸಿದರೆ, ಕೋಡ್ ಬದಲಾಗಿದೆ.

ಕುಬರ್ನೆಟ್ಸ್ "ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ" ಇದರೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ;

ಕಾರಣ: ಕ್ಲಸ್ಟರ್‌ನಲ್ಲಿರುವ ಪ್ರತಿಯೊಂದು ಕಂಟೇನರ್ (ಪಾಡ್) ಸಂಚಾರದ ಒಂದು ಭಾಗವನ್ನು ಮಾತ್ರ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ. ನೀವು ಕೇವಲ ಒಂದು ಕಂಟೇನರ್‌ನಲ್ಲಿ (ಪಾಡ್) ಕೋಡ್ ಅನ್ನು ಬದಲಾಯಿಸಿದರೆ, ವಿಭಿನ್ನ ಪಾಡ್‌ಗಳಲ್ಲಿ ಕೋಡ್ ವಿಭಿನ್ನವಾಗಿರುತ್ತದೆ, ಸೈಟ್ ವಿಭಿನ್ನವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು ಸೈಟ್‌ನ ವಿಭಿನ್ನ ಆವೃತ್ತಿಗಳನ್ನು ವಿಭಿನ್ನ ಬಳಕೆದಾರರಿಗೆ ತೋರಿಸಲಾಗುತ್ತದೆ. ನೀವು ಹಾಗೆ ಬದುಕಲು ಸಾಧ್ಯವಿಲ್ಲ.

ಮೂರನೆಯದು - ನೀವು ನಿಯೋಜನೆಯೊಂದಿಗೆ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಬೇಕಾಗಿದೆ

ನಾವು ಏಕಶಿಲೆ ಮತ್ತು ಒಂದು "ಕ್ಲಾಸಿಕ್" ಸರ್ವರ್ ಹೊಂದಿದ್ದರೆ, ಎಲ್ಲವೂ ತುಂಬಾ ಸರಳವಾಗಿದೆ: ನಾವು ಹೊಸ ಕೋಡ್ ಬೇಸ್ ಅನ್ನು ನಿಯೋಜಿಸುತ್ತೇವೆ, ಡೇಟಾಬೇಸ್ ಅನ್ನು ಸ್ಥಳಾಂತರಿಸುತ್ತೇವೆ, ಕೋಡ್ನ ಹೊಸ ಆವೃತ್ತಿಗೆ ಟ್ರಾಫಿಕ್ ಅನ್ನು ಬದಲಾಯಿಸುತ್ತೇವೆ. ಸ್ವಿಚಿಂಗ್ ತಕ್ಷಣವೇ ಸಂಭವಿಸುತ್ತದೆ.
ನಾವು ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ ಸೈಟ್ ಹೊಂದಿದ್ದರೆ, ಮೈಕ್ರೋಸರ್ವಿಸ್ಗಳಾಗಿ ಕತ್ತರಿಸಿ, ಕೋಡ್ನೊಂದಿಗೆ ಸಾಕಷ್ಟು ಕಂಟೇನರ್ಗಳಿವೆ - ಓಹ್. ನೀವು ಕೋಡ್‌ನ ಹೊಸ ಆವೃತ್ತಿಯೊಂದಿಗೆ ಕಂಟೇನರ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಬೇಕು, ಹಳೆಯದಕ್ಕೆ ಬದಲಾಗಿ ಅವುಗಳನ್ನು ಹೊರತೆಗೆಯಬೇಕು, ಡೇಟಾಬೇಸ್ ಅನ್ನು ಸರಿಯಾಗಿ ಸ್ಥಳಾಂತರಿಸಬೇಕು ಮತ್ತು ಸಂದರ್ಶಕರ ಗಮನಕ್ಕೆ ಬರದಂತೆ ಇದನ್ನು ಮಾಡಬೇಕು. ಅದೃಷ್ಟವಶಾತ್, ಕುಬರ್ನೆಟ್ಸ್ ನಮಗೆ ಇದರೊಂದಿಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ, ವಿವಿಧ ರೀತಿಯ ನಿಯೋಜನೆಗಳ ಸಂಪೂರ್ಣ ಗುಂಪನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ.

ನಾಲ್ಕನೇ - ನೀವು ಸ್ಟಾಟಿಕ್ಸ್ ಅನ್ನು ಸಂಗ್ರಹಿಸುವ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಬೇಕಾಗಿದೆ

ನಿಮ್ಮ ಸೈಟ್ "ಕೇವಲ" 10 ಗಿಗಾಬೈಟ್ ಆಗಿದ್ದರೆ ಮತ್ತು ನೀವು ಅದನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಕಂಟೇನರ್‌ಗಳಲ್ಲಿ ನಿಯೋಜಿಸಿದರೆ, ನೀವು 10 ಗಿಗಾಬೈಟ್ ಕಂಟೇನರ್‌ಗಳೊಂದಿಗೆ ಕೊನೆಗೊಳ್ಳುವಿರಿ, ಅದು ನಿಯೋಜಿಸಲು ಶಾಶ್ವತವಾಗಿ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ.
ನೀವು ಸೈಟ್‌ನ “ಭಾರವಾದ” ಭಾಗಗಳನ್ನು ಕಂಟೇನರ್‌ಗಳ ಹೊರಗೆ ಸಂಗ್ರಹಿಸಬೇಕಾಗಿದೆ ಮತ್ತು ಇದನ್ನು ಸರಿಯಾಗಿ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬ ಪ್ರಶ್ನೆ ಉದ್ಭವಿಸುತ್ತದೆ

ನಮ್ಮ ಪರಿಹಾರದಲ್ಲಿ ಏನು ಕಾಣೆಯಾಗಿದೆ?

ಸಂಪೂರ್ಣ ಬಿಟ್ರಿಕ್ಸ್ ಕೋಡ್ ಅನ್ನು ಮೈಕ್ರೋಫಂಕ್ಷನ್‌ಗಳು/ಮೈಕ್ರೋ ಸರ್ವೀಸ್‌ಗಳಾಗಿ ವಿಂಗಡಿಸಲಾಗಿಲ್ಲ (ಆದ್ದರಿಂದ ನೋಂದಣಿ ಪ್ರತ್ಯೇಕವಾಗಿದೆ, ಆನ್‌ಲೈನ್ ಸ್ಟೋರ್ ಮಾಡ್ಯೂಲ್ ಪ್ರತ್ಯೇಕವಾಗಿದೆ, ಇತ್ಯಾದಿ). ನಾವು ಪ್ರತಿ ಕಂಟೇನರ್ನಲ್ಲಿ ಸಂಪೂರ್ಣ ಕೋಡ್ ಬೇಸ್ ಅನ್ನು ಸಂಗ್ರಹಿಸುತ್ತೇವೆ.

ನಾವು ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಸಂಗ್ರಹಿಸುವುದಿಲ್ಲ (ಅಭಿವೃದ್ಧಿ ಪರಿಸರಕ್ಕಾಗಿ ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ ಡೇಟಾಬೇಸ್ನೊಂದಿಗೆ ನಾನು ಇನ್ನೂ ಪರಿಹಾರಗಳನ್ನು ಜಾರಿಗೊಳಿಸಿದೆ, ಆದರೆ ಉತ್ಪಾದನೆಗೆ ಅಲ್ಲ).

ಸೈಟ್ ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂದು ಸೈಟ್ ನಿರ್ವಾಹಕರಿಗೆ ಇನ್ನೂ ಗಮನಿಸಬಹುದಾಗಿದೆ. ನಿರ್ವಾಹಕ ಫಲಕದಿಂದ ಸೈಟ್ ಕೋಡ್ ಅನ್ನು ಸಂಪಾದಿಸಲು "ಸಿಸ್ಟಮ್ ಚೆಕ್" ಕಾರ್ಯವು ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ, ನೀವು ಮೊದಲು "ನಾನು ಕೋಡ್ ಅನ್ನು ಸಂಪಾದಿಸಲು ಬಯಸುತ್ತೇನೆ" ಬಟನ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಬೇಕು.

ಸಮಸ್ಯೆಗಳನ್ನು ಗುರುತಿಸಲಾಗಿದೆ, ಮೈಕ್ರೊ ಸರ್ವೀಸ್‌ಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಅಗತ್ಯವನ್ನು ನಿರ್ಧರಿಸಲಾಗಿದೆ, ಗುರಿ ಸ್ಪಷ್ಟವಾಗಿದೆ - ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ಬಿಟ್ರಿಕ್ಸ್‌ನಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಚಲಾಯಿಸಲು ಕಾರ್ಯ ವ್ಯವಸ್ಥೆಯನ್ನು ಪಡೆಯಲು, ಬಿಟ್ರಿಕ್ಸ್‌ನ ಸಾಮರ್ಥ್ಯಗಳು ಮತ್ತು ಕುಬರ್ನೆಟ್‌ಗಳ ಅನುಕೂಲಗಳನ್ನು ಸಂರಕ್ಷಿಸುವುದು. ಅನುಷ್ಠಾನವನ್ನು ಪ್ರಾರಂಭಿಸೋಣ.

ವಾಸ್ತುಶಿಲ್ಪ

ವೆಬ್ ಸರ್ವರ್ (ಕೆಲಸಗಾರರು) ನೊಂದಿಗೆ ಅನೇಕ "ಕೆಲಸ ಮಾಡುವ" ಪಾಡ್‌ಗಳಿವೆ.
ಕ್ರಾನ್ ಕಾರ್ಯಗಳ ಅಡಿಯಲ್ಲಿ ಒಂದು (ಕೇವಲ ಒಂದು ಅಗತ್ಯವಿದೆ).
ನಿರ್ವಾಹಕ ಫಲಕದಿಂದ ಸೈಟ್ ಕೋಡ್ ಅನ್ನು ಎಡಿಟ್ ಮಾಡಲು ಒಂದು ಅಪ್‌ಗ್ರೇಡ್ (ಒಂದೇ ಒಂದು ಅಗತ್ಯವಿದೆ).

ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿರುವ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿರುವ ಬಿಟ್ರಿಕ್ಸ್

ನಾವು ಪ್ರಶ್ನೆಗಳನ್ನು ಪರಿಹರಿಸುತ್ತೇವೆ:

  • ಅಧಿವೇಶನಗಳನ್ನು ಎಲ್ಲಿ ಸಂಗ್ರಹಿಸಬೇಕು?
  • ಸಂಗ್ರಹವನ್ನು ಎಲ್ಲಿ ಸಂಗ್ರಹಿಸಬೇಕು?
  • ಸ್ಟಾಟಿಕ್ಸ್ ಅನ್ನು ಎಲ್ಲಿ ಸಂಗ್ರಹಿಸಬೇಕು, ಕಂಟೇನರ್ಗಳ ಗುಂಪಿನಲ್ಲಿ ಗಿಗಾಬೈಟ್ ಸ್ಟ್ಯಾಟಿಕ್ಸ್ ಅನ್ನು ಇರಿಸಬಾರದು?
  • ಡೇಟಾಬೇಸ್ ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ?

ಡಾಕರ್ ಚಿತ್ರ

ನಾವು ಡಾಕರ್ ಚಿತ್ರವನ್ನು ನಿರ್ಮಿಸುವ ಮೂಲಕ ಪ್ರಾರಂಭಿಸುತ್ತೇವೆ.

ಆದರ್ಶ ಆಯ್ಕೆಯೆಂದರೆ ನಾವು ಒಂದು ಸಾರ್ವತ್ರಿಕ ಚಿತ್ರವನ್ನು ಹೊಂದಿದ್ದೇವೆ, ಅದರ ಆಧಾರದ ಮೇಲೆ ನಾವು ವರ್ಕರ್ ಪಾಡ್‌ಗಳು, ಕ್ರಾಂಟಾಸ್ಕ್‌ಗಳೊಂದಿಗೆ ಪಾಡ್‌ಗಳನ್ನು ಪಡೆಯುತ್ತೇವೆ ಮತ್ತು ಪಾಡ್‌ಗಳನ್ನು ಅಪ್‌ಗ್ರೇಡ್ ಮಾಡುತ್ತೇವೆ.

ನಾವು ಅಂತಹ ಚಿತ್ರವನ್ನು ನಿರ್ಮಿಸಿದ್ದೇವೆ.

ಇದು nginx, apache/php-fpm (ನಿರ್ಮಾಣದ ಸಮಯದಲ್ಲಿ ಆಯ್ಕೆ ಮಾಡಬಹುದು), ಮೇಲ್ ಕಳುಹಿಸಲು msmtp ಮತ್ತು ಕ್ರಾನ್ ಅನ್ನು ಒಳಗೊಂಡಿದೆ.

ಚಿತ್ರವನ್ನು ಜೋಡಿಸುವಾಗ, ಸೈಟ್‌ನ ಸಂಪೂರ್ಣ ಕೋಡ್ ಬೇಸ್ ಅನ್ನು / ಅಪ್ಲಿಕೇಶನ್ ಡೈರೆಕ್ಟರಿಗೆ ನಕಲಿಸಲಾಗುತ್ತದೆ (ನಾವು ಪ್ರತ್ಯೇಕ ಹಂಚಿಕೆಯ ಸಂಗ್ರಹಣೆಗೆ ಚಲಿಸುವ ಆ ಭಾಗಗಳನ್ನು ಹೊರತುಪಡಿಸಿ).

ಸೂಕ್ಷ್ಮ ಸೇವೆಗಳು, ಸೇವೆಗಳು

ಕೆಲಸಗಾರ ಪಾಡ್‌ಗಳು:

  • nginx + ಕಂಟೇನರ್ apache/php-fpm + msmtp ಜೊತೆಗೆ ಕಂಟೈನರ್
  • msmtp ಅನ್ನು ಪ್ರತ್ಯೇಕ ಮೈಕ್ರೋ ಸರ್ವೀಸ್‌ಗೆ ಸರಿಸಲು ಇದು ಕೆಲಸ ಮಾಡಲಿಲ್ಲ, ಬಿಟ್ರಿಕ್ಸ್ ನೇರವಾಗಿ ಮೇಲ್ ಕಳುಹಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ ಎಂದು ಕೋಪಗೊಳ್ಳಲು ಪ್ರಾರಂಭಿಸಿದೆ
  • ಪ್ರತಿಯೊಂದು ಕಂಟೇನರ್ ಸಂಪೂರ್ಣ ಕೋಡ್ಬೇಸ್ ಅನ್ನು ಹೊಂದಿದೆ.
  • ಕಂಟೈನರ್‌ಗಳಲ್ಲಿ ಕೋಡ್ ಬದಲಾಯಿಸುವುದನ್ನು ನಿಷೇಧಿಸಲಾಗಿದೆ.

ಕ್ರಾನ್ ಅಡಿಯಲ್ಲಿ:

  • ಅಪಾಚೆ, ಪಿಎಚ್ಪಿ, ಕ್ರಾನ್ ಹೊಂದಿರುವ ಕಂಟೇನರ್
  • ಸಂಪೂರ್ಣ ಕೋಡ್ ಬೇಸ್ ಒಳಗೊಂಡಿದೆ
  • ಕಂಟೈನರ್‌ಗಳಲ್ಲಿ ಕೋಡ್ ಬದಲಾಯಿಸುವುದನ್ನು ನಿಷೇಧಿಸಲಾಗಿದೆ

ಅಡಿಯಲ್ಲಿ ಅಪ್ಗ್ರೇಡ್:

  • nginx ಕಂಟೇನರ್ + apache/php-fpm ಕಂಟೇನರ್ + msmtp
  • ಕಂಟೈನರ್‌ಗಳಲ್ಲಿ ಕೋಡ್ ಬದಲಾಯಿಸಲು ಯಾವುದೇ ನಿಷೇಧವಿಲ್ಲ

ಅಧಿವೇಶನ ಸಂಗ್ರಹಣೆ

Bitrix ಸಂಗ್ರಹ ಸಂಗ್ರಹಣೆ

ಮತ್ತೊಂದು ಪ್ರಮುಖ ವಿಷಯ: ನಾವು ಡೇಟಾಬೇಸ್‌ನಿಂದ ಮೇಲ್‌ವರೆಗೆ, ಕುಬರ್ನೆಟ್ಸ್ ರಹಸ್ಯಗಳಲ್ಲಿ ಎಲ್ಲದಕ್ಕೂ ಸಂಪರ್ಕಿಸಲು ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸುತ್ತೇವೆ. ನಾವು ಬೋನಸ್ ಪಡೆಯುತ್ತೇವೆ: ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ನಾವು ರಹಸ್ಯಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ನೀಡುವವರಿಗೆ ಮಾತ್ರ ಗೋಚರಿಸುತ್ತವೆ ಮತ್ತು ಯೋಜನೆಯ ಕೋಡ್ ಬೇಸ್‌ಗೆ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುವ ಎಲ್ಲರಿಗೂ ಅಲ್ಲ.

ಸ್ಟ್ಯಾಟಿಕ್ಸ್ಗಾಗಿ ಸಂಗ್ರಹಣೆ

ನೀವು ಯಾವುದನ್ನಾದರೂ ಬಳಸಬಹುದು: ceph, nfs (ಆದರೆ ನಾವು ಉತ್ಪಾದನೆಗೆ nfs ಅನ್ನು ಶಿಫಾರಸು ಮಾಡುವುದಿಲ್ಲ), ಕ್ಲೌಡ್ ಪೂರೈಕೆದಾರರಿಂದ ನೆಟ್ವರ್ಕ್ ಸಂಗ್ರಹಣೆ, ಇತ್ಯಾದಿ.

ಸಂಗ್ರಹಣೆಯನ್ನು ಸೈಟ್‌ನ /ಅಪ್‌ಲೋಡ್/ ಡೈರೆಕ್ಟರಿ ಮತ್ತು ಸ್ಥಿರ ವಿಷಯದೊಂದಿಗೆ ಇತರ ಡೈರೆಕ್ಟರಿಗಳಿಗೆ ಕಂಟೈನರ್‌ಗಳಲ್ಲಿ ಸಂಪರ್ಕಿಸಬೇಕಾಗುತ್ತದೆ.

ಡೇಟಾಬೇಸ್

ಸರಳತೆಗಾಗಿ, ಕುಬರ್ನೆಟ್ಸ್ನ ಹೊರಗೆ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಸರಿಸಲು ನಾವು ಶಿಫಾರಸು ಮಾಡುತ್ತೇವೆ. ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿನ ಬೇಸ್ ಪ್ರತ್ಯೇಕ ಸಂಕೀರ್ಣ ಕಾರ್ಯವಾಗಿದೆ; ಇದು ಯೋಜನೆಯನ್ನು ಹೆಚ್ಚು ಸಂಕೀರ್ಣಗೊಳಿಸುತ್ತದೆ.

ಸೆಷನ್ ಸಂಗ್ರಹಣೆ

ನಾವು memcached ಅನ್ನು ಬಳಸುತ್ತೇವೆ :)

ಇದು ಸೆಷನ್ ಸ್ಟೋರೇಜ್ ಅನ್ನು ಚೆನ್ನಾಗಿ ನಿಭಾಯಿಸುತ್ತದೆ, ಕ್ಲಸ್ಟರ್ ಆಗಿದೆ ಮತ್ತು php ನಲ್ಲಿ session.save_path ನಂತೆ "ಸ್ಥಳೀಯವಾಗಿ" ಬೆಂಬಲಿತವಾಗಿದೆ. ನಾವು ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ವೆಬ್ ಸರ್ವರ್‌ಗಳೊಂದಿಗೆ ಕ್ಲಸ್ಟರ್‌ಗಳನ್ನು ನಿರ್ಮಿಸಿದಾಗ ಶಾಸ್ತ್ರೀಯ ಏಕಶಿಲೆಯ ವಾಸ್ತುಶಿಲ್ಪದಲ್ಲಿ ಇಂತಹ ವ್ಯವಸ್ಥೆಯನ್ನು ಹಲವು ಬಾರಿ ಪರೀಕ್ಷಿಸಲಾಗಿದೆ. ನಿಯೋಜನೆಗಾಗಿ ನಾವು ಹೆಲ್ಮ್ ಅನ್ನು ಬಳಸುತ್ತೇವೆ.

$ helm install stable/memcached --name session

php.ini - ಇಲ್ಲಿ ಚಿತ್ರವು memcached ನಲ್ಲಿ ಸೆಷನ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಒಳಗೊಂಡಿದೆ

ಹೋಸ್ಟ್‌ಗಳ ಬಗ್ಗೆ ಡೇಟಾವನ್ನು ಮೆಮ್‌ಕ್ಯಾಶ್ಡ್‌ನೊಂದಿಗೆ ರವಾನಿಸಲು ನಾವು ಎನ್ವಿರಾನ್‌ಮೆಂಟ್ ವೇರಿಯೇಬಲ್‌ಗಳನ್ನು ಬಳಸಿದ್ದೇವೆ https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/.
ದೇವ್, ಹಂತ, ಪರೀಕ್ಷೆ, ಪ್ರಾಡ್ ಪರಿಸರದಲ್ಲಿ ಒಂದೇ ಕೋಡ್ ಅನ್ನು ಬಳಸಲು ಇದು ನಿಮ್ಮನ್ನು ಅನುಮತಿಸುತ್ತದೆ (ಅವುಗಳಲ್ಲಿ ಮೆಮ್‌ಕ್ಯಾಶ್ಡ್ ಹೋಸ್ಟ್ ಹೆಸರುಗಳು ವಿಭಿನ್ನವಾಗಿರುತ್ತದೆ, ಆದ್ದರಿಂದ ನಾವು ಪ್ರತಿ ಪರಿಸರಕ್ಕೆ ಸೆಷನ್‌ಗಳಿಗಾಗಿ ಅನನ್ಯ ಹೋಸ್ಟ್ ಹೆಸರನ್ನು ರವಾನಿಸಬೇಕಾಗಿದೆ).
Bitrix ಸಂಗ್ರಹ ಸಂಗ್ರಹಣೆ

ನಮಗೆ ದೋಷ-ಸಹಿಷ್ಣು ಸಂಗ್ರಹಣೆಯ ಅಗತ್ಯವಿದೆ, ಅದು ಎಲ್ಲಾ ಪಾಡ್‌ಗಳಿಗೆ ಬರೆಯಬಹುದು ಮತ್ತು ಓದಬಹುದು.

ನಾವು memcached ಅನ್ನು ಸಹ ಬಳಸುತ್ತೇವೆ.
ಈ ಪರಿಹಾರವನ್ನು ಬಿಟ್ರಿಕ್ಸ್ ಸ್ವತಃ ಶಿಫಾರಸು ಮಾಡಿದೆ.

$ helm install stable/memcached --name cache

bitrix/.settings_extra.php - ಇಲ್ಲಿ Bitrix ನಲ್ಲಿ ಸಂಗ್ರಹವನ್ನು ಎಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗಿದೆ ಎಂದು ನಿರ್ದಿಷ್ಟಪಡಿಸಲಾಗಿದೆ

ನಾವು ಪರಿಸರ ಅಸ್ಥಿರಗಳನ್ನು ಸಹ ಬಳಸುತ್ತೇವೆ.

ಕ್ರೊಂಟಾಸ್ಕಿ

ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ಕ್ರಾಂಟಾಸ್ಕ್‌ಗಳನ್ನು ಚಲಾಯಿಸಲು ವಿಭಿನ್ನ ವಿಧಾನಗಳಿವೆ.

  • ಕ್ರಾಂಟಾಸ್ಕ್‌ಗಳನ್ನು ಚಲಾಯಿಸಲು ಪಾಡ್‌ನೊಂದಿಗೆ ಪ್ರತ್ಯೇಕ ನಿಯೋಜನೆ
  • ಕ್ರಾಂಟಾಸ್ಕ್‌ಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು cronjob (ಇದು ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ಆಗಿದ್ದರೆ - wget ಜೊತೆಗೆ https://$host$cronjobname, ಅಥವಾ ಕೆಲಸಗಾರ ಪಾಡ್‌ಗಳಲ್ಲಿ ಒಂದರೊಳಗೆ kubectl ಎಕ್ಸಿಕ್, ಇತ್ಯಾದಿ.)
  • ಇತ್ಯಾದಿ

ನೀವು ಹೆಚ್ಚು ಸರಿಯಾದ ಬಗ್ಗೆ ವಾದಿಸಬಹುದು, ಆದರೆ ಈ ಸಂದರ್ಭದಲ್ಲಿ ನಾವು "ಕ್ರಾಂಟಾಸ್ಕ್‌ಗಳಿಗಾಗಿ ಪಾಡ್‌ಗಳೊಂದಿಗೆ ಪ್ರತ್ಯೇಕ ನಿಯೋಜನೆ" ಆಯ್ಕೆಯನ್ನು ಆರಿಸಿದ್ದೇವೆ.

ಇದನ್ನು ಹೇಗೆ ಮಾಡಲಾಗಿದೆ:

  • ConfigMap ಮೂಲಕ ಅಥವಾ config/addcron ಫೈಲ್ ಮೂಲಕ ಕ್ರಾನ್ ಕಾರ್ಯಗಳನ್ನು ಸೇರಿಸಿ
  • ಒಂದು ನಿದರ್ಶನದಲ್ಲಿ ನಾವು ವರ್ಕರ್ ಪಾಡ್‌ಗೆ ಹೋಲುವ ಧಾರಕವನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತೇವೆ + ಅದರಲ್ಲಿ ಕಿರೀಟ ಕಾರ್ಯಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಅನುಮತಿಸಿ
  • ಅದೇ ಕೋಡ್ ಬೇಸ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ, ಏಕೀಕರಣಕ್ಕೆ ಧನ್ಯವಾದಗಳು, ಕಂಟೇನರ್ ಜೋಡಣೆ ಸರಳವಾಗಿದೆ

ನಮಗೆ ಏನು ಒಳ್ಳೆಯದು:

  • ಡೆವಲಪರ್‌ಗಳ ಪರಿಸರಕ್ಕೆ (ಡಾಕರ್) ಹೋಲುವ ಪರಿಸರದಲ್ಲಿ ನಾವು ಕೆಲಸ ಮಾಡುವ ಕ್ರಾಂಟಾಸ್ಕ್‌ಗಳನ್ನು ಹೊಂದಿದ್ದೇವೆ
  • ಕ್ರೊಂಟಾಸ್ಕ್‌ಗಳನ್ನು ಕುಬರ್ನೆಟ್ಸ್‌ಗಾಗಿ "ಪುನಃ ಬರೆಯುವ" ಅಗತ್ಯವಿಲ್ಲ, ಅವು ಅದೇ ರೂಪದಲ್ಲಿ ಮತ್ತು ಮೊದಲಿನಂತೆಯೇ ಅದೇ ಕೋಡ್ ಬೇಸ್‌ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ
  • ಕ್ರಾನ್ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಾಹಕರು ಮಾತ್ರವಲ್ಲದೆ, ಉತ್ಪಾದನಾ ಶಾಖೆಗೆ ಬದ್ಧತೆಯ ಹಕ್ಕುಗಳೊಂದಿಗೆ ಎಲ್ಲಾ ತಂಡದ ಸದಸ್ಯರು ಸೇರಿಸಬಹುದು

ಸೌತ್‌ಬ್ರಿಡ್ಜ್ K8Sdeploy ಮಾಡ್ಯೂಲ್ ಮತ್ತು ನಿರ್ವಾಹಕ ಫಲಕದಿಂದ ಕೋಡ್ ಸಂಪಾದನೆ

ನಾವು ಅಡಿಯಲ್ಲಿ ಅಪ್ಗ್ರೇಡ್ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತಿದ್ದೇವೆ?
ಅಲ್ಲಿಗೆ ಸಂಚಾರವನ್ನು ಹೇಗೆ ನೇರಗೊಳಿಸುವುದು?
ಹುರ್ರೇ, ನಾವು PHP ನಲ್ಲಿ ಇದಕ್ಕಾಗಿ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಬರೆದಿದ್ದೇವೆ :) ಇದು Bitrix ಗಾಗಿ ಒಂದು ಸಣ್ಣ ಕ್ಲಾಸಿಕ್ ಮಾಡ್ಯೂಲ್ ಆಗಿದೆ. ಇದು ಇನ್ನೂ ಸಾರ್ವಜನಿಕವಾಗಿ ಲಭ್ಯವಿಲ್ಲ, ಆದರೆ ನಾವು ಅದನ್ನು ತೆರೆಯಲು ಯೋಜಿಸಿದ್ದೇವೆ.
ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಬಿಟ್ರಿಕ್ಸ್‌ನಲ್ಲಿ ಸಾಮಾನ್ಯ ಮಾಡ್ಯೂಲ್‌ನಂತೆ ಸ್ಥಾಪಿಸಲಾಗಿದೆ:

ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿರುವ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿರುವ ಬಿಟ್ರಿಕ್ಸ್

ಮತ್ತು ಇದು ಈ ರೀತಿ ಕಾಣುತ್ತದೆ:

ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿರುವ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿರುವ ಬಿಟ್ರಿಕ್ಸ್

ಸೈಟ್ ನಿರ್ವಾಹಕರನ್ನು ಗುರುತಿಸುವ ಕುಕೀಯನ್ನು ಹೊಂದಿಸಲು ಇದು ನಿಮ್ಮನ್ನು ಅನುಮತಿಸುತ್ತದೆ ಮತ್ತು ಅಪ್‌ಗ್ರೇಡ್ ಪಾಡ್‌ಗೆ ಟ್ರಾಫಿಕ್ ಕಳುಹಿಸಲು ಕುಬರ್ನೆಟ್‌ಗಳಿಗೆ ಅನುಮತಿಸುತ್ತದೆ.

ಬದಲಾವಣೆಗಳು ಪೂರ್ಣಗೊಂಡಾಗ, ನೀವು git ಪುಶ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ, ಕೋಡ್ ಬದಲಾವಣೆಗಳನ್ನು git ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ, ನಂತರ ಸಿಸ್ಟಮ್ ಕೋಡ್‌ನ ಹೊಸ ಆವೃತ್ತಿಯೊಂದಿಗೆ ಚಿತ್ರವನ್ನು ನಿರ್ಮಿಸುತ್ತದೆ ಮತ್ತು ಅದನ್ನು ಕ್ಲಸ್ಟರ್‌ನಾದ್ಯಂತ "ರೋಲ್ ಔಟ್" ಮಾಡುತ್ತದೆ, ಹಳೆಯ ಪಾಡ್‌ಗಳನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ .

ಹೌದು, ಇದು ಸ್ವಲ್ಪ ಊರುಗೋಲು, ಆದರೆ ಅದೇ ಸಮಯದಲ್ಲಿ ನಾವು ಮೈಕ್ರೋ ಸರ್ವಿಸ್ ಆರ್ಕಿಟೆಕ್ಚರ್ ಅನ್ನು ನಿರ್ವಹಿಸುತ್ತೇವೆ ಮತ್ತು ನಿರ್ವಾಹಕ ಫಲಕದಿಂದ ಕೋಡ್ ಅನ್ನು ಸರಿಪಡಿಸಲು ಬಿಟ್ರಿಕ್ಸ್ ಬಳಕೆದಾರರ ನೆಚ್ಚಿನ ಅವಕಾಶವನ್ನು ತೆಗೆದುಕೊಳ್ಳುವುದಿಲ್ಲ. ಕೊನೆಯಲ್ಲಿ, ಇದು ಒಂದು ಆಯ್ಕೆಯಾಗಿದೆ; ಕೋಡ್ ಅನ್ನು ಬೇರೆ ರೀತಿಯಲ್ಲಿ ಸಂಪಾದಿಸುವ ಸಮಸ್ಯೆಯನ್ನು ನೀವು ಪರಿಹರಿಸಬಹುದು.

ಹೆಲ್ಮ್ ಚಾರ್ಟ್

ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ನಿರ್ಮಿಸಲು, ನಾವು ಸಾಮಾನ್ಯವಾಗಿ ಹೆಲ್ಮ್ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ ಅನ್ನು ಬಳಸುತ್ತೇವೆ.
ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿನ ನಮ್ಮ ಬಿಟ್ರಿಕ್ಸ್ ಪರಿಹಾರಕ್ಕಾಗಿ, ನಮ್ಮ ಪ್ರಮುಖ ಸಿಸ್ಟಮ್ ನಿರ್ವಾಹಕರಾದ ಸೆರ್ಗೆ ಬೊಂಡರೆವ್ ಅವರು ವಿಶೇಷ ಹೆಲ್ಮ್ ಚಾರ್ಟ್ ಅನ್ನು ಬರೆದಿದ್ದಾರೆ.

ಇದು ವರ್ಕರ್, ಉಗ್ರೇಡ್, ಕ್ರಾನ್ ಪಾಡ್‌ಗಳನ್ನು ನಿರ್ಮಿಸುತ್ತದೆ, ಪ್ರವೇಶಗಳು, ಸೇವೆಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್ ರಹಸ್ಯಗಳಿಂದ ಪಾಡ್‌ಗಳಿಗೆ ವೇರಿಯಬಲ್‌ಗಳನ್ನು ವರ್ಗಾಯಿಸುತ್ತದೆ.

ನಾವು ಕೋಡ್ ಅನ್ನು Gitlab ನಲ್ಲಿ ಸಂಗ್ರಹಿಸುತ್ತೇವೆ ಮತ್ತು ನಾವು Gitlab ನಿಂದ ಹೆಲ್ಮ್ ಬಿಲ್ಡ್ ಅನ್ನು ಸಹ ರನ್ ಮಾಡುತ್ತೇವೆ.

ಸಂಕ್ಷಿಪ್ತವಾಗಿ, ಇದು ಈ ರೀತಿ ಕಾಣುತ್ತದೆ

$ helm upgrade --install project .helm --set image=registrygitlab.local/k8s/bitrix -f .helm/values.yaml --wait --timeout 300 --debug --tiller-namespace=production

ನಿಯೋಜನೆಯ ಸಮಯದಲ್ಲಿ ಇದ್ದಕ್ಕಿದ್ದಂತೆ ಏನಾದರೂ ತಪ್ಪಾದಲ್ಲಿ "ತಡೆರಹಿತ" ರೋಲ್ಬ್ಯಾಕ್ ಮಾಡಲು ಹೆಲ್ಮ್ ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ನೀವು ಭಯಭೀತರಾಗಿಲ್ಲದಿದ್ದಾಗ “ಉತ್ಪನ್ನವು ಬಿದ್ದ ಕಾರಣ ftp ಮೂಲಕ ಕೋಡ್ ಅನ್ನು ಸರಿಪಡಿಸಿ,” ಆದರೆ ಕುಬರ್ನೆಟ್ಸ್ ಅದನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಮತ್ತು ಅಲಭ್ಯತೆ ಇಲ್ಲದೆ ಮಾಡುತ್ತದೆ.

ನಿಯೋಜಿಸಿ

ಹೌದು, ನಾವು Gitlab & Gitlab CI ನ ಅಭಿಮಾನಿಗಳು, ನಾವು ಅದನ್ನು ಬಳಸುತ್ತೇವೆ :)
Gitlab ನಲ್ಲಿ ಪ್ರಾಜೆಕ್ಟ್ ರೆಪೊಸಿಟರಿಗೆ ಒಪ್ಪಿಸುವಾಗ, Gitlab ಪರಿಸರದ ಹೊಸ ಆವೃತ್ತಿಯನ್ನು ನಿಯೋಜಿಸುವ ಪೈಪ್‌ಲೈನ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತದೆ.

ಹಂತಗಳು:

  • ನಿರ್ಮಿಸಿ (ಹೊಸ ಡಾಕರ್ ಚಿತ್ರವನ್ನು ನಿರ್ಮಿಸುವುದು)
  • ಪರೀಕ್ಷೆ (ಪರೀಕ್ಷೆ)
  • ಸ್ವಚ್ಛಗೊಳಿಸಿ (ಪರೀಕ್ಷಾ ಪರಿಸರವನ್ನು ತೆಗೆದುಹಾಕುವುದು)
  • ಪುಶ್ (ನಾವು ಅದನ್ನು ಡಾಕರ್ ರಿಜಿಸ್ಟ್ರಿಗೆ ಕಳುಹಿಸುತ್ತೇವೆ)
  • ನಿಯೋಜಿಸಿ (ಹೆಲ್ಮ್ ಮೂಲಕ ನಾವು ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಕುಬರ್ನೆಟ್ಸ್ಗೆ ನಿಯೋಜಿಸುತ್ತೇವೆ).

ಚೆಲ್ಯಾಬಿನ್ಸ್ಕ್‌ನಲ್ಲಿರುವ ಸೌತ್‌ಬ್ರಿಡ್ಜ್ ಮತ್ತು ಕುಬರ್ನೆಟ್ಸ್‌ನಲ್ಲಿರುವ ಬಿಟ್ರಿಕ್ಸ್

ಹುರ್ರೇ, ಇದು ಸಿದ್ಧವಾಗಿದೆ, ಅದನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸೋಣ!
ಸರಿ, ಅಥವಾ ಯಾವುದಾದರೂ ಪ್ರಶ್ನೆಗಳಿದ್ದರೆ ಕೇಳಿ.

ಹಾಗಾದರೆ ನಾವೇನು ​​ಮಾಡಿದೆವು

ತಾಂತ್ರಿಕ ದೃಷ್ಟಿಕೋನದಿಂದ:

  • ಡಾಕರೈಸ್ಡ್ ಬಿಟ್ರಿಕ್ಸ್;
  • ಬಿಟ್ರಿಕ್ಸ್ ಅನ್ನು ಕಂಟೇನರ್‌ಗಳಾಗಿ "ಕಟ್" ಮಾಡಿ, ಪ್ರತಿಯೊಂದೂ ಕನಿಷ್ಠ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ;
  • ಧಾರಕಗಳ ಸ್ಥಿತಿಯಿಲ್ಲದ ಸ್ಥಿತಿಯನ್ನು ಸಾಧಿಸಲಾಗಿದೆ;
  • ಕುಬರ್ನೆಟ್ಸ್ನಲ್ಲಿ ಬಿಟ್ರಿಕ್ಸ್ ಅನ್ನು ನವೀಕರಿಸುವುದರೊಂದಿಗೆ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲಾಗಿದೆ;
  • ಎಲ್ಲಾ ಬಿಟ್ರಿಕ್ಸ್ ಕಾರ್ಯಗಳು ಕೆಲಸ ಮಾಡುವುದನ್ನು ಮುಂದುವರೆಸಿದವು (ಬಹುತೇಕ ಎಲ್ಲಾ);
  • ನಾವು Kubernetes ಗೆ ನಿಯೋಜನೆ ಮತ್ತು ಆವೃತ್ತಿಗಳ ನಡುವೆ ರೋಲ್ಬ್ಯಾಕ್ ಮಾಡಲು ಕೆಲಸ ಮಾಡಿದ್ದೇವೆ.

ವ್ಯವಹಾರದ ದೃಷ್ಟಿಕೋನದಿಂದ:

  • ದೋಷಸಹಿಷ್ಣುತೆ;
  • ಕುಬರ್ನೆಟ್ಸ್ ಪರಿಕರಗಳು (ಗಿಟ್ಲಾಬ್ CI ನೊಂದಿಗೆ ಸುಲಭವಾದ ಏಕೀಕರಣ, ತಡೆರಹಿತ ನಿಯೋಜನೆ, ಇತ್ಯಾದಿ);
  • ರಹಸ್ಯ ಪಾಸ್‌ವರ್ಡ್‌ಗಳು (ಪಾಸ್‌ವರ್ಡ್‌ಗಳಿಗೆ ನೇರವಾಗಿ ಪ್ರವೇಶವನ್ನು ಪಡೆದವರಿಗೆ ಮಾತ್ರ ಗೋಚರಿಸುತ್ತದೆ);
  • ಒಂದೇ ಮೂಲಸೌಕರ್ಯದಲ್ಲಿ ಹೆಚ್ಚುವರಿ ಪರಿಸರವನ್ನು (ಅಭಿವೃದ್ಧಿ, ಪರೀಕ್ಷೆಗಳು, ಇತ್ಯಾದಿ) ರಚಿಸಲು ಅನುಕೂಲಕರವಾಗಿದೆ.

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ