Установка collectd в unix/linux

Установка Helm в Unix/Linux

Так как helm нужен для помощи с k8s, то нужно установить Kubernetes. Если еще не сделали, то вот полезные маны:

Я буду использовать minikube (но это не столь важно) для стоих локальных тестов. И так, давайте приступим к установке хелма и посмотрим как можно работать с ним

-=== СПОСОБ 1 ===-

Можно вытянуть мастер ветку с гита через wget/curl, например:

$ wget https://codeload.github.com/helm/helm/zip/master -O /usr/local/src/helm.zip && unzip /usr/local/src/helm.zip -d /usr/local/src

Или через git:

$ cd /usr/local/src && git clone https://github.com/helm/helm.git

Перейдем в папку:

$ cd helm

И выполняем билд:

$ make bootstrap build

Готово!

-=== СПОСОБ 2 ===-

Зайти на сайт и выкачать последний релиз-кандидат. Я люблю автоматизацию и по этому захотелось найти способ получить последние релизы прям из терминала, вот команда:

$ curl -s --list-only https://github.com/helm/helm/releases | grep -E "https://storage.googleapis.com/kubernetes-helm/helm-"| grep -E "MacOS|Linux"| cut -d">" -f2| cut -d"=" -f2| cut -d '"' -f2

Покажет примерно вот такое:

https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-darwin-amd64.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-linux-amd64.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-linux-arm.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-linux-arm64.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-linux-386.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-linux-ppc64le.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-linux-s390x.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-rc.4-darwin-amd64.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-rc.4-linux-amd64.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-rc.4-linux-arm.tar.gz
https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-rc.4-linux-arm64.tar.gz

.............

Находим необходимую ссылку и качаем

$ wget https://storage.googleapis.com/kubernetes-helm/helm-v2.11.0-darwin-amd64.tar.gz -O /usr/local/src/helm-v2.11.0-darwin-amd64.tar.gz

Получаем бинарник из архива:

$ tar xfvz /usr/local/src/helm-v2.11.0-darwin-amd64.tar.gz -C /usr/local/src

Перемещаем бинарник:

$ mv darwin-amd64/helm /usr/local/bin/helm && sudo chmod +x /usr/local/bin/helm

Да! Иногда я велосипедю))) Но разве это плохо? xD

Почитав доку с хелмом, нашел их решение по уставновке (ЛОЛка):

$ curl https://raw.githubusercontent.com/helm/helm/master/scripts/get | bash

Или:

$ curl https://raw.githubusercontent.com/helm/helm/master/scripts/get > get_helm.sh
$ chmod 700 get_helm.sh
$ ./get_helm.sh

Можно юзать все кому что удобно.

-=== СПОСОБ 3 ===-

Для Mac OS X имеется установщик через homebrew (Установка homebrew тут):

$ brew install kubernetes-helm kubernetes-cli

Может есть еще другие способы установить данное ПО себе на машину, но думаю этих хватит.

Установка speedtest-cli для проверки скорости интернета в Unix/Linux

Есть несколько способов установить speedtest-cli:

  • Первый способ —  предполагает использование пакета python-pip.
  • Второй способ — загрузить сценарий Python, сделать его исполняемым и запустить.
  • Третий способ — использовать пакетный менеджер.
  • Четвертый способ — скачать speedtest-cli используя Github.

Все команды я буду выполнять от суперпользователя, по этому — я залогинюсь под ним:

$ sudo su

Вводим пароль от пользователя root и получаем его права.

-=1=- Установка speedtest-cli используя pythin-pip

И так, для начала выполняем установку python-pip, если не знаете как это сделать — вот статья:

И, выполняем установку speedtest-cli пакета:

# pip install speedtest-cli

Для обновления speedtest-cli, используйте:

# pip install speedtest-cli --upgrade

-=2=- Установка speedtest-cli используя Python скрипт

Сначала загрузите скрипт python из github с помощью команды wget, распакуйте загруженный файл (master.zip):

$ cd /usr/local/src && wget https://github.com/sivel/speedtest-cli/archive/master.zip && unzip master.zip

После извлечения архива, перейдите в speedtest-cli-master папку и сделайте исполняемый файл:

$ cd speedtest-cli-master/
$ chmod 755 speedtest_cli.py

Затем переместите исполняемый файл в /usr/bin директорию:

$ sudo mv speedtest_cli.py /usr/bin/

Вот еще один вариант:

# cd /usr/local/src && wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
# chmod +x speedtest-cli

Или:

# cd /usr/local/src && curl -Lo speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
# chmod +x speedtest-cli

-=3=- Установка speedtest-cli используя пакетный менеджер.

Если вы используйте Debian/Ubuntu ОС, выполните:

# apt install speedtest-cli

Если вы используйте CentOS/Fedora/RHEL ОС, выполните:

# yum install speedtest-cli

Если вы используйте Mac OS X, выполните:

Для начала, устанавливаем HomeBrew:

И выполняем установку:

$ brew install speedtest_cli

-=4=- Установка speedtest-cli используя Github

Используем:

$ pip install git+https://github.com/sivel/speedtest-cli.git

Или

$ git clone https://github.com/sivel/speedtest-cli.git

И выполняем установку:

# python speedtest-cli/setup.py install

Или можно запустить следующую команду:

$ curl -s  https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -

Команда chgrp Linux

Стандарт прав файлов пришёл в Linux из Unix. У каждого файла есть владелец (user) и группа (group), помимо этого описываются права остальных пользователей (other). Права состоят из трёх пунктов: чтение (read), запись (write), выполнение (execute). Для изменения прав используется команда umask, но для изменения непосредственно владельца и группы используются команды chown и chgrp. Для просмотра текущих прав можно использовать команду ls.

Синтаксис и опции chgrp

Общий вид команды chgrp:

$ chgrp новая_группа имя_файла

Список распространённых параметров команды chgrp:

  • -h – работать непосредственно с самими символьными ссылками, а не с файлами, на которые они ссылаются;
  • —dereference – работать с файлами, а не самими символьными ссылками. Используется по умолчанию;
  • -R – рекурсивная обработка каталога со всем его содержимым;
  • -H – перейти по символической ссылке и изменить атрибуты файла/каталога. Сама ссылка остаётся без изменений. Используется вместе с параметром -R;
  • -L — перейти по символической ссылке и продолжить рекурсивную обработку. Сама ссылка остаётся без изменений. Используется вместе с параметром -R;
  • -P – при встрече с символьной ссылкой обрабатывать только её. Используется вместе с параметром -R, является значением по умолчанию;
  • —reference=имя_образца – использовать группу образца. Используется вместо новая_группа;
  • -c – при обработке выводить только изменения;
  • -v – выводить информацию о каждом обработанном файле.

Использование команды chgrp

Рассмотрим сразу несколько случаев использования, с реальным файлом и каталогом, а затем с символическими ссылками на них. Простейший пример использования команды chgrp без параметров. Следующая команда меняет группу на www-data для файла file в текущей папке:

А эта меняет группу на www-data для папки folder:

С реальными файлами и каталогами команда работает весьма предсказуемо, меняя их группу. Файлы в папке остаются неизменными. Если же обрабатывать символические ссылки, то их атрибуты останутся неизменными, а файлы получат новую группу. Такое поведение аналогично работе с параметром —dereference. Например, эти команды, применённые к символическим ссылкам, отработают как показано на снимке:

Теперь посмотрим на то, как будет работать параметр -h, меняющий атрибуты символической ссылки:

С параметром -h изменились только атрибуты ссылок, а не сами файлы. Теперь рассмотрим работу c параметром -R, предназначенным для рекурсивной обработки каталогов:

Новая группа была задана не только каталогу, но и всем файлам внутри

Обратите внимание на то, что поведение изменилось, теперь при обработке символической ссылки атрибуты выставляются для самой ссылки, а не файла

Чтобы увидеть разницу между параметрами -H и -L, рассмотрим ещё пару примеров. Напомним, что их надо использовать совместно с параметром -R:

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

С использованием параметра -L при переходе к папке по символической ссылке рекурсивная обработка не прекращается

Обращаем ваше внимание на то, что параметры -H и -L использовать небезопасно, они могут дойти до системных файлов

Использование xhost в Unix/Linux

Данная утилита имеет следующий синтаксис:

$ xhost  remote_host_name ...]

Опции:

  • -help — Служит командой для вывода помощи по командам и опциям.
  • +name — Добавляет «name» (название IP или хостнейма) в список, кто имеет право подключаться к X-серверу.
  • -name — Удаляет «name» (название IP или хостнейма) со списка тех, кто имеет право подключаться к X-серверу.
  • +  — Контроль доступа к X-серверу отключен; разрешение всем и отовсюду.
  • —  — Контроль доступа к X-серверу включен; разрешение только по списку.
  • <ничего>  — Если аргументов не указано то выводится информации о текущем состоянии разрешения подключений.

Выведем информацию о текущем состоянии разрешений пользователей или хостов на подключение:

$ xhost

Разрешить полный доступ к X-серверу (всем и отовюсду):

# xhost +

Запретить доступ к X-серверу (разрешение только по списку):

# xhost -

Разрешить запуск графических программ от имени root на локальной машине:

# xhost local:root

Разрешить запуск графических программ от имени root на локальной машине:

# xhost local:root

Или:

# xhost +si:localuser:root

Разрешить запуск графических программ с 192.168.13.113 на локальной машине:

# xhost + 192.168.13.113

Запретить запуск графических программ с 192.168.13.113 на локальной машине:

# xhost - 192.168.13.113

Можно указать вот так:

  • 192.168.13.113:0 Нулевой дисплей на компьютере Sky
  • 192.168.13.113:0.1 Первый экран нулевого дисплея данного компьютера
  • 192.168.13.113:3 Третий дисплей данного компьютера

Чаще всего имя дисплея — это или просто «:0.0», или «компьютер:0.0». Чтобы узнать какой дисплей используется в системе, выполните:

$ echo $DISPLAY

Чтобы установить DISPLAY переменную, выполните (bash):

$ DISPLAY=192.168.13.113:0.0; export DISPLAY

Чтобы установить DISPLAY переменную, выполните (bash):

$ setenv DISPLAY 192.168.13.113:0.0

xhost + — огромная дыра в безопасности, поскольку она дает каждому доступ к вашим ресурсам X-сервера (не только вашему дисплею, но также и вашу мышь и клавиатуру), поэтому каждый может читать или изменять то, что вы набираете/нажимаете. Плохая привычка использовать «xhost +». Даже когда вы используете «xhost + localhost», вы открываете доступ всем людям кто на localhost-е.  Тогда, как быть и что исользовать? Простейшим способом является ssh-туннелирование.

$ ssh -X oracle@localhost
Last login: Fri Max 2 11:33:55 2017 from localhost

$ if xterm -e true; then echo success; fi
success

Другой способ это — использовать cookie X:

$ xauth extract ~/my-x-cookie $DISPLAY<
$ setfacl -m u:oracle:r ~/my-x-cookie
$ su - oracle -c "DISPLAY=$DISPLAY bash"
Password:

$ if xterm -e true; then echo success; fi
Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified

xterm Xt error: Can't open display: :0.0

$ xauth merge ~lsc/my-x-cookie
xauth: creating new authority file ~oracle/.Xauthority

$ if xterm -e true; then echo success; fi
success

Можно создать алиас:

alias oracle='
xauth extract $HOME/my-x-cookie $DISPLAY;
setfacl -m u:oracle:r $HOME/my-x-cookie;
su - oracle -c "export DISPLAY=$DISPLAY;
xauth merge $HOME/my-x-cookie;
bash"'

Вот и все, статья «Утилита xhost в Unix/Linux» подошла к завершению.

Установка mtr в Unix/Linux

MTR — бесплатное приложение, которое сочетает в себе функциональность трассировки и пинг в качестве инструмента для диагностики единой сети. При этом, вы сможете проверить потери пакетов и низкой скорости соединения, чтобы помочь в устранении неполадок программного обеспечения.

Хочу рассказать в своей статье «Установка mtr в Unix/Linux» как можно установить и пользоваться утилитой MTR в Unix/Linux.

Установка MTR в Debian/Ubuntu/Mint:

$ apt-get install mtr

Установка MTR в CentOS/RedHat/Fedora:

$ yum install mtr

Установка MTR в Arch:

$ pacman -S mtr

Установка MTR на Mac OS

1. Можно скачать и установить пакет:

https://rudix.googlecode.com/files/mtr-0.82-0.pkg

Я этот метод не проверял.

2. Скачать и установить из исходного кода.

$ cd Downloads && wget ftp://ftp.bitwizard.nl/mtr/mtr-0.86.tar.gz
$ tar xvzf mtr-0.86.tar.gz
$ cd mtr-0.81
# export LIBS='-lm -ltermcap -lresolv'
# ./configure && make && sudo make install

После этого, я добавлю алиас команды, для более удобного использования. Для этого, я открою файл и добавлю строчку:

$ vim ~/.bash_profile


alias mtr=/usr/local/sbin/mtr

Скопируйте данные (полезно, если вы хотите подать жалобу, например на вашего провайдера).

Вы можете сделать скриншот экрана с помощью:

  • Command+Shift+3: Сделает скриншот экрана и сохранит его в виде файла на рабочем столе.
  • Command+Shift+4, затем выберите площадь: Сделает скриншот области и сохранит его в виде файла на рабочем столе.

Loss % — все потерянные пакеты между компьютером и серверами.

SNT — количество отправленных пакетов.

LAST — Задержка последнего отправляемого пакета .

Avrg —  Среднее время ожидания всех пакетов.

Best — Отображает лучший Round Trip Time для этого пакета на этом хосте (shortest RTT).

Disregard 100% — это сто процентная потеря если есть другие узлы, перечисленные после.

Wrst — Отображает  худший Round Trip Time для этого пакета на этом хосте (longest RTT).

Опции программы MTR

Показать сводку параметры аргументов в командной строке :

-h —help

Распечатать установленную версию:-v —version

Помещает mtr в режим отчета. В этом режиме, mtr обработает количество циклов, определенных опцией -c, затем отобразит статистику и завершит работу. Этот режим полезен для генерации статистики о качестве сети:

-r —report

Установить количество циклов, после которых mtr завершит работу:

-c COUNT —report-cycles COUNT

Размер посылаемых пакетов:

-p BYTES —psize BYTES

Вынуждает mtr использовать curses based terminal interface если доступно:

-t —curses

Используйте эту опцию, чтобы заставить МТР для отображения числовых число IP, а не пытаться разрешать имена хостов. Не использовать DNS. Отображать IP-адреса и не пытаться получить их хостнеймы:

-n —no-dns

Используйте эту опцию, чтобы заставить МТР использовать GTK +, основанный на оконном интерфейсе X11 (если имеется). GTK +, должно быть доступным в системе, когда ССО был построен для этого, чтобы работать. См веб-страницу GTK + на http://www.gimp.org/gtk/ для получения дополнительной информации о GTK +.

-g —gtk

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

-s —split

Использовать «сырой» формат вывода. То есть выводить неформатированные данные:

-l —raw

Указать адрес интерфейса, с которого будут отправляться пакеты:

-a IP.ADD.RE.SS —address IP.ADD.RE.SS

Интервал между отправляемыми запросами:

-i SECONDS —interval SECONDS

Использовать протокол UDP для отправки пакетов:

-u
Использовать только IPv4:

-4

Использовать только IPv6:

-6

Примеры использования.

Выполнить MTR для домена

MTR работает в двух режимах, графический режим (X11) и текстовом режиме на основе (Ncurses). По умолчанию, команда mtr работает в режиме X11.

$ mtr linux-notes.org

mtr linux-notes.org

Запуск в текстовом режиме -curses

Используйте опцию «-curses» чтобы работать с mtr в терминальном режиме.

$ mtr --curses linux-notes.org

Исключить Обратный DNS с помощью «-no-DNS»

MTR находит имя хоста каждого маршрутизатора / узла с помощью обратного просмотра DNS. Если вы хотите, чтобы избежать выполнение обратного поиска DNS, используйте «-no-DNS» вариант.

$ mtr --curses --no-DNS linux-notes.org

Использовать mtr в режиме отчета с помощью «-report»

$ mtr --no-DNS --report linux-notes.org

Установка mtr в Unix/Linux завершена.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: