kolla-ansible配備シングルノードOpenStack-Pike

9190 ワード

一、準備
最小インストールCentOS 7.5、インストール完了後、初期化
selinux、ファイアウォールポートにアクセスできない、ホスト名の問題は、インストールのよくあるエラーで、必ず注意深く確認してください.
 
kollaのインストールは、ターゲットマシンに2つのNICが必要です.
  • ens 33、設定されたIPは:192.168.41.13で、その後HorizonアクセスはこのIPアドレスを通じて行われます.
  • ens 37は、IPを割り当てず、neutronのbr-exバインドで使用され、仮想マシンはこのネットワークカードを通じて外部ネットワークにアクセスします.
  • ens 38はnatネットワークを選択し、主にインストール時に外網ダウンロードパッケージなどに接続する
  • に用いる.
     
    hostsバインド(/etc/hosts)
    192.168.41.13  kolla
     
    システムの外付けディスクに加えて、存在するハードディスク(HDD)を追加し、ボリュームを作成します.
    cinderストレージサービスを開始するには、まず新しいハードディスクを追加し、pv、vgpvcreate/dev/sdbvgcreate cinder-volumes/dev/sdb#vg名を cinder-volumes、ここでは主にkollaプロファイルのvg名と一致します
    vmインスタンスのみがブロックストレージボリュームにアクセスでき、LVMに異常が発生する可能性があることを設定します.
    vi/etc/lvm/lvm.conf デバイスの下を修正して、どれだけのハードディスクがあるかはどれだけのブロックを書いて、もしシステムディスクを使いたくないならば、a|sdaを書きません
    devices {
    ...

    filter = [ "a|sda|", "a|sdb|", "r|.*|"]
    lvmサービスsystemctl restart lvm 2-lvmetad.serviceを再起動
     
    国内pipyソースの構成
    mkdir ~/.pip
    cat << EOF > ~/.pip/pip.conf
    [global]index-url = https://pypi.tuna.tsinghua.edu.cn/simple/[install]trusted-host=pypi.tuna.tsinghua.edu.cn
    EOF
     
    インストールpip
    yum -y install epel-release
    yum -y install python-pip
    pip installに問題が発生した場合はコマンドを試してみてください
    pip install setuptools==33.1.1
     
    二、基礎パッケージの取り付け
     
    EPELのrepoソースyum-y install python-devel libffi-devel gcc openssl-devel git python-pip qemu-kvm qemu-imgを有効にする必要があります
    インストールdocker 1)RPMパッケージ2)インストールDocker 1.12.6、作成インストール1.12.6比較的安定yum localinstall-y docker-engine-1.12.6-1.el 7.centos.x 86_64.rpm docker-engine-selinux-1.12.6-1.el7.centos.noarch.rpm
    公式ドキュメントを参照してインストールすることもできます.
    https://docs.docker.com/engine/installation/linux/centos/yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install docker-ce # yum install docker-ce-1.12.6
     
    Docker共有マウントmkdir/etc/systemd/system/docker.service.dの構成 tee/etc/systemd/system/docker.service.d/kolla.conf <[Service] MountFlags=shared EOF
    プライベートなDockerウェアハウスへのアクセスの設定
    共通:https://hub.docker.com/u/kolla/を選択しますが、ダウンロードは遅いです.  vim/usr/lib/systemd/system/docker.service
    ExecStart=/usr/bin/dockerd--insecure-registry 192.168.41.13:4000サービスsystemctl daemon-reload&&systemctl enable docker&&systemctl restart dockerを再起動
     
    kolla公式提供のミラーwgetをダウンロード     元公式のダウンロードアドレスhttp://tarballs.openstack.org/kolla/images/centos-source-registry-pike.tar.gzに移動しましたhttps://hub.docker.com/u/kolla/,4 G程度
    mkdir -p /data/registrytar -zxvf  centos-source-registry-pike-5.0.1.tar.gz-C/data/registryこのようにkollaのdockerミラーファイルをRegisitryサーバに配置します.
     
    Registryサーバのデフォルトdockerのregistryは5000ポートを使用し、OpenStackではポート競合があるため4000 docker run-d-v/data/registry:/var/lib/registryに変更 -p 4000:5000 --restart=always --name registry registry
    テストが成功したかどうか:
    # curl -k localhost:4000/v2/_catalog
    # curl -k localhost:4000/v2/lokolla/centos-source-fluentd/tags/list
    {"name":"lokolla/centos-source-fluentd","tags":["5.0.1"]}


    AnsibleKollaプロジェクトのMitakaバージョンはansibleバージョンが2.0未満であることを要求し、Newtonバージョン以降は2.x以上のバージョンしかサポートされていない.yum install -y ansible
    三、kollaの取り付け
     
    アップグレードpip:pip install-U pip-i https://pypi.tuna.tsinghua.edu.cn/simpleインストールdockerモジュール:pip install docker
     
    インストールkolla-ansible cd/homegit clone -b stable/pike https://github.com/openstack/kolla-ansible.gitcd kolla-ansiblepip install . -i https://pypi.tuna.tsinghua.edu.cn/simple
    関連ファイルcp-r/usr/share/kolla-ansible/etc_のコピーexamples/kolla/etc/kolla/ cp/usr/share/kolla-ansible/ansible/inventory/*/home/
    仮想マシンで仮想マシンを再起動する場合はvirt_type=qemu、デフォルトはkvmmkdir-p/etc/kolla/config/nova cat << EOF >/etc/kolla/config/nova/nova-compute.conf [libvirt] virt_type=qemu cpu_mode = none EOF
    パスワードファイルを生成kolla-genpwd vim/etc/kolla/passwords.ymlkeystone_を編集admin_password:admin 123これはDashboardにログインし、adminが使用するパスワードで、必要に応じて変更します.
    vim/etc/kolla/globals.ymlの編集  ファイル
    kolla_internal_vip_address:“192.168.41.13”//外部アクセスアドレス、HA環境でない場合、制御ノードIP docker_registry: "192.168.41.13:4000"   //ミラーライブラリは、デプロイノードのミラーライブラリを使用します.ここではdockerサービス起動スクリプト構成のIPと同様に、ホスト名を使用する場合は、ホスト名docker_も使用します.namespace: "lokolla"kolla_install_type: "source"openstack_release: "5.0.1" network_interface:“ens 33”//ネットワークインタフェース、デフォルトはこのインタフェースで、ここでens 33をAPIネットワークとします api_interface:「{network_interface}」//ens 33 neutron_external_interface:「ens 37」//ens 37を外部ネットワークとして
    enable_cinder:「yes」//cinderの有効化 enable_cinder_backend_iscsi: "yes"enable_cinder_backend_lvm:“yes”//cinder後端用lvm
    enable_haproxy:「no」//haproxyenableを有効にしない_heat: "no"
     
    #デフォルトで外部ネットワークを作成する物理ネットワークはphysnet 1
    四、Openstackのインストール
     
    インストールOpenStackチェック:kolla-ansible prechecks -i/home/all-in-one導入:kolla-ansible deploy-i/home/all-in-one
    kolla-ansible post-deployの導入を検証/etc/kolla/admin-openrc.shファイルを作成
    . /etc/kolla/admin-openrc.sh
    OpenStack clientエンドpip install--ignore-installed python-openstackclientのインストール
     
    導入経験
    (1)配置中に失敗したり、配置情報を変更したりして再配置が必要な場合は、次のコマンドを実行して、配置されたDockerコンテナであるOpenStackサービスをクリアします.
    kolla-ansible destroy -i /home/multinode --yes-i-really-really-mean-it

    次に、umountは、/dev/sdb 1などのCeph OSDにマウントされているディレクトリを取り外します.
    umount /dev/sdb1

    /var/lib/cephディレクトリのOSDファイルを削除します.
    rm -rf /var/lib/ceph/osd/*

    /dev/sdbなどのOSDディスクのパーティションを削除します.
    parted /dev/sdb rm 1 rm 2

    /dev/sdbなどのOSDディスクを再パーティション化します.
    parted /dev/sdb -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_1 1 -1

    最後に、配置コマンドを実行します.
    (2)その他にも、必要に応じて使用できる小道具があります.
  • kolla-ansible prechecks:導入コマンドを実行する前に、環境が正しいかどうかを確認します.
  • tools/cleanup-containers:導入されたコンテナをシステムから削除できます.
  • tools/cleanup-host:ネットワークの変化によるDocker起動のneutron-agentsホストの削除に使用できます.
  • tools/cleanup-images:ローカルキャッシュからすべてのDocker imageを削除できます.

  • 最後に、docker ps -aコマンドを使用して、インストールされたOpenStackのすべてのサービスのコンテナを表示できます.
    トラブルシューティングとトラブルシューティング
    OpenStack環境をKollaおよびAnsibleで導入または実行する場合、通常、問題が発生した場合は、次の方法で確認/解決できます.
    (1)指定されたコンテナ(すなわち指定されたサービス)の出力ログ情報を表示する.
    docker logs container_name

    (2)fluentdログ収集コンテナに入り,指定したサービスのログを表示する.
    docker exec -it fluentd bash

    次に、CDから/var/log/kolla/SERVICE_へNAMEディレクトリの下.
    (3)また、CDをホストの/var/lib/docker/volumes/kollalogs/data/ディレクトリの下に直接、指定したサービスのログ情報を表示することもできます.
    (4)次のようなCephの管理コマンドがあります.
  • docker exec -it ceph_mon ceph osd pool ls
  • docker exec -it ceph_mon ceph -s
  • docker exec -it ceph_mon rbd ls images
  • docker exec -it ceph_mon rbd ls volumes
  • docker exec -it ceph_mon rbd ls vms

  • もちろん、Cephコンテナに直接入り、以下に示すように関連コマンドを直接実行することもできます.
    # docker exec -it -u root ceph_mon bash

    OSDステータスとCephクラスタステータスを表示するには、次の手順に従います.
    ceph osd tree
    ceph health
    ceph -s

    Cephのリアルタイム実行ステータスを表示するには、次の手順に従います.
    ceph -w

    Cephストレージの表示:
    ceph df
    ceph osd df

    Cephクラスタモニタ情報を表示するには、次の手順に従います.
    ceph mon statceph osd dump |grep pool

    モニターの定足数ステータスを確認するには、次のコマンドを実行します.
    ceph quorum_status

    OSD Journalパーティションサイズの表示:
    ceph --show-config|grep osd_journal_size

    転載先:https://www.cnblogs.com/linkenpark/p/9490644.html