Giter VIP home page Giter VIP logo

migrate-kolla-to-ceph-ansible's Introduction

Convert from Kolla Ansible to Ceph Ansible

How to run

These instructions assume that your ceph-ansible folder is already set up and you followed ceph-ansible docs before. Hence we start with cd command. Make sure you have have gone through checklist before you run the playbooks.

 # cd ceph-ansible
 # wget https://github.com/openstack/kolla-ansible/raw/train-em/ansible/library/kolla_docker.py -P library
 # wget https://raw.githubusercontent.com/canozyurt/migrate-kolla-to-ceph-ansible/master/migrate.yml
 # wget https://raw.githubusercontent.com/canozyurt/migrate-kolla-to-ceph-ansible/master/migrate-osds.yml
 # ansible-playbook migrate.yml
 # ansible-playbook migrate-osds.yml

OR

 # docker build -t migrate-ceph .
 # docker run -it --rm --network host -e ANSIBLE_HOST_KEY_CHECKING=False \
 #     -v $(PWD)/inventory:/app/ceph-ansible/inventory \
 #     -v $(PWD)/group_vars:/app/ceph-ansible/group_vars \
 #     -v $(HOME)/.ssh:/root/.ssh migrate-ceph
 # ansible-playbook -i inventory migrate.yml
 # ansible-playbook -i inventory migrate-osds.yml

migrate.yml migrates mon,mgr,mds,nfs,rgw services respectively. migrate-osds.yml migrates osd services.

Checklist

  • Make sure that current ceph version is Nautilus and you are using stable-4.0 branch for ceph-ansible.
  • Make sure that your ceph-ansible clone is not suffering from this issue and nfs role works fine.
  • Inventory and all.yml is configured and ceph-ansible can deploy a healthy cluster with correct NIC bindings and desired ceph.conf.
  • containerized_deployment in all.yml is set to true.
  • generated_fsid in all.yml is set to false
  • fsid in all.yml is filled with your current ceph fsid deployed with kolla.
  • Docker package names are set to match with kolla settings.
  • ntp_service_enabled is disabled (or enabled if you don't have one already)
  • RGW ports may differ in both tools. If so, set rgw ports properly.
  • RGW Keystone integration is present in rgws.yml

For example configuration, you can refer to all.yml, rgws.yml and inventory

Test Environment

This is an automated dev environment for Ceph deployment tool conversion. It deploys Openstack Train with Ceph on Vagrant, and tries to takeover deployed Ceph with ceph-ansible. Tested on Ubuntu 18.04. Vagrant deploys generic/ubuntu1804 boxes.

Warning

Don't follow these instruction on production. This is meant to be a PoC, run on an ephemeral VM, to share experience. Don't let virtualenv fool you: It's there to clean up easily, not to protect your environment.

Installation

Deploying Openstack

 # git clone https://github.com/canozyurt/migrate-kolla-to-ceph-ansible --recursive
 # sudo apt update
 # sudo apt install make -y
 # cd ./migrate-kolla-to-ceph-ansible
 # make install-dependencies
 # vagrant up
 # make

Convert to ceph-ansible

 # make migrate
 # make migrate-osds

Above commands run migrate.yml and migrate-osds.yml playbooks respectively. 185.199.110.133

migrate-kolla-to-ceph-ansible's People

Watchers

 avatar

Forkers

dincercelik

migrate-kolla-to-ceph-ansible's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.