OpenShift v 3 III. OpenShift Origin 1.3

в 9:59, , рубрики: OpenShift v3, paas, Настройка Linux, Облачные вычисления

Введение

Как же говорилось, Redhat OpenShift Container Platform 3.3 базируется на Redhat Openshift origin. Текущая версия — 1.3. Так как это OpenSource, можно поcтавить его себе. От основной темы несколько отходим. Но:

  1. Это интересно.
  2. Нет ограничений на число проектов (кроме как мощностью железа).

Эта статья именно про установку PaaS платформы у себя. Подразумевается умение работать с Docker и хорошее знакомство с RHEL7.1/CentOS7.1/Fedora21, еще можно использовать RHEL Atomic Host 7.2.6 и выше. Вообще в оригинальной документации предлагается два пути. Для разработчика и для администратора кластера. Администратору предлагается несколько вариантов, в том числе и установки полноценного кластера. Запаситесь железом и ресурсами. Да, еще конечно знание Ansible не помешает.
Но пока рассмотрим самый простенький вариант. Установка контейнера origin.

Итак, у вас одна из вышеперечисленных систем (в примере CentOS 7.2) Docker установлен и запущен. Клиент ос вы тоже установили (как это сделать — по ссылке). Минимальные требования к ресурсам выполнены (из документации к origin).

$ oc cluster up
...
Ensure that the Docker daemon is running with the following argument:
        --insecure-registry "172.30.0.0/16"

И не запускается. Docker нужно сконфигурировать. Вот оригинальная документация. С некоторыми исправлениями:

$ sudo mkdir /etc/systemd/system/docker.service.d
$ sudo vi /etc/systemd/system/docker.service.d/docker.conf

Помещаем туда:

[Service]
ExecStart=
ExecStart=/usr/bin/docker-current daemon --exec-opt native.cgroupdriver=systemd --selinux-enabled --log-driver=journald --insecure-registry 172.30.0.0/16

Данные в файле переопределят параметры командной строки запуска docker'a из docker.service:
Фиксируем изменения и перезапускаем docker

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

Теперь

$ sudo oc cluster up

что-то такое

-- Checking OpenShift client ... OK
-- Checking Docker client ... OK
-- Checking Docker version ... OK
-- Checking for existing OpenShift container ... OK
-- Checking for openshift/origin:v1.3.0 image ... OK
-- Checking Docker daemon configuration ... OK
-- Checking for available ports ...
   WARNING: Binding DNS on port 8053 instead of 53, which may be not be resolvable from all clients.
-- Checking type of volume mount ...
   Using nsenter mounter for OpenShift volumes
-- Creating host directories ... OK
-- Finding server IP ...
   Using 192.168.222.129 as the server IP
-- Starting OpenShift container ...
   Creating initial OpenShift configuration
   Starting OpenShift using container 'origin'
   Waiting for API server to start listening
   OpenShift server started
-- Installing registry ... OK
-- Installing router ... OK
-- Importing image streams ... OK
-- Importing templates ... OK
-- Login to server ... OK
-- Creating initial project "myproject" ... OK
-- Server Information ...
   OpenShift server started.
   The server is accessible via web console at:
       https://192.168.222.129:8443

   You are logged in as:
       User:     developer
       Password: developer

   To login as administrator:
       oc login -u system:admin

Это интересно:


$ sudo docker ps

сколько всего запустилось

CONTAINER ID        IMAGE                                     COMMAND                  CREATED             STATUS              PORTS               NAMES
b68e93c1eacd        openshift/origin-docker-registry:v1.3.0   "/bin/sh -c 'DOCKER_R"   50 minutes ago      Up 50 minutes                           k8s_registry.a76d04a6_docker-registry-1-bad99_default_ca436583-9372-11e6-beb5-000c294bdab8_2d4bceba
8fa5d4437791        openshift/origin-haproxy-router:v1.3.0    "/usr/bin/openshift-r"   50 minutes ago      Up 50 minutes                           k8s_router.b921618d_router-1-94nq4_default_ca476a18-9372-11e6-beb5-000c294bdab8_9cdeb6a7
d7a68e36e987        openshift/origin-pod:v1.3.0               "/pod"                   50 minutes ago      Up 50 minutes                           k8s_POD.4a82dc9f_router-1-94nq4_default_ca476a18-9372-11e6-beb5-000c294bdab8_63ccb647
946d43c4d595        openshift/origin-pod:v1.3.0               "/pod"                   50 minutes ago      Up 50 minutes                           k8s_POD.9fa2fe82_docker-registry-1-bad99_default_ca436583-9372-11e6-beb5-000c294bdab8_f6f9f4a4
158ce37d3e59        openshift/origin:v1.3.0                   "/usr/bin/openshift s"   50 minutes ago      Up 50 minutes                           origin

Важное замечание. Docker при останове контейнера его не уничтожает. Его можно запустить. А вот команда

$sudo oc cluster down 

уничтожает, действуя как

$ sudo docker stop container_name && docker rm container_name

То есть в полночь карета превратится в тыкву, кучер в крысу и так далее.

Web консоль доступна:

https://IP_addr:8443

CLI:

$ oc login https://IP_addr:8443

пары пароль логин:

admin
admin

developer
developer

Далее все по аналогии.

Из интересного

$ sudo docker exec -it origin /bin/bash

Попадаем во внутрь контейнера, можно посмотреть, что да как. Кстати, это CentOS 7.2.

Заключение

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

Литература

  1. OpenShift Origin Latest Docs. Проект на гитхабе.
  2. RHEL Atomic Host.
  3. Project Atomic.
  4. Kubernetes.
  5. Docker.

Автор: zirf

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js