воскресенье, 26 июня 2016 г.

Знакомство с OpenStack

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

Сервис TryStack позволяет использовать уже готовое окружение OpenStack без развертывания сложной инфраструктуры на локальных серверах.

Для регистрации на сервисе необходимо иметь аккаунт в Facebook и вступить в группу TryStack.
Ведется разработка OpenStackID для авторизации на сервисе с помощью OAuth2, однако регистрация возможна только через Facebook.

вторник, 21 июня 2016 г.

Сброс пароля IPMI Supermicro

Устанавливаем ipmitool:
# apt-get install ipmitool

Если во время установки в конце появляются ошибки:
ipmievd: using pidfile /var/run/ipmievd.pid0
Could not open device at /dev/ipmi0 or /dev/ipmi/0 or /dev/ipmidev/0: No such file or directory
Unable to open interface
invoke-rc.d: initscript ipmievd, action "start" failed.
Unable to start ipmievd during installation.  Trying to disable.
значит надо подключить модули ядра для работы IPMI:
# lsmod | grep ipmi
# modprobe ipmi_devintf
# modprobe ipmi_si
# lsmod | grep ipmi
ipmi_si                26764  0 
ipmi_devintf            4029  0 
ipmi_msghandler        22871  2 ipmi_si,ipmi_devintf
# vim /etc/modules
ipmi_devintf
ipmi_si

Рестартим сервис и меняем пароль:
# service ipmievd restart
# ipmitool -I open user set password 2 P@$$w0rd
в данном случае цифра 2 означает ID пользователя ADMIN.

суббота, 11 июня 2016 г.

Подключение IP-адресов в CentOS 7 для работы SSH-туннеля

Задача: на сервере с CentOS 7 нужно добавить дополнительные IP-адреса, для каждого пользователя, который соединяется к SSH-туннелю исходящий трафик должен идти со своего адреса.
Например для user1 адрес должен быть 192.168.0.1, а для user2 192.168.0.2.

пятница, 10 июня 2016 г.

Беспарольный push в репозиторий на GitHub

Для того, чтобы не вводить каждый раз пароль при пуше на GitHub можно добавить публичный SSH-ключ в настройках репозитория, вот тут:

Затем идем изменяем url для репозитория и делаем тестовый push:
$ cd amet13.github.io/
$ git remote set-url origin [email protected]:Amet13/amet13.github.io.git
$ git push -u origin master
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 600 bytes | 0 bytes/s, done.
Total 3 (delta 2), reused 0 (delta 0)
To [email protected]:Amet13/amet13.github.io.git
   5e47dcf..c062630  master -> master
Branch master set up to track remote branch master from origin.

среда, 8 июня 2016 г.

Замена дисков с сохранением информации и расширение ФС в software RAID1

На сервере в software RAID1 установлены 2 диска по 1Тб, задача состоит в том, чтобы заменить эти два диска на диски 2Тб с сохранением всей информации.
Оригинал заметки отсюда.

Исходные данные:
# cat /proc/mdstat 
Personalities : [raid1] 
md1 : active raid1 sda3[0] sdb3[1]
      967979584 blocks super 1.2 [2/2] [UU]
md0 : active raid1 sda1[0] sdb1[1]
      262080 blocks [2/2] [UU]

суббота, 4 июня 2016 г.

cURL/yum и https в CentOS: Illegal instruction

С недавнего времени curl не может работать с https:
# curl https://google.com
Illegal instruction
# echo $?
132
# curl -v https://mydomain.name
* About to connect() to mydomain.name port 443 (#0)
*   Trying 103.203.90.2... connected
* Connected to mydomain.name (103.203.90.2) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
Illegal instruction

У yum такая же проблема.

Баг описан тут: https://bugs.centos.org/view.php?id=10930
Там же есть и воркэраунды.

Пример:
# export NSS_DISABLE_HW_GCM=1
# curl -I https://google.com
HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Location: https://www.google.ru/?gfe_rd=cr&ei=Qd1SV6fINcWDZNuIjVA
Content-Length: 256
Date: Sat, 04 Jun 2016 13:53:05 GMT
Alternate-Protocol: 443:quic
Alt-Svc: quic=":443"; ma=2592000; v="34,33,32,31,30,29,28,27,26,25"