OpenShift v 3 III. OpenShift Origin 1.3

    Введение


    Как же говорилось, 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.

    Similar posts

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 3

      0
      А про бесплатные сервера что-нибудь слышно?
      вторую версию можно было бесплатно использовать
        +1

        Тут про OpenShift Origin, он как раз бесплатный. Online v3 preview и очень туманен. Работает через пень колоду. То 503 Service Unavaliable был несколько дней, причем никакой информации об апдейтах, сейчас webhook'и для github не работают, 401 Not autorized. Непрерывный выпуск.Политика по сравнению с v2 не поменялась, если посмотреть в "pricing".

          0
          Ну не, у себя не интересно. Я на второй версии целые распределенные кластера бесплатно собирал :)

      Only users with full accounts can post comments. Log in, please.