āĻšāĻžāĻ āĻ¸āĻŦ! āĻāĻŽāĻžāĻ° āĻā§āĻ°ā§āĻ¸ āĻāĻžāĻā§āĻ° āĻ
āĻāĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻāĻŽāĻŋ āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ āĻāĻ°ā§āĻ¯āĻŧāĻž āĻā§āĻ˛āĻžāĻāĻĄ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻžāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻŦā§āĻˇāĻŖāĻž āĻāĻ°āĻāĻŋāĻ˛āĻžāĻŽ
āĻāĻĒāĻ¨āĻŋ āĻāĻŋ āĻĒā§āĻ¤ā§ āĻāĻžāĻ¨?
āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻ° āĻšā§āĻ¸ā§āĻā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸ā§āĻ¨ā§āĻĻāĻ° UI āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻ°āĻ āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¤ā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĄā§āĻāĻžāĻŦā§āĻ¸ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻĄā§āĻ¯āĻžāĻļāĻŦā§āĻ°ā§āĻĄ āĻāĻŦāĻ āĻā§āĻ°āĻžāĻĢ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ā§ˇ
āĻŽā§āĻ˛āĻŋāĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋāĻ° āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ°āĻ¯āĻŧā§āĻā§ - āĻāĻāĻŋ āĻŽā§āĻā§āĻ āĻĻā§āĻˇ-āĻ¸āĻšāĻ¨āĻļā§āĻ˛ āĻ¨āĻ¯āĻŧāĨ¤ āĻ āĻ°ā§āĻĨāĻžā§, āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¸ā§ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ¨ āĻāĻ°ā§ āĻŦāĻž āĻāĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§ 10 āĻāĻ¨ UI āĻā§āĻ˛āĻ˛ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻĻā§āĻāĻž āĻĻā§āĻŦā§āĨ¤
āĻāĻā§āĻ˛āĻŋ āĻ¸āĻšāĻāĻāĻžāĻŦā§ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§: āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻŦāĻ˛ āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻāĻŋ L3 āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ°ā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻ°āĻžāĻāĻ¤ā§ āĻšāĻŦā§ā§ˇ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻžāĻ¨ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻ¤ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻ¨āĻ¯āĻŧāĨ¤ Grafana āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¸ā§āĻāĻŋāĻāĻ¸ (āĻĄāĻžāĻāĻžāĻŦā§āĻ¸, āĻĄā§āĻ¯āĻžāĻļāĻŦā§āĻ°ā§āĻĄ, āĻā§āĻ°āĻžāĻĢāĻŋāĻā§āĻ¸, āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĻ° āĻĒāĻĨ) āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¤āĻžāĻ° āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻĄāĻŋāĻ¸ā§āĻā§ āĻ¸āĻā§āĻāĻ¯āĻŧ āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻžāĻŦā§, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ UI-āĻ¤ā§ āĻāĻŋāĻā§ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻāĻŽāĻžāĻĻā§āĻ° āĻĒāĻžāĻ āĻŋāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻ¸ā§āĻāĻŋāĻāĻ¸, āĻ˛āĻā§āĻ āĻāĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻā§āĻ˛āĻŋāĻ° āĻĻāĻŋāĻā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻŋāĻ¤ āĻāĻ°āĻŦā§ā§ˇ
āĻāĻāĻžāĻ¨ā§ āĻāĻ°ā§āĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ°ā§āĻ¸āĻāĻŋāĻ āĻāĻ¸āĻŦā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻŽāĻžāĻāĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻŦāĻž āĻ¤āĻžāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯āĨ¤ āĻāĻŽāĻ°āĻž āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻžāĻā§ āĻŦāĻ˛āĻŋ āĻ¯ā§ āĻ¤āĻžāĻā§ āĻāĻ "āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤" āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻāĻ° āĻĒāĻ°ā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻāĻŦāĻžāĻ° āĻāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻĒāĻĨāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻĨā§āĻˇā§āĻ āĻšāĻŦā§, āĻāĻŦāĻ āĻ¯ā§ āĻā§āĻ¨āĻ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻ āĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ°āĻž āĻŦāĻžāĻāĻŋāĻā§āĻ˛āĻŋāĻ¤ā§ āĻŦā§āĻĻā§āĻ§āĻŋ āĻĒāĻžāĻŦā§āĨ¤
āĻāĻāĻžāĻ¨ā§ āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĒāĻ°āĻŋāĻāĻžāĻ āĻžāĻŽā§āĻ° āĻāĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ° āĻ°āĻ¯āĻŧā§āĻā§:
āĻāĻĒāĻ¨āĻžāĻ° āĻšāĻžāĻ¤ āĻĻāĻŋāĻ¯āĻŧā§ āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§ āĻļāĻŋāĻā§āĻ¨
āĻŽāĻžāĻāĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻāĻŦāĻ āĻā§āĻ˛āĻŋāĻ āĻšāĻžāĻāĻ¸
āĻāĻāĻāĻŋ āĻŦā§āĻ¤āĻžāĻŽā§ āĻā§āĻ˛āĻŋāĻ āĻāĻ°ā§ āĻāĻ āĻāĻžāĻ¤ā§āĻ¯āĻŧ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻā§, āĻāĻāĻŋāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§ āĻā§āĻāĻžāĻŦā§ āĻ¤ā§āĻ˛āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻž āĻļāĻŋāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤
Yandex.Cloud āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻŦā§, āĻ¯āĻž L3 āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ°, ClickHouse āĻāĻŦāĻ MySQL āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻŋāĻ¤ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻšāĻŋāĻ¸ā§āĻŦā§ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽāĻāĻŋ āĻ¸āĻŦāĻāĻŋāĻā§āĻā§ āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°ā§ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ¸āĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻāĻŽāĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻāĻ°ā§āĻāĻŋ, āĻ¨āĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻāĻĄ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻŦāĻŋāĻ˛āĻŋāĻ āĻ ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻŋ āĻā§āĻ˛āĻžāĻāĻĄā§ āĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĻ˛āĻžāĻŽ āĻāĻŦāĻ āĻ¨ā§āĻ¯ā§āĻ¨āĻ¤āĻŽ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻ¸āĻš MySQL āĻāĻŦāĻ ClickHouse āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻ¤āĻžāĻ°āĻž āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻĒāĻ¨āĻžāĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻ˛āĻāĻāĻ¨ āĻāĻŦāĻ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻāĻŋāĻ¤ā§ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻĨāĻžāĻ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻŽāĻŋ āĻāĻāĻžāĻ¨ā§ āĻŦāĻŋāĻļāĻĻā§ āĻ¯āĻžāĻŦ āĻ¨āĻž - āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻŦā§āĻļ āĻ¸ā§āĻĒāĻˇā§āĻāĨ¤
āĻ
-āĻ¸ā§āĻĒāĻˇā§āĻ āĻŦāĻŋāĻŦāĻ°āĻŖ āĻāĻŋāĻ˛ āĻ¯ā§ āĻāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ
āĻ¨ā§āĻ āĻšā§āĻ¸ā§āĻ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻ¤āĻžāĻĻā§āĻ° āĻĻā§āĻˇ āĻ¸āĻšāĻ¨āĻļā§āĻ˛āĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, Grafana āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻŋāĻ āĻāĻāĻāĻŋ āĻšā§āĻ¸ā§āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻĻā§āĻ°ā§āĻ āĻĒāĻĄāĻŧāĻž c-<cluster_id>.rw.mdb.yandexcloud.net
āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻāĻāĻĄāĻŋ āĻ¸āĻš āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻŽāĻžāĻ¸ā§āĻāĻžāĻ° āĻšā§āĻ¸ā§āĻā§ āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°āĨ¤ āĻ¸ā§āĻāĻžāĻ āĻāĻŽāĻ°āĻž āĻā§āĻ°āĻžāĻĢāĻ¨āĻžāĻā§ āĻĻā§āĻŦāĨ¤
āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°
āĻāĻāĻ¨ āĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤ āĻāĻ˛ā§āĻ¨ āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻšāĻžāĻ¤ā§ āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻž āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻŋāĨ¤
āĻāĻ¸ā§āĻ¨ ssh āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻĒā§āĻ¯āĻžāĻā§āĻāĻā§āĻ˛āĻŋ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŋāĨ¤
sudo apt-get install -y apt-transport-https software-properties-common wget
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
sudo add-apt-repository "deb https://packages.grafana.com/enterprise/deb stable main"
sudo apt-get update
sudo apt-get install -y grafana-enterprise
āĻāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻ°āĻž systemctl āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ Grafana āĻļā§āĻ°ā§ āĻāĻ°āĻŦ āĻāĻŦāĻ ClickHouse āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ˛āĻžāĻāĻāĻ¨āĻāĻŋ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŦ (āĻšā§āĻ¯āĻžāĻ, āĻāĻāĻŋ āĻŽā§āĻ˛āĻŋāĻ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž)āĨ¤
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
sudo grafana-cli plugins install vertamedia-clickhouse-datasource
āĻāĻāĻāĻŋ āĻ¸āĻšāĻ āĻāĻĻā§āĻļ āĻ¸āĻā§āĻā§ āĻ¯ā§ āĻĒāĻ°ā§ āĻ¸āĻŦāĻāĻŋāĻā§
sudo service grafana-server start
āĻāĻŽāĻ°āĻž āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻļā§āĻ°ā§ āĻāĻ°āĻŦāĨ¤ āĻāĻāĻ¨ āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ°ā§ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻāĻāĻĒāĻŋ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻ¯āĻŧ āĻĄā§āĻ°āĻžāĻāĻ āĻāĻ°āĻž, āĻĒā§āĻ°ā§āĻ 3000 āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻāĻŦāĻ āĻ¸ā§āĻ¨ā§āĻĻāĻ° UI āĻā§āĻ°āĻžāĻĢāĻ¨āĻž āĻĻā§āĻāĻž āĻ¸āĻŽā§āĻāĻŦ āĻšāĻŦā§āĨ¤
āĻ¤āĻŦā§ āĻ¤āĻžāĻĄāĻŧāĻžāĻšā§āĻĄāĻŧā§ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž, Grafana āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻāĻā§, āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ MySQL āĻāĻ° āĻĒāĻĨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻā§āĻ˛āĻŦā§āĻ¨ āĻ¨āĻžāĨ¤
āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻž āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĢāĻžāĻāĻ˛āĻāĻŋāĻ¤ā§ āĻ°āĻ¯āĻŧā§āĻā§ /etc/grafana/grafana.ini
. āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ˛āĻžāĻāĻ¨ āĻāĻ āĻŽāĻ¤ āĻĻā§āĻāĻžāĻ¯āĻŧ:
;url =
āĻāĻŽāĻ°āĻž āĻšā§āĻ¸ā§āĻāĻā§ āĻŽāĻžāĻāĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻŋāĨ¤ āĻāĻĒāĻ°ā§āĻ° āĻāĻŦāĻŋāĻ¤ā§ āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻž āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋāĻ¤ā§ āĻ˛āĻāĻāĻ¨ āĻāĻŦāĻ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻāĻāĻ¯āĻŧāĻ āĻ¸āĻŽāĻžāĻ¨ admin
.
āĻāĻĒāĻ¨āĻŋ sed āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
sudo sed -i "s#.*;url =.*#url = mysql://${MYSQL_USERNAME}:${MYSQL_PASSWORD}@${MYSQL_CLUSTER_URI}#" /etc/grafana/grafana.ini
sudo sed -i "s#.*;admin_user =.*#admin_user = ${GRAFANA_USERNAME}#" /etc/grafana/grafana.ini
sudo sed -i "s#.*;admin_password =.*#admin_password = ${GRAFANA_PASSWORD}#" /etc/grafana/grafana.ini
āĻāĻāĻž āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ!
sudo service grafana-server restart
āĻāĻāĻ¨ Grafana UI āĻ, āĻāĻŽāĻ°āĻž DataSource āĻšāĻŋāĻ¸āĻžāĻŦā§ ClickHouse āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻŦāĨ¤
āĻāĻŽāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¸ā§āĻāĻŋāĻāĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°ā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒā§āĻ°ā§āĻāĻŋ:
āĻāĻŽāĻŋ URL āĻšāĻŋāĻ¸ā§āĻŦā§ āĻĻāĻŋāĻ¯āĻŧā§āĻāĻŋ https://c-<cluster_id>.rw.mdb.yandexcloud.net:8443
āĻ¸āĻŽāĻ¸ā§āĻ¤ ! āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ CH āĻāĻŦāĻ MySQL āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¸āĻš āĻāĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻž āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻĒāĻ¨āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻā§āĻ˛āĻŋāĻāĻšāĻžāĻāĻ¸ā§ āĻĄā§āĻāĻžāĻ¸ā§āĻ āĻāĻĒāĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻĄā§āĻ¯āĻžāĻļāĻŦā§āĻ°ā§āĻĄ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ā§ˇ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻŽāĻ°āĻž āĻāĻāĻ¨āĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻ˛āĻā§āĻˇā§āĻ¯ā§ āĻĒā§āĻāĻāĻžāĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĻ¨āĻŋ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻžāĻā§āĻ āĻ āĻŦāĻāĻžāĻ āĻžāĻŽā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŋāĻ¨āĻŋāĨ¤
āĻāĻ°āĻ
Yandex.Cloud āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŽā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻāĻāĻŋāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻāĻ¨ā§āĻĻ āĻŽāĻ¤ā§ āĻ
āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ
āĻāĻŋāĻ¨ā§āĻ¨ āĻŽā§āĻļāĻŋāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻ āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦ āĻ āĻŋāĻ āĻāĻŋ. āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻāĻāĻžāĻŦā§ āĻāĻŋāĻ¤ā§āĻ°āĻāĻŋ āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻ¤ā§, āĻā§āĻ˛āĻāĻŋ āĻ¨āĻŋāĻ¨
āĻāĻŽāĻžāĻĻā§āĻ° json āĻĢāĻžāĻāĻ˛ā§ āĻĻā§āĻāĻŋ āĻŦā§āĻ˛āĻ āĻĨāĻžāĻāĻŦā§: āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻ¤āĻž āĻāĻŦāĻ āĻĒā§āĻ°āĻāĻŋāĻāĻžāĻ°āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ˛āĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¸āĻ¤ā§āĻ¤āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°ā§ āĻāĻŦāĻ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻžāĻŽāĻā§āĻ°ā§ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻŋ āĻĒā§āĻ°āĻŖ āĻāĻ°āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°ā§āĨ¤
āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻ¤āĻž
{
"builders": [
{
"type": "yandex",
"endpoint": "{{user `endpoint`}}",
"folder_id": "<folder_id>",
"subnet_id": "{{user `subnet_id`}}",
"zone": "{{user `zone`}}",
"labels": {},
"use_ipv4_nat": true,
"use_internal_ip": false,
"service_account_key_file": "<service_account_key_file>",
"image_name": "grafana-{{timestamp}}",
"image_family": "grafana",
"image_labels": {},
"image_description": "GRAFANA",
"source_image_family": "ubuntu-1804-lts",
"disk_size_gb": 3,
"disk_type": "network-hdd",
"ssh_username": "ubuntu"
}
],
...
}
āĻāĻ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻ˛āĻžāĻāĻĄā§āĻ° āĻ¸ā§āĻ āĻŦāĻŋāĻāĻžāĻā§āĻ° āĻāĻāĻĄā§āĻ¨ā§āĻāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻāĻŽā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ āĻāĻ āĻŦāĻŋāĻāĻžāĻā§ āĻĒā§āĻ°ā§āĻŦā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻ
ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻ āĻĨā§āĻā§ āĻā§āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒāĻĨāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŦāĻŋāĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻāĻāĻžāĻ°ā§ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻ
ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻ āĻāĻŦāĻ āĻā§ āĻ¤ā§āĻ°āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻāĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻŦāĻ˛ā§ āĻ¯ā§ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŽā§āĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻŦā§ ubuntu-1804-lts
, āĻāĻŋāĻ¤ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻžāĻ°ā§ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻŦāĻŋāĻāĻžāĻā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ GRAFANA
āĻ¨āĻžāĻŽā§āĻ° āĻ¨āĻŋāĻā§ grafana-{{timestamp}}
.
āĻŦāĻŋāĻ§āĻžāĻ¨āĻāĻžāĻ°ā§
āĻāĻāĻ¨ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ°āĻ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻ āĻāĻļā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻ° āĻā§āĻ°āĻŽ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°āĻŦā§ āĻ¯āĻž āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻĨāĻŋāĻ° āĻāĻ°āĻžāĻ° āĻāĻā§ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ā§ˇ
{
...,
"provisioners": [
{
"type": "shell",
"pause_before": "5s",
"scripts": [
"prepare-ctg.sh"
]
},
{
"type": "file",
"source": "setup.sh",
"destination": "/opt/grafana/setup.sh"
},
{
"type": "shell",
"execute_command": "sudo {{ .Vars }} bash '{{ .Path }}'",
"pause_before": "5s",
"scripts": [
"install-packages.sh",
"grafana-setup.sh",
"run-setup-at-reboot.sh"
]
}
]
}
āĻāĻāĻžāĻ¨ā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§ 3āĻāĻŋ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ āĻ¯āĻž āĻāĻāĻāĻŋ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤
āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤-ctg.sh:
#!/bin/bash
sudo mkdir -p /opt/grafana
sudo chown -R ubuntu:ubuntu /opt/grafana
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻāĻŽāĻ°āĻž āĻāĻ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ°āĻžāĻāĻŋ, āĻ¯āĻž āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻĨā§ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻŦā§āĨ¤ āĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋāĻā§ Grafana āĻāĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŦā§āĨ¤
setup.sh:
#!/bin/bash
CLUSTER_ID="<cluster_id>"
USERNAME="<username>"
PASSWORD="<password>"
sudo sed -i "s#.*;url =.*#url = mysql://${USERNAME}:${PASSWORD}@c-${CLUSTER_ID}.rw.mdb.yandexcloud.net#" /etc/grafana/grafana.ini
sudo sed -i "s#.*;admin_user =.*#admin_user = ${USERNAME}#" /etc/grafana/grafana.ini
sudo sed -i "s#.*;admin_password =.*#admin_password = ${PASSWORD}#" /etc/grafana/grafana.ini
sudo service grafana-server restart
āĻāĻ° āĻĒāĻ°ā§, 3āĻāĻŋ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§:
1) āĻĒā§āĻ¯āĻžāĻā§āĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§āĻ¨
2) Systemctl āĻāĻ° āĻ
āĻ§ā§āĻ¨ā§ Grafana āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ ClickHouse āĻĒā§āĻ˛āĻžāĻāĻāĻ¨ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§āĻ¨
3) āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻĨā§āĻ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ setup.sh āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻāĻāĻŋāĻā§ āĻ¸āĻžāĻ°āĻŋāĻ¤ā§ āĻ°āĻžāĻā§āĻ¨āĨ¤
install-packages.sh:
#!/bin/bash
sudo systemd-run --property='After=apt-daily.service apt-daily-upgrade.service' --wait /bin/true
sudo apt-get install -y apt-transport-https
sudo apt-get install -y software-properties-common wget
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
sudo add-apt-repository "deb https://packages.grafana.com/enterprise/deb stable main"
sudo apt-get update
sudo apt-get install -y grafana-enterprise
grafana-setup.sh:
#!/bin/bash
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
sudo grafana-cli plugins install vertamedia-clickhouse-datasource
run-setup-at-reboot.sh:
#!/bin/bash
chmod +x /opt/grafana/setup.sh
cat > /etc/cron.d/first-boot <<EOF
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
@reboot root /bin/bash /opt/grafana/setup.sh > /var/log/yc-setup.log 2>&1
EOF
chmod +x /etc/cron.d/first-boot;
āĻāĻāĻ¨ āĻĒā§āĻ¯āĻžāĻāĻžāĻ° āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻāĻŦāĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻļāĻ¨ā§ āĻāĻāĻāĻĒā§āĻ āĻāĻŽā§āĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻŦāĻžāĻāĻŋ āĻāĻā§āĨ¤ āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻā§ āĻŦā§āĻ āĻĄāĻŋāĻ¸ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻāĻāĻāĻŋ āĻ°ā§āĻĄāĻŋāĻŽā§āĻĄ āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻž āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĒāĻžāĻ¨āĨ¤
āĻāĻ¨āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻā§āĻ°ā§āĻĒ āĻāĻŦāĻ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ°
āĻāĻāĻŦāĻžāĻ° āĻāĻāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŋāĻ¤ā§āĻ° āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻā§āĻ˛ā§ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ āĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻž āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻā§āĻ°ā§āĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ Yandex.Cloud āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§, āĻāĻ āĻļāĻŦā§āĻĻāĻāĻŋ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻŽāĻŋāĻ˛āĻ¨āĻā§ āĻŦā§āĻāĻžāĻ¯āĻŧ āĻ¯ā§āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻāĻŋ āĻāĻ¨āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻā§āĻ°ā§āĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻ āĻā§āĻ°ā§āĻĒā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻā§āĻ°ā§āĻĒā§āĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻāĻŦāĻ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻ¸āĻāĻā§āĻ¯āĻž)āĨ¤ āĻ¯āĻĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻāĻā§āĻ¯āĻžāĻāĻŋ āĻāĻ āĻŽāĻžāĻ¨āĻĻāĻŖā§āĻĄāĻāĻŋ āĻĒā§āĻ°āĻŖ āĻ¨āĻž āĻāĻ°ā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻ¨āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻā§āĻ°ā§āĻĒ āĻ¨āĻŋāĻā§āĻ āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻŽā§āĻļāĻŋāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĢā§āĻ˛āĻŦā§ āĻŦāĻž āĻāĻŽā§āĻ āĻāĻŦāĻ āĻ¸āĻžāĻĻā§āĻļā§āĻ¯ā§ āĻ¨āĻ¤ā§āĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§āĨ¤
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻ¸ā§āĻā§āĻ° āĻ āĻāĻļ āĻšāĻŋāĻ¸ā§āĻŦā§, āĻāĻŽāĻ°āĻž āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻāĻ¨āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻā§āĻ°ā§āĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦ āĻ¯āĻž āĻĒā§āĻ°ā§āĻŦā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŽā§āĻ āĻĨā§āĻā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻļā§āĻˇ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻā§āĻ°ā§āĻĒ āĻ¸ā§āĻāĻŋāĻ āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯āĨ¤ āĻ˛ā§āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻ˛āĻā§āĻˇā§āĻ¯ āĻā§āĻˇā§āĻ ā§āĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻŦā§āĻ¤āĻžāĻŽ āĻāĻŋāĻĒā§ āĻāĻ āĻā§āĻ°ā§āĻĒā§āĻ° āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻāĻĒāĻ°ā§ āĻāĻāĻāĻŋ L3 āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻ¤ā§ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻāĻ°āĻŦā§āĨ¤
āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻŋ āĻĻā§āĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§āĻāĻŋ:
- āĻāĻŽāĻŋ āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋ āĻ¯āĻžāĻ¤ā§ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ°āĻāĻŋ āĻĒā§āĻ°ā§āĻ 80-āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° 3000 āĻĒā§āĻ°ā§āĻā§ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻāĻ°ā§, āĻ¯ā§āĻāĻžāĻ¨ā§ Grafana āĻŦāĻžāĻ¸ āĻāĻ°ā§āĨ¤
- āĻĒā§āĻ°ā§āĻ 3000 āĻ āĻĒāĻŋāĻ āĻāĻ°ā§ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°ā§āĻ¨āĨ¤
āĻŽāĻŋāĻ¨āĻŋ āĻŽā§āĻ
āĻ āĻŦāĻļā§āĻˇā§, āĻāĻŽāĻ°āĻž āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻĒāĻāĻ¨ā§āĻĻāĻ¸āĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĒāĻ°āĻŋāĻāĻžāĻ āĻžāĻŽā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§āĻāĻŋ, āĻāĻŦāĻ āĻāĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻž āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻŋāĻ¤ā§ āĻĄā§āĻāĻžāĻ¸ā§āĻ āĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻŦāĻ āĻā§āĻ˛āĻŋāĻāĻšāĻžāĻāĻ¸ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻšā§āĻ¸ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ°ā§āĻ° āĻāĻāĻĒāĻŋ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻāĻžāĻ¨āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻāĻāĻž āĻāĻŋ āĻŦāĻŋāĻāĻ¯āĻŧ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻšāĻŦā§? āĻšā§āĻ¯āĻžāĻ, āĻŦāĻŋāĻāĻ¯āĻŧāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŋāĻā§ āĻāĻāĻ¨āĻ āĻāĻŽāĻžāĻā§ āĻŦāĻŋāĻ°āĻā§āĻ¤ āĻāĻ°ā§. āĻāĻĒāĻ°ā§āĻ° āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛ āĻ ā§āĻ¯āĻžāĻāĻļāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻŦāĻ āĻāĻāĻŋ āĻŽā§āĻā§āĻ āĻ¸ā§āĻā§āĻ˛ āĻāĻ°ā§ āĻ¨āĻž, āĻāĻŽāĻŋ āĻ¸āĻŽā§āĻāĻŦ āĻšāĻ˛ā§ āĻāĻāĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĨ¤ āĻāĻāĻŋ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻŦāĻŋāĻāĻžāĻā§āĻ° āĻĢā§āĻāĻžāĻ¸ āĻšāĻŦā§āĨ¤
Terraform āĻ¸āĻā§āĻā§ āĻāĻ¨ā§āĻāĻŋāĻā§āĻ°ā§āĻļāĻ¨
āĻāĻŽāĻ°āĻž āĻāĻŦāĻžāĻ° HashiCorp āĻ¨āĻžāĻŽāĻ āĻāĻāĻāĻŋ āĻā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦ
āĻā§āĻ°āĻžāĻĢāĻ°ā§āĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻžāĻ āĻāĻāĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĢāĻžāĻāĻ˛ āĻ˛āĻŋāĻāĻ¤ā§ āĻ¨ā§āĻŽā§ āĻāĻ¸ā§ (*.tf
) āĻāĻŦāĻ āĻāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ
āĻŦāĻāĻžāĻ āĻžāĻŽā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĨ¤
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻāĻā§āĻŦāĻžāĻ°ā§ āĻļā§āĻ°ā§āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋ āĻŦā§āĻ° āĻāĻ°āĻŦ āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ āĻ¯ā§ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻĒāĻ°āĻŋāĻāĻžāĻ āĻžāĻŽā§ āĻā§āĻĨāĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻā§āĻāĻžāĻŦā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
variable "oauth_token" {
type = string
default = "<oauth-token>"
}
variable "cloud_id" {
type = string
default = "<cloud-id>"
}
variable "folder_id" {
type = string
default = "<folder_id>"
}
variable "service_account_id" {
type = string
default = "<service_account_id>"
}
variable "image_id" {
type = string
default = "<image_id>"
}
variable "username" {
type = string
default = "<username>"
}
variable "password" {
type = string
default = "<password>"
}
variable "dbname" {
type = string
default = "<dbname>"
}
variable "public_key_path" {
type = string
default = "<path to ssh public key>"
}
āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻāĻāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŽā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻŦāĻ āĻāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋ āĻ¸ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨ā§āĻŽā§ āĻāĻ¸āĻŦā§āĨ¤ āĻāĻŽāĻžāĻā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻ¯āĻžāĻ āĻ¤āĻžāĻ°āĻž āĻāĻŋ āĻāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§:
oauth_token - āĻā§āĻ˛āĻžāĻāĻĄā§ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻā§āĻā§āĻ¨āĨ¤ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§
āĻā§āĻ˛āĻžāĻāĻĄ_āĻāĻāĻĄāĻŋ - āĻā§āĻ˛āĻžāĻāĻĄā§āĻ° āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŦ
āĻĢā§āĻ˛ā§āĻĄāĻžāĻ°_āĻāĻāĻĄāĻŋ â āĻ¯ā§ āĻŦāĻŋāĻāĻžāĻā§āĻ° āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻāĻŽāĻ°āĻž āĻāĻŦā§āĻĻāĻ¨āĻāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŦ
service_account_id â āĻā§āĻ˛āĻžāĻāĻĄā§āĻ° āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŦāĻŋāĻāĻžāĻā§ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻ
ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻā§āĻ° āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§āĨ¤
image_id - āĻĒā§āĻ¯āĻžāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻ¸āĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽ и āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ - āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻāĻŦāĻ Grafana āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻāĻ¯āĻŧ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽ āĻāĻŦāĻ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ
dbname - CH āĻāĻŦāĻ MySQL āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¨āĻžāĻŽ
āĻ¸āĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨_āĻā§_āĻĒāĻĨ - āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨ ssh āĻā§ āĻ¸āĻš āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒāĻĨ, āĻ¯āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻĒāĻ¨āĻŋ āĻ¨āĻžāĻŽā§āĻ° āĻ
āĻ§ā§āĻ¨ā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ ubuntu
āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¸āĻš āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§
āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻāĻžāĻ°ā§ āĻ¸ā§āĻāĻŋāĻ
āĻāĻāĻ¨ āĻāĻĒāĻ¨āĻžāĻā§ Terraform āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻāĻžāĻ°ā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ - āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, Yandex:
provider "yandex" {
token = var.oauth_token
cloud_id = var.cloud_id
folder_id = var.folder_id
zone = "ru-central1-a"
}
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨ āĻ¯ā§ āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻāĻĒāĻ°ā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻāĻŋāĨ¤
āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°
āĻāĻāĻ¨ āĻāĻ¸ā§āĻ¨ āĻāĻāĻāĻŋ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ āĻŦāĻāĻžāĻ āĻžāĻŽā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°āĻŦā§, āĻ¤āĻŋāĻ¨āĻāĻŋ āĻ¸āĻžāĻŦāĻ¨ā§āĻ (āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻā§āĻāĻ˛ā§ āĻāĻāĻāĻŋ) āĻāĻŦāĻ CH āĻāĻŦāĻ MySQL āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻŦāĻžāĻĄāĻŧāĻžāĻŦā§āĨ¤
resource "yandex_vpc_network" "grafana_network" {}
resource "yandex_vpc_subnet" "subnet_a" {
zone = "ru-central1-a"
network_id = yandex_vpc_network.grafana_network.id
v4_cidr_blocks = ["10.1.0.0/24"]
}
resource "yandex_vpc_subnet" "subnet_b" {
zone = "ru-central1-b"
network_id = yandex_vpc_network.grafana_network.id
v4_cidr_blocks = ["10.2.0.0/24"]
}
resource "yandex_vpc_subnet" "subnet_c" {
zone = "ru-central1-c"
network_id = yandex_vpc_network.grafana_network.id
v4_cidr_blocks = ["10.3.0.0/24"]
}
resource "yandex_mdb_clickhouse_cluster" "ch_cluster" {
name = "grafana-clickhouse"
environment = "PRODUCTION"
network_id = yandex_vpc_network.grafana_network.id
clickhouse {
resources {
resource_preset_id = "s2.micro"
disk_type_id = "network-ssd"
disk_size = 16
}
}
zookeeper {
resources {
resource_preset_id = "s2.micro"
disk_type_id = "network-ssd"
disk_size = 10
}
}
database {
name = var.dbname
}
user {
name = var.username
password = var.password
permission {
database_name = var.dbname
}
}
host {
type = "CLICKHOUSE"
zone = "ru-central1-a"
subnet_id = yandex_vpc_subnet.subnet_a.id
}
host {
type = "CLICKHOUSE"
zone = "ru-central1-b"
subnet_id = yandex_vpc_subnet.subnet_b.id
}
host {
type = "CLICKHOUSE"
zone = "ru-central1-c"
subnet_id = yandex_vpc_subnet.subnet_c.id
}
host {
type = "ZOOKEEPER"
zone = "ru-central1-a"
subnet_id = yandex_vpc_subnet.subnet_a.id
}
host {
type = "ZOOKEEPER"
zone = "ru-central1-b"
subnet_id = yandex_vpc_subnet.subnet_b.id
}
host {
type = "ZOOKEEPER"
zone = "ru-central1-c"
subnet_id = yandex_vpc_subnet.subnet_c.id
}
}
resource "yandex_mdb_mysql_cluster" "mysql_cluster" {
name = "grafana_mysql"
environment = "PRODUCTION"
network_id = yandex_vpc_network.grafana_network.id
version = "8.0"
resources {
resource_preset_id = "s2.micro"
disk_type_id = "network-ssd"
disk_size = 16
}
database {
name = var.dbname
}
user {
name = var.username
password = var.password
permission {
database_name = var.dbname
roles = ["ALL"]
}
}
host {
zone = "ru-central1-a"
subnet_id = yandex_vpc_subnet.subnet_a.id
}
host {
zone = "ru-central1-b"
subnet_id = yandex_vpc_subnet.subnet_b.id
}
host {
zone = "ru-central1-c"
subnet_id = yandex_vpc_subnet.subnet_c.id
}
}
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻĻā§āĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻĒā§āĻ°āĻžāĻĒā§āĻ¯āĻ¤āĻž āĻ āĻā§āĻāĻ˛ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ āĻŽā§āĻāĻžāĻŽā§āĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ-āĻ¸āĻšāĻ¨āĻļā§āĻ˛ āĻšāĻ¤ā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°
āĻŽāĻ¨ā§ āĻšāĻā§āĻā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻ āĻā§āĻ¤āĻ¨āĻžāĻ¯āĻŧ āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻŋ āĻ
āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ¯āĻŧ āĻĒāĻĄāĻŧā§āĻāĻŋāĻ˛āĻžāĻŽāĨ¤ āĻ¤āĻžāĻ° āĻāĻā§, āĻāĻŽāĻŋ āĻĒā§āĻ°āĻĨāĻŽā§ MySQL āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻžāĻ° āĻĒāĻ°ā§, āĻāĻ° āĻāĻāĻĄāĻŋ āĻā§āĻ¨ā§, āĻāĻŽāĻŋ āĻĒāĻāĻ¨ā§āĻĻāĻ¸āĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻ¸āĻš āĻāĻāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŋāĻ¤ā§āĻ° āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°ā§āĻāĻŋ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻŽāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻšā§āĻ¸ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻ¨ āĻāĻŽāĻ°āĻž āĻā§āĻ°āĻžāĻĢāĻ°ā§āĻŽ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻāĻĄāĻŋ āĻāĻžāĻ¨āĻŋ āĻ¨āĻž, āĻāĻŦāĻŋ āĻ¤ā§āĻ°āĻŋāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻšāĨ¤ āĻ¤āĻžāĻ āĻāĻŽāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ
āĻŦāĻ˛āĻŽā§āĻŦāĻ¨ āĻāĻŋāĻ˛
Amazon āĻĨā§āĻā§ āĻŽā§āĻāĻžāĻĄā§āĻāĻž āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻāĻŽāĻ°āĻž āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻŋāĻā§ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻŦ, āĻ¯āĻž āĻāĻāĻŋ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻŦā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻŦā§āĨ¤ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° MySQL āĻšā§āĻ¸ā§āĻ āĻāĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽ-āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŽā§āĻāĻžāĻĄā§āĻāĻžāĻ¤ā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻĻā§āĻ° āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§ Terraform āĻĢāĻžāĻāĻ˛ā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻā§āĨ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨ setup.sh
, āĻ¯āĻž āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻāĻžāĻ˛ā§ āĻšāĻ˛ā§ āĻāĻ˛ā§āĨ¤
setup.sh:
#!/bin/bash
CLUSTER_URI="$(curl -H 'Metadata-Flavor:Google' http://169.254.169.254/computeMetadata/v1/instance/attributes/mysql_cluster_uri)"
USERNAME="$(curl -H 'Metadata-Flavor:Google' http://169.254.169.254/computeMetadata/v1/instance/attributes/username)"
PASSWORD="$(curl -H 'Metadata-Flavor:Google' http://169.254.169.254/computeMetadata/v1/instance/attributes/password)"
sudo sed -i "s#.*;url =.*#url = mysql://${USERNAME}:${PASSWORD}@${CLUSTER_URI}#" /etc/grafana/grafana.ini
sudo sed -i "s#.*;admin_user =.*#admin_user = ${USERNAME}#" /etc/grafana/grafana.ini
sudo sed -i "s#.*;admin_password =.*#admin_password = ${PASSWORD}#" /etc/grafana/grafana.ini
sudo service grafana-server restart
āĻāĻ¨āĻā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻā§āĻ°ā§āĻĒ āĻāĻŦāĻ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ°
āĻ¨āĻ¤ā§āĻ¨ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŽā§āĻ āĻĒā§āĻ¨āĻ°ā§āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻ°āĻž āĻ āĻŦāĻļā§āĻˇā§ Terraform āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻĻā§āĻ° āĻĢāĻžāĻāĻ˛ āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤
āĻāĻŽāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻŋ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŋāĻ¤ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ:
data "yandex_compute_image" "grafana_image" {
image_id = var.image_id
}
āĻāĻāĻ¨ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻā§āĻ°ā§āĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¯āĻžāĻ:
resource "yandex_compute_instance_group" "grafana_group" {
name = "grafana-group"
folder_id = var.folder_id
service_account_id = var.service_account_id
instance_template {
platform_id = "standard-v1"
resources {
memory = 1
cores = 1
}
boot_disk {
mode = "READ_WRITE"
initialize_params {
image_id = data.yandex_compute_image.grafana_image.id
size = 4
}
}
network_interface {
network_id = yandex_vpc_network.grafana_network.id
subnet_ids = [yandex_vpc_subnet.subnet_a.id, yandex_vpc_subnet.subnet_b.id, yandex_vpc_subnet.subnet_c.id]
nat = "true"
}
metadata = {
mysql_cluster_uri = "c-${yandex_mdb_mysql_cluster.mysql_cluster.id}.rw.mdb.yandexcloud.net:3306/${var.dbname}"
username = var.username
password = var.password
ssh-keys = "ubuntu:${file("${var.public_key_path}")}"
}
network_settings {
type = "STANDARD"
}
}
scale_policy {
fixed_scale {
size = 6
}
}
allocation_policy {
zones = ["ru-central1-a", "ru-central1-b", "ru-central1-c"]
}
deploy_policy {
max_unavailable = 2
max_creating = 2
max_expansion = 2
max_deleting = 2
}
load_balancer {
target_group_name = "grafana-target-group"
}
}
āĻāĻŽāĻ°āĻž āĻāĻŋāĻāĻžāĻŦā§ āĻŽā§āĻāĻžāĻĄā§āĻāĻž āĻĒāĻžāĻ¸ āĻāĻ°ā§āĻāĻŋ āĻ¸ā§āĻĻāĻŋāĻā§ āĻŽāĻ¨ā§āĻ¯ā§āĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ cluster_uri
, username
и password
. āĻāĻāĻŋ āĻ¤āĻžāĻĻā§āĻ° āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ āĻ¯āĻž āĻ¸ā§āĻāĻžāĻ°ā§āĻāĻāĻĒā§ āĻāĻāĻŋ āĻĒāĻžāĻŦā§ āĻāĻŦāĻ āĻā§āĻ°āĻžāĻĢāĻžāĻ¨āĻž āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§ āĻ°āĻžāĻāĻŦā§āĨ¤
āĻāĻāĻž āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§.
resource "yandex_lb_network_load_balancer" "grafana_balancer" {
name = "grafana-balancer"
listener {
name = "grafana-listener"
port = 80
target_port = 3000
external_address_spec {
ip_version = "ipv4"
}
}
attached_target_group {
target_group_id = yandex_compute_instance_group.grafana_group.load_balancer.0.target_group_id
healthcheck {
name = "healthcheck"
tcp_options {
port = 3000
}
}
}
}
āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻ¨āĻŋ
āĻā§āĻŦ āĻāĻŽ āĻŦāĻžāĻāĻŋ āĻāĻŋāĻ˛āĨ¤ āĻĒāĻ°āĻŋāĻāĻžāĻ āĻžāĻŽā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻĒāĻ°, āĻāĻĒāĻ¨āĻžāĻā§ Grafana UI-āĻ āĻ¯ā§āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ CH āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° (āĻ¯āĻžāĻ° āĻāĻāĻĄāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻ¨āĻ āĻĒā§āĻ¤ā§ āĻšāĻŦā§) āĻĄā§āĻāĻž āĻā§āĻ¸ āĻšāĻŋāĻ¸ā§āĻŦā§ āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ Terraform āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻāĻĄāĻŋ āĻāĻžāĻ¨ā§āĨ¤ āĻāĻā§ āĻāĻžāĻ āĻļā§āĻˇ āĻāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻāĨ¤
āĻāĻ¸ā§āĻ¨ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻāĻžāĻ°ā§ āĻ¯ā§āĻ āĻāĻ°āĻŋ - Grafana, āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻšā§āĻ¸ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻāĻāĻĒāĻŋ āĻ¸ā§āĻ˛āĻŋāĻĒ āĻāĻ°ā§āĻ¨ā§ˇ āĻā§āĻ°āĻžāĻĢāĻ°ā§āĻŽ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¤āĻžāĻ° āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ MySQL-āĻ āĻāĻŦāĻ āĻ¸ā§āĻāĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻŦā§āĻĻā§āĻ§āĻŋ āĻĒāĻžāĻŦā§āĨ¤
provider "grafana" {
url = "http://${[for s in yandex_lb_network_load_balancer.grafana_balancer.listener: s.external_address_spec.0.address].0}"
auth = "${var.username}:${var.password}"
}
resource "grafana_data_source" "ch_data_source" {
type = "vertamedia-clickhouse-datasource"
name = "grafana"
url = "https://c-${yandex_mdb_clickhouse_cluster.ch_cluster.id}.rw.mdb.yandexcloud.net:8443"
basic_auth_enabled = "true"
basic_auth_username = var.username
basic_auth_password = var.password
is_default = "true"
access_mode = "proxy"
}
āĻāĻ˛ā§āĻ¨ āĻāĻŋāĻ°ā§āĻ¨āĻŋ
āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻāĻāĻĒāĻŋ āĻāĻŦāĻ āĻā§āĻ˛āĻŋāĻāĻšāĻžāĻāĻ¸ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻšā§āĻ¸ā§āĻ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§āĻ¨
output "grafana_balancer_ip_address" {
value = [for s in yandex_lb_network_load_balancer.grafana_balancer.listener: s.external_address_spec.0.address].0
}
output "clickhouse_cluster_host" {
value = "https://c-${yandex_mdb_clickhouse_cluster.ch_cluster.id}.rw.mdb.yandexcloud.net:8443"
}
āĻ°āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¸āĻŽāĻ¸ā§āĻ¤ ! āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĢāĻžāĻāĻ˛ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¸ā§āĻ āĻāĻ°ā§ āĻā§āĻ°āĻžāĻĢāĻ°ā§āĻŽāĻā§ āĻŦāĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻāĻŽāĻ°āĻž āĻāĻĒāĻ°ā§ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻ¸āĻŦāĻāĻŋāĻā§ āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§āĨ¤ āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻāĻŽāĻžāĻ° āĻĒā§āĻ°āĻžāĻ¯āĻŧ 15 āĻŽāĻŋāĻ¨āĻŋāĻ āĻ¸āĻŽāĻ¯āĻŧ āĻ¨ā§āĻ¯āĻŧāĨ¤
āĻļā§āĻˇā§, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻ¨ā§āĻĻāĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
Apply complete! Resources: 9 added, 0 changed, 0 destroyed.
Outputs:
clickhouse_cluster_host = https://c-c9q14ipa2ngadqsbp2iq.rw.mdb.yandexcloud.net:8443
grafana_balancer_ip_address = 130.193.50.25
āĻāĻŦāĻ āĻŽā§āĻā§, āĻāĻ¤ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻ āĻŦāĻāĻžāĻ āĻžāĻŽā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨ āĻšāĻŦā§:
āĻāĻ¸ā§āĻ¨ āĻĒāĻ°āĻŋāĻŖāĻžāĻŽ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĢāĻ˛āĻžāĻĢāĻ˛
āĻāĻāĻ¨, Grafana-āĻāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻāĻĒāĻ¨āĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻā§āĻ Yandex.Cloud āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻŦāĻŋāĻ¸ā§āĻ¤ā§āĻ¤ āĻā§āĻ˛āĻžāĻāĻĄ āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ° āĻ¸āĻš āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ HashiCorp āĻĨā§āĻā§ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻā§āĻ˛ āĻ¯ā§āĻŽāĻ¨ Packer āĻāĻŦāĻ Terraform āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ¤ā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻŽāĻŋ āĻāĻļāĻž āĻāĻ°āĻŋ āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋ āĻāĻžāĻ°āĻ āĻāĻžāĻā§ āĻ˛āĻžāĻāĻŦā§ đ
āĻĒāĻŋāĻāĻ¸ āĻ¨ā§āĻā§ āĻāĻŽāĻŋ āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§āĻ° āĻāĻāĻāĻŋ āĻ˛āĻŋāĻā§āĻ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻŦ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ¯āĻžāĻāĻžāĻ° āĻāĻŦāĻ āĻā§āĻ°āĻžāĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¤ā§āĻ°āĻŋ āĻ°ā§āĻ¸āĻŋāĻĒāĻŋāĻā§āĻ˛āĻŋ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¯āĻžāĻ° āĻā§āĻāĻ°ā§āĻā§āĻ˛āĻŋ āĻāĻŽāĻŋ āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com