Size: a a a

2020 November 23

P

Pavel in DevOps
Рыночек порешал в пользу убогих, коих большинство. У ансибла и вправду всё плоховато
источник

DS

Dmitry Sergeev in DevOps
Sergey Pechenkó
Приноси это в чат по ансиблу - поржём в 2,7К человек.
эм, ты лучше аргументы с примерами приведи. А то твои аргументы вообще никак не относятся к реализации идемпотентности:
1) legacy - да проект старый. Но до сих пор поддерживается и выпускаются новые версии, с новыми фичами.
2) нет циклов - там вместо циклов ты юзаешь замыкания типо eash, map, reduce, и так далее. Язык делкаративен.
3) всем чатом поржём - не понял к чему это вообще
источник

A

Alexander in DevOps
Bandikoot
ну ок, солт выдаст такую же, и? (:
Если будут разные id у стейтов, то не выдаст.
источник

DS

Dmitry Sergeev in DevOps
Sergey Pechenkó
Если ты считаешь, что инструмент должен мешать тебе делать дичь, то могу только ещё раз повторить: рыночек порешал. Большинство считает не так.
Так я не против ansible. Я лишь сказал что там плохо с идемпотентностью и в  solt, puppet с этим по лучше. И привел показательный пример. Ты можешь опровергнуть мое высказывание своими примерами, или указать на мою ошибку. А вместо этого твои ответы похоже на какое-то фанбойство, и ты сводишь вопрос к тому что лучше, хотя речь вообще не про это, а потом просишь перенести дискуссию в чат где ты админ, да еще с предложением "поржем над тобой". Что не конструктивно
источник

A

Alexander in DevOps
Dmitry Sergeev
идеальной нет нигде. Но вот то что в ansible это провал.
Коммон, простой пример

tasks:
 - file:
     path: /tmp/test
     state: absent
 - file:
     path: /tmp/test
     state: directory

В итоге получаем созданную директорию на хосте - это не норма

Старичек puppet из 2005 года на такое заругается и выдаст ошибку, что правильно:
file {'/tmp/test':
   ensure => absent,
}
file {'/tmp/test':
   ensure => directory,
}
А если так?

file{'title1':
 ensure => absent,
 path => '/tmp/test',
}
file{'title2':
 ensure => directory,
 path => '/tmp/test',
}
источник

DS

Dmitry Sergeev in DevOps
Alexander
А если так?

file{'title1':
 ensure => absent,
 path => '/tmp/test',
}
file{'title2':
 ensure => directory,
 path => '/tmp/test',
}
нет, не прокатит
$ cat 1.pp 
file {'id1':
   path   => '/tmp/test',
   ensure => absent,
}
file {'id2':
   path   => '/tmp/test',
   ensure => directory,
}
$ puppet apply 1.pp
Error: Evaluation Error: Error while evaluating a Resource Statement, Cannot alias File[id2] to ["/tmp/test"] at (file: /root/1.pp, line: 5); resource ["File", "/tmp/test"] already declared (file: /root/1.pp, line: 1) (file: /root/1.pp, line: 5, column: 1) on node test


Но мысль верная, это завист от реализации провайдера. То есть тот кто написал провайдер, тот должен реализовать эту идентичность, чтобы ресурсы имели четкую идентичность, и через манипуляции с аттрибутами это нельзя было обойти.
источник

DS

Dmitry Sergeev in DevOps
в ресурсе file,  провайдер реализован хорошо. Собственно идеально нигде не реализовано, о чем я в начале и говорил.
источник

BG

Bogdan (SirEdvin) Gl... in DevOps
Dmitry Sergeev
идеальной нет нигде. Но вот то что в ansible это провал.
Коммон, простой пример

tasks:
 - file:
     path: /tmp/test
     state: absent
 - file:
     path: /tmp/test
     state: directory

В итоге получаем созданную директорию на хосте - это не норма

Старичек puppet из 2005 года на такое заругается и выдаст ошибку, что правильно:
file {'/tmp/test':
   ensure => absent,
}
file {'/tmp/test':
   ensure => directory,
}
Стоп, стоп, в ansible же идемпотентные таски сами по себе
источник

BG

Bogdan (SirEdvin) Gl... in DevOps
Какая вам еще идемпотентность от него нужна? Он не со стейтами работает, это как и плюс, так и минус
источник

DS

Dmitry Sergeev in DevOps
Bogdan (SirEdvin) Gladyshev
Какая вам еще идемпотентность от него нужна? Он не со стейтами работает, это как и плюс, так и минус
хочу описывать состояние инфраструктуры, а не выполнение тасок
источник

BG

Bogdan (SirEdvin) Gl... in DevOps
И я же правильно понимаю, что в условном паппете должен быть весь стейт, а все лишнее будет удалено? Или там на полшишечки?
источник

DS

Dmitry Sergeev in DevOps
Bogdan (SirEdvin) Gladyshev
И я же правильно понимаю, что в условном паппете должен быть весь стейт, а все лишнее будет удалено? Или там на полшишечки?
это задается. Надо ли тебе удалять все что не управляется puppet'ом сам решаешь.
Например глупо это делать с пользователями или с пакетами в системе.
источник

AS

Aleksey Shirokikh in DevOps
Dmitry Sergeev
просто в ansible ее нет =)
чиго блять :)
источник

KZ

Kirill Zhgulev in DevOps
Не, ну это смотря как плейбуки писать, чисто теоретически можно так написать, что не будет. Тот же shell по-моему всегда changed по дефолту, и можно там нахуевертить что угодно.
источник

BG

Bogdan (SirEdvin) Gl... in DevOps
Аргумент "там можно сделать что угодно, а значит не считается" вообще можно применить к чему угодно)
источник

SP

Sergey Pechenkó in DevOps
^^^ +++
источник

SK

Sergey Khortyuk in DevOps
Привет, всем....
Немного тупой вопрос.... но я кажись запутался
Объясните почему
 Load average: 28.19 46.34 48.95 

На 8 ядерном проце
источник

AV

Alexander V in DevOps
плохо
источник

SK

Sergey Khortyuk in DevOps
это я и так понимаю...
источник

AM

Anton Moskalev in DevOps
Sergey Khortyuk
Привет, всем....
Немного тупой вопрос.... но я кажись запутался
Объясните почему
 Load average: 28.19 46.34 48.95 

На 8 ядерном проце
iotop подскажет
источник