Как установить и настроить PaaS-сервер OpenShift Origin в Ubuntu 18.04
Это руководство существует для этих версий ОС
- Ubuntu 20.04 (Focal Fossa)
- Ubuntu 18.04 (Bionic Beaver)
На этой странице
- Требования
- Начало работы
- Установите Docker CE
- Установить OpenShift
- Запустить кластер OpenShift
- Создание тестового проекта в OpenShift
- Доступ к веб-консоли OpenShift
OpenShift — это бесплатная платформа как услуга с открытым исходным кодом, разработанная Red Hat. OpenShift используется для разработки, размещения и масштабирования приложений в облачной среде. OpenShift поддерживает множество языков, таких как Java EE6, Ruby, PHP, Python, Perl, MongoDB, MySQL и PostgreSQL. OpenShift — это ведущая облачная и корпоративная платформа приложений Kubernetes, которой доверяют более 1000 компаний. Openshift позволяет создавать, изменять и развертывать приложения в соответствии с вашими требованиями.
В этом руководстве мы узнаем, как установить OpenShift Origin с одним узлом на сервер Ubuntu 18.04 LTS.
Требования
- Сервер под управлением Ubuntu 18.04 с оперативной памятью не менее 2 ГБ.
- Пароль root настроен на сервере.
Начиная
Перед запуском обновите свою систему до последней стабильной версии. Вы можете сделать это с помощью следующей команды:
apt-get update -y
apt-get upgrade -y
После обновления перезапустите сервер, чтобы применить все изменения конфигурации.
Установите Докер СЕ
OpenShift работает в контейнере Docker. Итак, вам нужно будет установить Docker CE на свой сервер. По умолчанию последняя версия Docker CE недоступна в стандартном репозитории Ubuntu 18.04. Итак, вам нужно будет добавить репозиторий Docker CE в вашу систему.
Чтобы установить Docker CE, загрузите и добавьте ключ Docker GPG с помощью следующей команды:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
После добавления добавьте репозиторий Docker CE с помощью следующей команды:
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Затем обновите и установите Docker CE с помощью следующей команды:
apt-get update -y
apt-get install docker-ce -y
После установки проверьте состояние Docker CE с помощью следующей команды:
systemctl status docker
Вы должны увидеть следующий вывод:
? docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2019-08-07 08:06:57 UTC; 33s ago Docs: https://docs.docker.com Main PID: 19052 (dockerd) Tasks: 8 CGroup: /system.slice/docker.service ??19052 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.372084572Z" level=warning msg="Your kernel does not support swap memory limit" Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.372483783Z" level=warning msg="Your kernel does not support cgroup rt period" Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.372711298Z" level=warning msg="Your kernel does not support cgroup rt runtime" Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.373275104Z" level=info msg="Loading containers: start." Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.612047102Z" level=info msg="Default bridge (docker0) is assigned with an IP ad Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.712918131Z" level=info msg="Loading containers: done." Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.938574106Z" level=info msg="Docker daemon" commit=74b1e89 graphdriver(s)=overl Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.939341612Z" level=info msg="Daemon has completed initialization" Aug 07 08:06:57 hitesh systemd[1]: Started Docker Application Container Engine. Aug 07 08:06:57 hitesh dockerd[19052]: time="2019-08-07T08:06:57.989385865Z" level=info msg="API listen on /var/run/docker.sock"
Как только вы это сделаете, вы можете перейти к следующему шагу.
Установить OpenShift
Во-первых, вам нужно будет загрузить последнюю стабильную версию OpenShift из репозитория Git. Вы можете загрузить последнюю версию OpenShift из репозитория Git с помощью следующей команды:
cd /opt
wget https://github.com/openshift/origin/releases/download/v3.9.0/openshift-origin-client-tools-v3.9.0-191fece-linux-64bit.tar.gz
После загрузки извлеките загруженный файл с помощью следующей команды:
tar -zvxf openshift-origin-client-tools-v3.9.0-191fece-linux-64bit.tar.gz
Затем измените каталог на извлеченный каталог и скопируйте двоичный файл oc в каталог /usr/local/bin с помощью следующей команды:
cd openshift-origin-client-tools-v3.9.0-191fece-linux-64bit
cp oc /usr/local/bin/
Теперь вы можете проверить версию oc с помощью следующей команды:
oc version
Вы должны увидеть следующий вывод:
oc v3.9.0+191fece kubernetes v1.9.1+a0ce1bc657 features: Basic-Auth GSSAPI Kerberos SPNEGO
Далее вам нужно будет добавить незащищенный реестр в демон Docker. Вы можете сделать это с помощью следующей команды:
nano /etc/docker/daemon.json
Добавьте следующие строки:
{ "insecure-registries" : [ "172.30.0.0/16" ] }
Сохраните и закройте файл, когда закончите. Затем перезапустите службу Docker, чтобы применить изменения конфигурации:
systemctl restart docker
Как только вы это сделаете, вы можете перейти к следующему шагу.
Запустить кластер OpenShift
Теперь запустите кластер OpenShift, указав свой IP-адрес или имя хоста, как показано ниже:
oc cluster up --public-hostname=38.143.69.14
После успешного запуска сервера вы должны увидеть следующий вывод:
WARNING: Binding DNS on port 8053 instead of 53, which may not be resolvable from all clients. Using Docker shared volumes for OpenShift volumes Using public hostname IP 38.143.69.14 as the host IP Using 38.143.69.14 as the server IP Starting OpenShift using openshift/origin:v3.9.0 ... OpenShift server started. The server is accessible via web console at: https://38.143.69.14:8443 You are logged in as: User: developer Password:To login as administrator: oc login -u system:admin
Примечание. Замените IP-адрес вашего сервера на 38.143.69.14.
Теперь войдите в свой кластер с помощью следующей команды:
oc login -u system:admin
Вы должны увидеть следующий вывод:
Logged into "https://38.143.69.14:8443" as "system:admin" using existing credentials. You have access to the following projects and can switch between them with 'oc project': default kube-public kube-system * myproject openshift openshift-infra openshift-node openshift-web-console Using project "myproject".
Теперь вы можете изменить проект по умолчанию с помощью следующей команды:
oc project default
Вы должны увидеть следующий вывод:
Now using project "default" on server "https://38.143.69.14:8443".
Теперь вы можете проверить статус проекта с помощью следующей команды:
oc status
Вы должны увидеть следующий вывод:
In project default on server https://38.143.69.14:8443 svc/docker-registry - 172.30.1.1:5000 dc/docker-registry deploys docker.io/openshift/origin-docker-registry:v3.9.0 deployment #1 deployed 3 minutes ago - 1 pod svc/kubernetes - 172.30.0.1 ports 443->8443, 53->8053, 53->8053 svc/router - 172.30.106.228 ports 80, 443, 1936 dc/router deploys docker.io/openshift/origin-haproxy-router:v3.9.0 deployment #1 deployed 3 minutes ago - 1 pod View details with 'oc describe/ ' or list everything with 'oc get all'.
Создайте тестовый проект в OpenShift
Теперь OpenShift установлен и работает. Затем войдите в OpenShift под пользователем разработчика:
oc login
Укажите имя пользователя и пароль в качестве разработчика/разработчика и нажмите Enter. Вы должны увидеть следующий вывод:
Authentication required for https://38.143.69.14:8443 (openshift) Username: developer Password: Login successful. You have one project on this server: "myproject" Using project "myproject".
Теперь создайте новый тестовый проект с помощью следующей команды:
oc new-project dev --display-name="test - Dev" --description="Test Project"
Вы должны увидеть следующий вывод:
Now using project "dev" on server "https://38.143.69.14:8443". You can add applications to this project with the 'new-app' command. For example, try: oc new-app centos/ruby-22-centos7~https://github.com/openshift/ruby-ex.git to build a new example application in Ruby.
Затем создайте новое приложение Ruby для этого проекта с помощью следующей команды:
oc new-app centos/ruby-22-centos7~https://github.com/openshift/ruby-ex.git
Теперь проверьте состояние текущего проекта с помощью следующей команды:
oc status
Вы должны увидеть следующий вывод:
In project test - Dev (dev) on server https://38.143.69.14:8443 svc/ruby-ex - 172.30.16.207:8080 dc/ruby-ex deploys istag/ruby-ex:latest <- bc="" ruby-ex="" source="" builds="" https:="" github="" com="" openshift="" git="" on="" istag="" ruby-22-centos7:latest="" build="" 1="" running="" for="" 54="" seconds="" -="" c00ecd7:="" merge="" pull="" request="" 25="" from="" pvalena="" master="" honza="" horak="" hhorak="" redhat="">) deployment #1 waiting on image or update
Как только вы это сделаете, вы можете перейти к следующему шагу.
Доступ к веб-консоли OpenShift
Теперь откройте веб-браузер и введите URL-адрес https://your-server-ip:8443. Вы будете перенаправлены на следующую страницу:
Укажите имя пользователя и пароль разработчика. Затем нажмите на кнопку Войти. Вы должны увидеть панель инструментов OpenShift по умолчанию на следующей странице:
Теперь нажмите «Мой проект» справа. Вы должны увидеть следующую страницу:
Теперь нажмите на тест - Dev. Вы должны увидеть развернутое приложение Ruby на следующей странице:
Поздравляем! вы успешно установили и настроили OpenShift на сервере Ubuntu 18.04. Вы можете создать новый проект и развернуть собственное приложение с помощью OpenShift. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы. Эта статья не рекомендуется для использования в производственной среде. Для получения дополнительной информации вы можете обратиться к официальной документации на OpenShift.