Всем привет!
Тем, кто попал сюда случайно, меня зовут Леша и я начинающий DevOps инженер в компании Флант.
Здесь я буду делиться своими находками, советами от старших товарищей и другими материалами, которые посчитаю полезными, для развития в сфере SRE/DevOps
Тем, кто попал сюда случайно, меня зовут Леша и я начинающий DevOps инженер в компании Флант.
Здесь я буду делиться своими находками, советами от старших товарищей и другими материалами, которые посчитаю полезными, для развития в сфере SRE/DevOps
❤1
Сейчас, наверное, самым популярным и интересным инструментом для инженера является kubernetes.
Но чтобы хорошо в нем разобраться нужно либо глубоко копаться в документации (и не факт, что все будет понятно с первого раза), либо разбираться на практике.
И вот со вторым способом может помочь один репозиторий с гитхаба:
https://github.com/kelseyhightower/kubernetes-the-hard-way
Это полный туториал, который показывает, как самостоятельно развернуть рабочий кластер k8s в Google cloud.
Сам пока ещё не делал, но в ближайшее время найду на него пару-тройку часиков (100% убью на него все следующие выходные :D)
Но чтобы хорошо в нем разобраться нужно либо глубоко копаться в документации (и не факт, что все будет понятно с первого раза), либо разбираться на практике.
И вот со вторым способом может помочь один репозиторий с гитхаба:
https://github.com/kelseyhightower/kubernetes-the-hard-way
Это полный туториал, который показывает, как самостоятельно развернуть рабочий кластер k8s в Google cloud.
Сам пока ещё не делал, но в ближайшее время найду на него пару-тройку часиков (100% убью на него все следующие выходные :D)
❤2
Junior DevOps/SR engineer pinned «Всем привет! Тем, кто попал сюда случайно, меня зовут Леша и я начинающий DevOps инженер в компании Флант. Здесь я буду делиться своими находками, советами от старших товарищей и другими материалами, которые посчитаю полезными, для развития в сфере SRE/DevOps»
Рубрика #держувкурсе или истории из жизни:
Поставили задачу - развернуть jmeter в кубах.
Для тех, кто не знает, что это за зверь:
jmeter - это десктопная утилита для нагрузочного тестирования приложений (У нее, конечно, есть CLI, но его функционал ограничен по сравнению с UI версией) и широко известна в узких кругах.
Так вот, нужно было развернуть UI в контейнере да еще и в k8s. Для малолетнего дэбила (меня) это звучало как натягивание совы на глобус. Но оказывается, есть такая штука:
https://github.com/fcwu/docker-ubuntu-vnc-desktop
И тут, как говорится, немного обалдел :))))
Харкнул, плюнул, налепил костылей, потратил пару-тройку дней, крепко примотал скотчем и все заработало. В общем, нет ничего невозможного, главное - захотеть (И главное, чтобы был тимлид, который кинет такую ссылочку).
Поставили задачу - развернуть jmeter в кубах.
Для тех, кто не знает, что это за зверь:
jmeter - это десктопная утилита для нагрузочного тестирования приложений (У нее, конечно, есть CLI, но его функционал ограничен по сравнению с UI версией) и широко известна в узких кругах.
Так вот, нужно было развернуть UI в контейнере да еще и в k8s. Для малолетнего дэбила (меня) это звучало как натягивание совы на глобус. Но оказывается, есть такая штука:
https://github.com/fcwu/docker-ubuntu-vnc-desktop
И тут, как говорится, немного обалдел :))))
Харкнул, плюнул, налепил костылей, потратил пару-тройку дней, крепко примотал скотчем и все заработало. В общем, нет ничего невозможного, главное - захотеть (И главное, чтобы был тимлид, который кинет такую ссылочку).
❤1
Junior DevOps/SR engineer
Сейчас, наверное, самым популярным и интересным инструментом для инженера является kubernetes. Но чтобы хорошо в нем разобраться нужно либо глубоко копаться в документации (и не факт, что все будет понятно с первого раза), либо разбираться на практике. И…
Кстати, начал совсем с оркестратора, а классную статью про контейнеры не скинул:))))
https://faun.pub/the-missing-introduction-to-containerization-de1fbb73efc5
И ее перевод:
https://habr.com/ru/post/541288/
Для хорошего понимания, советую почитать еще вот этот цикл статей по cgroups:
https://habr.com/ru/company/redhatrussia/blog/423051/
И из блога selectel про ns и cgroups:
https://habr.com/ru/company/selectel/blog/279281/
https://habr.com/ru/company/selectel/blog/303190/
А это очень неплохой курс по введению в кубы (вторая лекция - это как раз рассказ про докер и все, что с ним связано, а третья - про docker-compose):
https://www.youtube.com/playlist?list=PL8D2P0ruohOA4Y9LQoTttfSgsRwUGWpu6
https://faun.pub/the-missing-introduction-to-containerization-de1fbb73efc5
И ее перевод:
https://habr.com/ru/post/541288/
Для хорошего понимания, советую почитать еще вот этот цикл статей по cgroups:
https://habr.com/ru/company/redhatrussia/blog/423051/
И из блога selectel про ns и cgroups:
https://habr.com/ru/company/selectel/blog/279281/
https://habr.com/ru/company/selectel/blog/303190/
А это очень неплохой курс по введению в кубы (вторая лекция - это как раз рассказ про докер и все, что с ним связано, а третья - про docker-compose):
https://www.youtube.com/playlist?list=PL8D2P0ruohOA4Y9LQoTttfSgsRwUGWpu6
❤1
#оффтоп
Добавил комменты к постам, правда они появятся только для будущих (с этого)
Если что, можем похоливарить о предыдущих тут
Добавил комменты к постам, правда они появятся только для будущих (с этого)
Если что, можем похоливарить о предыдущих тут
❤1
#интересныйфакт
А вы знали, что линуксовая утилита sed как разделитель для регулярных выражений может использовать не только "/"?
До недавнего времени я лепил вот такие штуки:
а оказалось, что можно делать все гораздно проще, например:
Опять же, не будь умных людей вокруг, так и мучался бы с конструкциями
тредик на стаковерфлоу:
https://stackoverflow.com/questions/5864146/using-different-delimiters-in-sed-commands-and-range-addresses
Мораль: читайте man <команда>
А вы знали, что линуксовая утилита sed как разделитель для регулярных выражений может использовать не только "/"?
До недавнего времени я лепил вот такие штуки:
sed -i 's/\/path\/to\/smth\//\/another\/path\/to\/smth\//g' filenameа оказалось, что можно делать все гораздно проще, например:
sed -i 's^/path/to/smth/^/another/path/to/smth/^g' filename
Опять же, не будь умных людей вокруг, так и мучался бы с конструкциями
\/тредик на стаковерфлоу:
https://stackoverflow.com/questions/5864146/using-different-delimiters-in-sed-commands-and-range-addresses
Мораль: читайте man <команда>
👍2❤1
И в догонку еще #интересныйфакт
Вместо того, чтобы открывать питон и через пандас найти уникальные значения какого-то стобца, либо через встроенный yaml-парсер перебирать данные, можно сделать
И получить то же самое, только быстрее и проще. А потом можно хвастаться, какие вы хацкеры:)
Вместо того, чтобы открывать питон и через пандас найти уникальные значения какого-то стобца, либо через встроенный yaml-парсер перебирать данные, можно сделать
cat filename.tsv | cut -f<номер столбца> | sort [аргументы, в зависимости от сортировки] | uniqcat filename.yaml | grep <нужное поле> | awk -F": " '{print $2}' | sort | uniqИ получить то же самое, только быстрее и проще. А потом можно хвастаться, какие вы хацкеры:)
❤1
Junior DevOps/SR engineer
И в догонку еще #интересныйфакт Вместо того, чтобы открывать питон и через пандас найти уникальные значения какого-то стобца, либо через встроенный yaml-парсер перебирать данные, можно сделать cat filename.tsv | cut -f<номер столбца> | sort [аргументы, в…
#держувкурсе
На работе надо было обновить api-версии для TLS сертификатов в k8s у аддона cert-manager c
Прошелся по полученным репам, поменял версии, выкатил - профит
На работе надо было обновить api-версии для TLS сертификатов в k8s у аддона cert-manager c
certmanager.k8s.io/v1alpha1 на cert-manager.io/v1 и чтобы понять, в каких репозиториях хранятся эти серты, просто сделал:kubectl get -A certificates.certmanager.k8s.io -l heritage!=deckhouse -o yaml | grep "project.werf.io/git" | awk -F ': ' '{print $2}' | sort -n | uniqПрошелся по полученным репам, поменял версии, выкатил - профит
❤1
#оффтоп
Вчера мне один хороший человек сказал, что писать на древнешумерском - не круто. Поэтому сегодня приехала пояснительная бригада из 7 "Б" и будет разбираться со всем вчера написанным (заодно и сам разберусь, хых)
Вчера мне один хороший человек сказал, что писать на древнешумерском - не круто. Поэтому сегодня приехала пояснительная бригада из 7 "Б" и будет разбираться со всем вчера написанным (заодно и сам разберусь, хых)
❤1
Junior DevOps/SR engineer
Кстати, начал совсем с оркестратора, а классную статью про контейнеры не скинул:)))) https://faun.pub/the-missing-introduction-to-containerization-de1fbb73efc5 И ее перевод: https://habr.com/ru/post/541288/ Для хорошего понимания, советую почитать еще вот…
И так, первое, что надо понять из #держувкурсе - это контейнеры. Это, фактически, просто изолированный процесс (с помощью различных технологий ядра операционной системы).
Docker - это волшебная утилита, которая позволила стандартизировать описание и запуск контейнеров (докер не первый, и не последний - но сейчас это стандарт)
Kubernetes - это ещё более крутая штука, которая вышла из Google. Если коротко, то это набор абстракций для управления, мониторинга и запуска большого количества контейнеров.
Но очень советую почитать статейки из сообщения выше и почитать overview документации kubernetes - все должно встать на свои места :)
Займет не больше часа на все, но очень круто для саморазвития
Docker - это волшебная утилита, которая позволила стандартизировать описание и запуск контейнеров (докер не первый, и не последний - но сейчас это стандарт)
Kubernetes - это ещё более крутая штука, которая вышла из Google. Если коротко, то это набор абстракций для управления, мониторинга и запуска большого количества контейнеров.
Но очень советую почитать статейки из сообщения выше и почитать overview документации kubernetes - все должно встать на свои места :)
Займет не больше часа на все, но очень круто для саморазвития
❤1
Junior DevOps/SR engineer
Рубрика #держувкурсе или истории из жизни: Поставили задачу - развернуть jmeter в кубах. Для тех, кто не знает, что это за зверь: jmeter - это десктопная утилита для нагрузочного тестирования приложений (У нее, конечно, есть CLI, но его функционал ограничен…
Теперь про jmeter.
Как вы поняли, контейнер - это процесс. Причем в данном посте говорится о контейнере в кластере k8s. Так вот, этот кластер развернут на нескольких серверах, и, что логично, физического доступа к серверам нет (ну, кроме, возможно пары человек). Поэтому возникает вопрос - как запустить приложение с UI без монитора на рабочей машине (сервере) удаленно?
И тут на помощь приходит VNC (Virtual Network Computing) - система удаленного доступа к рабочему столу. Фактически, репозиторий из сообщения выше, позволяет развернуть VNC сервер прямо в контейнере (там не все так просто, но я в этом не разбираюсь. Если кто-то знает, буду рад ликбезу:))
И таким образом, можно подключаться через специальные утилиты напрямую к контейнеру удаленно и спокойно им управлять прямо в UI.
Но, конечно, без костылей и танцев с бубнами не обойдется:)
Как вы поняли, контейнер - это процесс. Причем в данном посте говорится о контейнере в кластере k8s. Так вот, этот кластер развернут на нескольких серверах, и, что логично, физического доступа к серверам нет (ну, кроме, возможно пары человек). Поэтому возникает вопрос - как запустить приложение с UI без монитора на рабочей машине (сервере) удаленно?
И тут на помощь приходит VNC (Virtual Network Computing) - система удаленного доступа к рабочему столу. Фактически, репозиторий из сообщения выше, позволяет развернуть VNC сервер прямо в контейнере (там не все так просто, но я в этом не разбираюсь. Если кто-то знает, буду рад ликбезу:))
И таким образом, можно подключаться через специальные утилиты напрямую к контейнеру удаленно и спокойно им управлять прямо в UI.
Но, конечно, без костылей и танцев с бубнами не обойдется:)
❤1
Junior DevOps/SR engineer
#держувкурсе На работе надо было обновить api-версии для TLS сертификатов в k8s у аддона cert-manager c certmanager.k8s.io/v1alpha1 на cert-manager.io/v1 и чтобы понять, в каких репозиториях хранятся эти серты, просто сделал: kubectl get -A certificates.…
Теперь про сертификаты.
Для того, чтобы безопасно общаться в сети (прикольная статья от Касперского) - нужно иметь что-то, что будет шифровать, аутентифицировать пользователей и проверять целостность доставленных и полученных данных.
Для этого и был придуман протокол TLS. Чтобы вы могли им пользоваться, нужно что-то, что будет подтверждать вашу "личность" и шифровать данные - это и делают сертификаты.
У kubernetes есть дополнение cert-manager - этот аддон позволяет автоматизировать процесс получения и подписания сертификатов в кластере.
Так как kubernetes рабоатет как REST-api, то у него в описании его абстракций (манифестах) есть поле
Для того, чтобы безопасно общаться в сети (прикольная статья от Касперского) - нужно иметь что-то, что будет шифровать, аутентифицировать пользователей и проверять целостность доставленных и полученных данных.
Для этого и был придуман протокол TLS. Чтобы вы могли им пользоваться, нужно что-то, что будет подтверждать вашу "личность" и шифровать данные - это и делают сертификаты.
У kubernetes есть дополнение cert-manager - этот аддон позволяет автоматизировать процесс получения и подписания сертификатов в кластере.
Так как kubernetes рабоатет как REST-api, то у него в описании его абстракций (манифестах) есть поле
apiVersion, которое говорит кластеру, в какую версию смотреть. Но бывает так, что одна версия устаревает и появляется новая. Об этом пересланный пост:)❤1
#оффтоп
Если у вас есть вопросы по древнешумерскому и не очень - пожалуйста, пишите, буду рад помочь вам разобраться и самому подтянуть знания:)
Если у вас есть вопросы по древнешумерскому и не очень - пожалуйста, пишите, буду рад помочь вам разобраться и самому подтянуть знания:)
❤1
#оффтоп
В общем, сюда уже несколько дней ничего не выкладывал. Есть, что рассказать, но со временем сложно:(((
Может, у кого-то из вас есть какие-то интересные штуки?)
В общем, сюда уже несколько дней ничего не выкладывал. Есть, что рассказать, но со временем сложно:(((
Может, у кого-то из вас есть какие-то интересные штуки?)
❤1
#оффтоп
Сегодня в маршрутке девчушка лет 4-х спросила маму: «А если всем попросить Лёшу не бросать канал на первой неделе после создания, он сможет это сделать?» С мамой плакала половина маршрутки… Леша, как так?!!
Сегодня в маршрутке девчушка лет 4-х спросила маму: «А если всем попросить Лёшу не бросать канал на первой неделе после создания, он сможет это сделать?» С мамой плакала половина маршрутки… Леша, как так?!!
👍2❤1
