Перейти к основному содержимому

Релиз v1.5.4

Требуемые версии:

ПродуктВерсия
infra1.5.3
monq6.4.1+

В обновлении:

Будет произведено обновление clickhouse-server.

ПродуктНовая версия
infra1.5.4

Уровень простоя - простой на время обновления clickhouse-server.

Обновление Clickhouse-server

Выполнить предрелизную подготовку

Проверить соответствие текущей версии инфраструктуры:

kubectl get cm -n infra infra -o=jsonpath={.data.version}

K8S (deployment, для обновления инсталляций из образа VM)

  1. Выполнить резервное копирование clickhouse-server:

    mkdir -p /backup/clickhouse-server
    rsync -avH /storage/clickhouse-server/* /backup/clickhouse-server/
  2. Получить адрес локального docker registry:

    registryUrl=$(kubectl get deploy -n infra arangodb -o jsonpath='{.spec.template.spec.containers[0].image}' | sed -nE 's/(.*)\/(.*)/\1/p')
  3. Скачать образы и добавить их в локальный docker registry (необходимо наличие доступа в сеть Интернет):

    docker pull yandex/clickhouse-server:20.8.19
    docker tag yandex/clickhouse-server:20.8.19 ${registryUrl}/clickhouse-server:20.8.19
    docker push ${registryUrl}/clickhouse-server:20.8.19
    docker rmi yandex/clickhouse-server:20.8.19

    В случае отсутствия доступа в сеть Интернет необходимо выполнить следующие действия:

    На ПК с доступом в сеть Интернет скачать образы и сохранить в файл:

    docker pull yandex/clickhouse-server:20.8.19
    docker save -o clickhouse-server.img yandex/clickhouse-server:20.8.19

    Передать файл clickhouse-server.img на сервер monq, выполнить импорт и добавить образы в локальный registry:

    docker load -i clickhouse-server.img
    docker tag yandex/clickhouse-server:20.8.19 ${registryUrl}/clickhouse-server:20.8.19
    docker push ${registryUrl}/clickhouse-server:20.8.19
    docker rmi yandex/clickhouse-server:20.8.19
  4. Обновить clickhouse до версии 20.8.19:

    kubectl scale deploy -n infra clickhouse-server --replicas=0
    kubectl set image -n infra deployment/clickhouse-server clickhouse-server=${registryUrl}/clickhouse-server:20.8.19
    kubectl scale deploy -n infra clickhouse-server --replicas=1
  5. Выполнить проверку Monq:

    • проверить отображение и запись первичных событий;
  6. Зафиксировать версию инфраструктурного релиза:

cat <<EOF | kubectl apply -f -
apiVersion: v1
data:
version: 1.5.4
kind: ConfigMap
metadata:
name: infra
namespace: infra
EOF

Обновление Docker инсталляций (опционально)

  1. Выполнить резервное копирование clickhouse-server:

    CONTAINER_NAME="clickhouse-server"
    mkdir -p /backup/${CONTAINER_NAME}
    rsync -avH /storage/${CONTAINER_NAME}/* /backup/${CONTAINER_NAME}/
  2. Обновить clickhouse-server до версии 20.8.19:

    CONTAINER_NAME="clickhouse"
    VERSION="20.8.19"

    docker stop ${CONTAINER_NAME}
    docker rm ${CONTAINER_NAME}


    docker run -d --name ${CONTAINER_NAME} \
    -p 8123:8123 \
    -p 9000:9000 \
    --restart=unless-stopped \
    -h ${CONTAINER_NAME} \
    --ulimit nofile=262144:262144 \
    -v /storage/${CONTAINER_NAME}/etc/clickhouse-server:/etc/clickhouse-server \
    -v /storage/${CONTAINER_NAME}/clickhouse:/clickhouse \
    yandex/clickhouse-server:${VERSION}
  3. Выполнить проверку Monq:

    • проверить отображение и запись первичных событий;