Airship utility CLI access
Go to file
diwakar thyagaraj 4a2d6deefa Enable Logs Output in Zuul for Deployment Scripts
This Fixes Logs for Deployment Validation.

Change-Id: I6cda8d0f0bd2d5e957abb8df9b512866f169ae59
Signed-off-by: diwakar thyagaraj <diwakar.chitoor.thyagaraj@att.com>
2020-03-04 18:24:16 +00:00
charts upgarding Openstack Utility client version to stein. 2020-01-30 01:18:07 +00:00
docs Editorial changes to documentation files 2019-12-16 09:21:19 -06:00
images upgarding Openstack Utility client version to stein. 2020-01-30 01:18:07 +00:00
jmphost Enforce the use of the correct kubectl client version 2020-01-06 19:31:09 +00:00
tools Enable Logs Output in Zuul for Deployment Scripts 2020-03-04 18:24:16 +00:00
zuul.d Enable Logs Output in Zuul for Deployment Scripts 2020-03-04 18:24:16 +00:00
.gitignore Chart/Dockerfile for Ceph Utility Container 2019-01-10 10:08:55 -06:00
.gitreview Add .gitreview 2019-08-07 14:41:35 +00:00
LICENSE Initial commit 2018-09-05 14:42:30 -05:00
Makefile Pass extra build args to Docker image builds 2019-10-28 12:56:28 -07:00
README.md Editorial changes to README.md files 2019-12-03 08:57:13 -06:00

Utility Containers

Utility containers give Operations staff an interface to an Airship environment that enables them to perform routine operations and troubleshooting activities. Utility containers support Airship environments without exposing secrets and credentials while at the same time restricting access to the actual containers.

Prerequisites

Deploy OSH-AIO.

System Requirements

The recommended minimum system requirements for a full deployment are:

  • 16 GB RAM
  • 8 Cores
  • 48 GB HDD

Installation

  1. Add the below to /etc/sudoers.

     root    ALL=(ALL) NOPASSWD: ALL
     ubuntu  ALL=(ALL) NOPASSWD: ALL
    
  2. Install the latest versions of Git, CA Certs, and Make if necessary.

     sudo apt-get update
     sudo apt-get dist-upgrade -y
     sudo apt-get install --no-install-recommends -y \
         ca-certificates \
         git \
         make \
         jq \
         nmap \
         curl \
         uuid-runtime \
         bc
    
  3. Clone the OpenStack-Helm repositories.

    git clone https://git.openstack.org/openstack/openstack-helm-infra.git
    git clone https://git.openstack.org/openstack/openstack-helm.git
    
  4. Configure proxies.

    In order to deploy OpenStack-Helm behind corporate proxy servers, add the following entries to openstack-helm-infra/tools/gate/devel/local-vars.yaml.

     proxy:
         http: http://username:password@host:port
         https: https://username:password@host:port
         noproxy: 127.0.0.1,localhost,172.17.0.1,.svc.cluster.local
    

    Add the address of the Kubernetes API, 172.17.0.1, and .svc.cluster.local to your no_proxy and NO_PROXY environment variables.

     export no_proxy=${no_proxy},172.17.0.1,.svc.cluster.local
     export NO_PROXY=${NO_PROXY},172.17.0.1,.svc.cluster.local
    
  5. Deploy Kubernetes and Helm.

     cd openstack-helm
     ./tools/deployment/developer/common/010-deploy-k8s.sh
    

    Edit /etc/resolv.conf and remove the DNS nameserver entry (nameserver 10.96.0.10). The Python setup client fails if this nameserver entry is present.

  6. Setup clients on the host, and assemble the charts.

     ./tools/deployment/developer/common/020-setup-client.sh
    

    Re-add DNS nameservers back to /etc/resolv.conf so that the Keystone URLs DNS will resolve.

  7. Deploy the ingress controller.

     ./tools/deployment/developer/common/030-ingress.sh
    
  8. Deploy Ceph.

     ./tools/deployment/developer/ceph/040-ceph.sh
    
  9. Activate the namespace to be able to use Ceph.

     ./tools/deployment/developer/ceph/045-ceph-ns-activate.sh
    
  10. Deploy Keystone.

    ./tools/deployment/developer/ceph/080-keystone.sh
    
  11. Deploy Heat.

    ./tools/deployment/developer/ceph/090-heat.sh
    
  12. Deploy Horizon.

    ./tools/deployment/developer/ceph/100-horizon.sh
    
  13. Deploy Glance.

    ./tools/deployment/developer/ceph/120-glance.sh
    
  14. Deploy Cinder.

    ./tools/deployment/developer/ceph/130-cinder.sh
    
  15. Deploy LibVirt.

    ./tools/deployment/developer/ceph/150-libvirt.sh
    
  16. Deploy the compute kit (Nova and Neutron).

    ./tools/deployment/developer/ceph/160-compute-kit.sh
    
  17. To run further commands from the CLI manually, execute the following to set up authentication credentials.

    export OS_CLOUD=openstack_helm
    
  18. Clone the Porthole repository to the openstack-helm project.

    git clone https://opendev.org/airship/porthole.git
    

To deploy utility pods

  1. Add and make the chart:

     cd porthole
     helm repo add <chartname> http://localhost:8879/charts
     make all
    
  2. Deploy Ceph-utility.

     ./tools/deployment/utilities/010-ceph-utility.sh
    
  3. Deploy Compute-utility.

     ./tools/deployment/utilities/020-compute-utility.sh
    
  4. Deploy Etcdctl-utility.

     ./tools/deployment/utilities/030-etcdctl-utility.sh
    
  5. Deploy Mysqlclient-utility.

     ./tools/deployment/utilities/040-Mysqlclient-utility.sh
    
  6. Deploy Openstack-utility.

     ./tools/deployment/utilities/050-openstack-utility.sh
    

NOTE

The PostgreSQL utility container is deployed as a part of Airship-in-a-Bottle (AIAB). To deploy and test postgresql-utility, see the PostgreSQL README.