TGViewer
DevOps DevOps @devopsitsec · 23.7K subscribers
Post #484 3.16K
🔄Как упростить работу с YAML-файлами

YAML — популярный язык для конфигурационных файлов, широко используемый DevOps в подходе «Инфраструктура как Код» (IaC).
Давайте рассмотрим несколько советов, которые помогут упростить работу с yml-файлами.


Используйте специализированные редакторы и плагины
Очевидный совет, но мало ли; работа с YAML в правильной среде даёт:
🔘подсветку синтаксиса
🔘автодополнение кода
🔘проверку отступов
🔘сниппеты (шаблоны кода)

Популярные плагины: YAML Support для VS Code, yaml-mode для Emacs, drawspaces для Gedit.


Генерируйте YAML из кода
Ручное написание сложных конфигураций на YAML не так приятно. Проще сначала определить нужную структуру данных в виде словарей и массивов в том же Python, а затем сгенерировать из нее YAML.

Есть такая структура:
data = {
"server": {
"port": 8000,
"enabled": true
},
"clients": [
{"name": "Client1", "address": "192.168.1.100"},
{"name": "Client2", "address": "192.168.1.101"}
]
}

С помощью PyYAML легко конвертируем в YAML-файл:
import yaml
with open('config.yaml','w') as f:
f.write(yaml.dump(data))

Получаем:
  
server:
port: 8000
enabled: true
clients:
- address: 192.168.1.100
name: Client1
- address: 192.168.1.101
name: Client2



Создавайте шаблоны
Намного проще взять существующую заготовку, подставить в нее данные приложения и получить готовый YAML-файл.

Например, при развертывании микросервисов в Kubernetes удобно иметь шаблон манифеста deployment.yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: <service_name>
labels:
app: <service_name>
spec:
replicas: 3
template:
metadata:
labels:
app: <service_name>
spec:
containers:
- name: <service_name>
image: <image>:<tag>
ports:
- containerPort: <port>
---
apiVersion: v1
kind: Service


▶️ Ещё несколько полезных советов по YAML

@DevOPSitsec
  • 👍 18
  • 🔥 3
  • ❤ 2
More from @devopsitsec
  1. Oct 6, 2026👣 Большой разбор собеседований на Go в 2026 году На GitHub появился мощный репозиторий дл…
  2. Oct 6, 2026Для тех, кто работает с Kubernetes и облачной инфраструктурой, в октябре намечается отличн…
  3. Oct 4, 2026🚀 DevOps Interview 2026 - шпаргалка-курс для подготовки к собеседованию Всё, что спрашива…
  4. Oct 3, 2026🛠️ Awesome SRE - большая подборка ресурсов для Site Reliability Engineering Репозиторий a…
  5. Oct 2, 2026photo post
  6. Oct 1, 20265 вещей, которые сильно упростят Kubernetes в начале: 1. Сначала разберитесь с Service, и…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →