вторник, 5 марта 2019 г.

AMD 2990WX ASUS ROG STRIX X399-E GAMING Raid Ubuntu 16.04.5 працює (AOSP compile time 4 minutes)

Налаштування BIOS

1) Обираємо стабільний XMP профіль для DDR4
2) Переключаємо режим SATA з AHCI на RAID ("F10"-> Reboot)
3) конфігуруємо RAID controller в новому пункті в BIOS

Компіляція драйвера

Компілюємо драйвер від AMD X370 під то ядро, що є а USB ISO (uname -a)
https://www.amd.com/en/support/chipsets/amd-socket-am4/x370
Якщо ядро не 4.4, а нове, то потрібно використати патч звідси https://raw.githubusercontent.com/martinkarlweber/rcraid-patches/master/rcraid.patch  
Копіруємо на другу USB Flash драйвера
Стартуємо з USB Flash, під час detect мережевої плати, перемикаємося в іншу консоль
та робимо insmod rcraid 
Інсталятор зараз побачить Raid 
Встановлюємо як звичайно


Після інсталяції

Після встановлення знову стартуємо з USB flash, перемикаємося, insmod rcraid
Бачимо Raid 
копіруємо на Raid драйвера

  • mount -t proc proc proc/
  • mount -t sysfs sys sys/
  • mount -o bind /dev dev/
  • mount raid disk to folder /mnt/ubuntu
  • chroot /mnt/ubuntu /bin/bash
Робимо chroot
компілюємо драйвер


Оновлюємо initramfs

 update-initramfs -u
Перевіряємо чи все добре
lsinitramfs /boot/initrd.img-<image number>-generic | grep rcraid
Перевантажуємо

AOSP за 4 хвилини пересборка


вторник, 28 августа 2018 г.

Прочитане

Прочитав "Кофе с привкусом пепла"



Це спогади людини, що була в АТО.
Деякі технічні рішення заінтересували, так що підзвонив до авторів, та перепитався

Цікавий емоційний стан людини

Брав тут за гроші електронну копію 

Прочитане неофіціальна біографія грошей

Прочитане
Неофіціальну біографію денег

Брати можно тут

Доволі цікаві факти і ставлення до грошей




среда, 18 июля 2018 г.

понизити (downgrade) kubernetes 1.11.1 назад до 1.11.0 з ceph

1. повертаємо debian пакети

apt-get install kubeadm=1.11.0-00 kubectl=1.11.0-00 kubelet=1.11.0-00
в мене змінений файл в systemd
10-kubeadm.conf\
тому погоджуємося на заміну
там відрізняється формат

2. kubeadm config images pull --kubernetes-version=v1.11.0


3. Робимо файл, пусть буде config.yaml
    apiVersion: kubeadm.k8s.io/v1alpha1
    kind: MasterConfiguration
    api:
      advertiseAddress: 10.1.0.151
    networking:
      podSubnet: 10.244.0.0/16
    kubernetesVersion: 1.11.0
 
4. kubeadm init --config=config.yaml --ignore-preflight-errors=all
5. додаємо в /etc/default/kubelet
KUBELET_EXTRA_ARGS=--max-pods=240
6. Для перестраховки systemctl daemon-reload 
7. service kubelet restart
8. Перевіряємо kubectl get nodes -o json | jq '.items[] | {name: .metadata.name, cap: .status.capacity}' 

среда, 23 мая 2018 г.

kubernetes 1.10  обмеження 110 pods на node

Перевірити так
 kubectl get nodes -o json | jq '.items[] | {name: .metadata.name, cap: .status.capacity}'

kube@kub01pp:/etc/systemd/system/kubelet.service.d$ kubectl get nodes -o json | jq '.items[] | {name: .metadata.name, cap: .status.capacity}'
Щоб було як у у прикладі 240, а не 110
{
  "name": "kub01pp",
  "cap": {
    "cpu": "16",
    "ephemeral-storage": "38703652Ki",
    "hugepages-1Gi": "0",
    "hugepages-2Mi": "0",
    "memory": "65963632Ki",
    "pods": "240"
  }
}
{
  "name": "kub02pp",
  "cap": {
    "cpu": "16",
    "ephemeral-storage": "38703652Ki",
    "hugepages-1Gi": "0",
    "hugepages-2Mi": "0",
    "memory": "65963572Ki",
    "pods": "240"
  }
}
{
  "name": "kub03pp",
  "cap": {
    "cpu": "16",
    "ephemeral-storage": "0",
    "hugepages-1Gi": "0",
    "hugepages-2Mi": "0",
    "memory": "65963632Ki",
    "pods": "240"
  }
}

cd /etc/systemd/system/kubelet.service.d/
у цьому файлі додати Environment="KUBELET_EXTRA_ARGS=--max-pods=240" 10-kubeadm.conf
потім systemctl daemon-reload
service kubelet restart

Оновлення kubernetes з custom controller (with CEPH RBD)

оновлення kubernetes
1) apt-get update&&apt-get upgrade
2) оновлюємо controller
в файлі /home/kube/docker/Dockerfile вписуємо потрібну версію
3)  робимо імідж
docker build -t "my-kube-controller-manager:v1.10.3" docker/
4) перевіряємо
docker images | grep my-kube-controller-manager
5) перевіряємо image чи в ньому є rbd binary
docker run my-kube-controller-manager:v1.10.3 whereis rbd
6) в файлі  /etc/kubernetes/manifests/kube-controller-manager.yaml
image: my-kube-controller-manager:v1.10.3 (замінюємо на наше ім'я та
перевіряємо imagePullPolicy: IfNotPresent )

7) під користувачем kube
kubectl -n kube-system describe pods | grep kube-controller
8)  потім звичайно
kubeadm upgrade plan
а потім
kubeadm upgrade apply <версія> 
9) перевіряємо
docker images | grep my-kube-controller-manager 
 якщо потрібно пункт 6 знову

четверг, 18 января 2018 г.

Aliyun alicloud oss (аналог s3) для простого хранения папок

Вместо pip install aswcli --upgrade
здесь нужно
Политика взять ossutil 
Например здесь 

Создать пользователя в ram.console.alicloud.com с ключами
Создать bucket (бакет/корзина)

Создать политику с желаемыми типами действий (во многих примерах почему-то нет  PutObject)

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "oss:ListObjects",
        "oss:GetObject",
        "oss:PutObject"
      ],
      "Resource": [
        "acs:oss:*:*:имя вашего бакета",
        "acs:oss:*:*:имя вашего бакета/*"
      ]
    }
  ]
}
Применить политику к пользователю

протестировать
1)./ossutl ls oss://имя вашего бакета
2) ./ossutil cp ваш_файл.txt oss://имя вашего бакета
использовать в скриптах :)