Kubernetes Foundations

Основы Kubernetes для DevOps/SRE/Developers - Kubernetes Foundations

 

Kubernetes одна из самых популярных технологий сейчас. Почти любому IT специалисту, будь то DevOps, разработчик или менеджер придется столкнуться с Kubernetes и в конечном итоге изучить эту технологию. Кому-то на экспертном уровне, кому-то на начальном, но в любом случае обойти ее почти не получится.

Kubernetes  не так сложен как кажется на первый взгляд, поняв базу, его дальнейшее изучение не составит большого труда.

Это курс начального уровня, который поможет разобраться с основами и станет отправной точкой в дальнейшем изучении Kubernetes.

Читать далее...
Запуск Certbot в Docker

Запуск Certbot в Docker

Согласно документации https://certbot.eff.org/docs/install.html#running-with-docker, использовние Docker не рекомендуется. В этом режиме installer plugins из контейнера не могут устанваливать и конфигурировать веб сервер. Т.е иногда могут возникнуть сложности с использованием пре и пост хуков.

Получение сертификата и выбор плагинов

Certbot поддерживает два типа плагинов для установки и получения сертификатов: authenticators and installers (https://certbot.eff.org/docs/using.html#getting-certificates-and-choosing-plugins).

Authenticators - это плагины используемые с certonly командой для получения сертификата. Эти плагины выполняют проверку того что вы являетесь владельцем домена для которого запрашиваете сертификат. Они не устанвливают сертификат (не выполняют какой-либо модификации в конфигурации веб сервера)!

Installers - это плагины используемые с командой install, т.е они могут модифицировать конфигурацию веб сервера. В офф документации certbot приведена таблица с плагинами и их функциями.

Читать далее...
Ansible и restricted sudo

Ansible и restricted sudo

Здесь я хотел бы поделиться мыслями по поводу использования ansible2.1 в среде с ограниченными sudo правами (ansible+limited sudo), a именно использование ansible пользователями у которых есть только ограниченный набор sudo команд. К таким пользователям можно отнести например, девелоперов и саппорот команды. Особенно яркое разделение ролей можно увидеть в крупных компаниях, где есть например админы с root правами (отвечают за инфраструктуру и provisioning серверов), где есть operations команды (отвечают за поддержку приложений, баз данных и т.д), девелоперы (отвечают за деплой и траблшутинг приложений). У этих “бесправных” пользователей есть определенный набор sudo команд, которых в принципе достаточно для выполнения своих задач. Но когда ферма приложения состоит из 50 серверов и хостится где-нибудь в AWS+Autoscaling, и есть необходимость отрестартить сервис, то ansible с его AWS инвентори сильно облегчит работу. Но как я уже упомянул есть проблема, а именно если пользователю разрешен только ограниченный набор sudo команд, то использование ansible не всегда будет возможным, т.к ansible отсылает на сервер Python код который нужно выполнить, а /usr/bin/python не добавлен в sudo. Можно попробовать использовать модуль raw, но и тут есть проблема, ansible попытается  выполнить команду через /bin/sh –c, а /bin/sh или /bin/bash также не добавлены в sudo.

Читать далее...
5. Apache Ant использование внешних библиотек log4j и JUnit

5. Apache Ant использование внешних библиотек log4j и JUnit

Посмотрим как можно использовать внешние библиотеки такие как Log4J и JUnit в связке с ant. Скачать библиотеку можно тут. Подключаемые внешние библиотеки будем хранить в директории ~/ant/lib. Скопируем библиотеку log4j-1.2.17.jar в ~/ant/lib.

roonyk@MacBookPro:~/ant/lib$pwd
/Users/roonyk/ant/lib
roonyk@MacBookPro:~/ant/lib$ls -l
total 960
-rw-r--r--@ 1 roonyk  staff  489883 May  6  2012 log4j-1.2.17.jar
roonyk@MacBookPro:~/ant/lib$

Также необходимо будет изменить java код и build.xml файл.

Изменим java код в файле HelloWorld.java с:

package testant;

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}
Читать далее...
4. Использование Apache Ant для сборки Java приложений

4. Использование Apache Ant для сборки Java приложений

Здесь я покажу пример использования Apache Ant для сборки Java приложения. Эта статья покажет только знакомство с Ant, более подробную информацию можно найти в документации. Проект будет располагаться в директории ~/ant. Исходники в ~/ant/src. Откомпилированные файлы в ~/ant/build разделенны в несколько директорий в зависимости от назначения: классы в ~/ant/build/classes, jar файлы в ~/ant/build/jar. Создадим необходимые директории сейчас, они нужны только для демонстрации запуска Java приложения из командной строки, ant сам в дальнейшем создаст или удалит все необходимые директории.

ant_6

Читать далее...
3. Установка Apache Ant на CentOS 7

3. Установка Apache Ant на CentOS 7

Процесс установки Apache Ant на CentOS 7 почти нечем не отличается от процесса установки на другие ОС. Как обычно, идем не сайт http://ant.apache.org/bindownload.cgi и скачиваем архив, или проделаем это все в консоли.

ant_10

Читать далее...
2. Установка Apache Ant на Ubuntu

2. Установка Apache Ant на Ubuntu

Установить Apache Ant на Ubuntu можно одной командой, система даже сама подсакжет какой.

roonyk@ubuntu:~$ ant -version
The program 'ant' is currently not installed. You can install it by typing:
sudo apt-get install ant
roonyk@ubuntu:~$ 

Но мы воспользуемся методом описанным в предыдущей статье http://fibed.net/Z/.

ant_5-1

Читать далее...
1. Установка Apache Ant на Mac OS X

1. Установка Apache Ant на Mac OS X

Как написано на сайте, Apache Ant - это платформонезависимая утилита для автоматизации процесса сборки Java (и не только) приложений. В этой статье я покажу как установить Apache Ant на MacOS X. Первое что необходимо сделать, это скачасть Ant. Сделать это можно посетив веб сайт http://ant.apache.org/bindownload.cgi и загрузить tar.gz архив:

ant_1

Читать далее...
29. 7-я программа в SAP. Использование ALV.

29. 7-я программа в SAP. Использование ALV.

На основе недавно созданных классов продолжим знакомство с ALV. Для работы с ALV  необходимо будет немного изменить класс вьюшки - вот она вся прелесть MVC. ALV - ABAP List Viewer. Скопируем класс ZCL_KRE_HW6_VIEW в класс ZCL_KRE_HW6_VIEW_ALV, транзакция SE80 правой кнопкой мыши ит.д, сохраняем в пакет и запрос. Первое что мы сделаем это добавим два новых атрибута как показано на рисунке:

image_435

Читать далее...
28. 6-я программа в SAP. ООП в ABAP. Паттерн MVC.

28. 6-я программа в SAP. ООП в ABAP. Паттерн MVC.

Создадим 6-ю программу, где рассмотрим как можно использовать ООП в ABAP. ООП будем рассматривать на основе шаблона проектирования MVC. Создадим программу ZKRE_HW6. Для этого скопируем 4-ю программу, транзакция SE80:

image_398

Читать далее...

Ежегодные архивы