Git Product home page Git Product logo

awx's Introduction

Run Status

AWX

AWX provides a web-based user interface, REST API, and task engine built on top of Ansible. It is the upstream project for Tower, a commercial derivative of AWX.

To install AWX, please view the Install guide.

To learn more about using AWX, and Tower, view the Tower docs site.

The AWX Project Frequently Asked Questions can be found here.

Table of Contents:


Notes:

  • This repo was forked from the official AWX repo.
  • This was to customize the contents. Please refer to the official documentation otherwise.
  • This expects External-DNS to be installed to your cluster. You can figure this on k8s and AWS via the external-dns repo.

Setup and installation:

  • Edit the namespace and context for kubernetes / helm in installer/inventory
  • Install pip modules: pip install -r requirements.txt
  • Setup PostgreSQL:
    • We use the helm chart from Charts/postgresql.
    • Edit the following values in the values.yaml file:
 20 ## Default: postgres
 21 postgresUser: admin
 22 ## Default: random 10 character string
 23 postgresPassword: abc123
  • Also, update persistent storage settings within values.yaml custom to your specific use case:
 52 persistence:
 53   enabled: true
 54 
 55   ## A manually managed Persistent Volume and Claim
 56   ## Requires persistence.enabled: true
 57   ## If defined, PVC must be created manually before volume will be bound
 58   # existingClaim:
 59 
 60   ## database data Persistent Volume Storage Class
 61   ## If defined, storageClassName: <storageClass>
 62   ## If set to "-", storageClassName: "", which disables dynamic provisioning
 63   ## If undefined (the default) or set to null, no storageClassName spec is
 64   ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
 65   ##   GKE, AWS & OpenStack)
 66   ##
 67   storageClass: "general"
 68   accessMode: ReadWriteOnce
 69   size: 30Gi
 70   subPath: "postgresql-db"
 71   mountPath: /var/lib/postgresql/data/pgdata
  • Now update your ./installer/inventory postgres paramters to reflect whatever you put in above:
 60 # Set pg_hostname if you have an external postgres server, otherwise
 61 # a new postgres service will be created
 62 pg_hostname=postgres-postgresql.default.svc.cluster.local
 63 pg_username=admin
 64 pg_password=abc123
 65 pg_database=awx
 66 pg_port=5432
  • Now install postgres:

helm install --name postgres stable/postgresql -f values.yaml

  • Run: ansible-playbook -i inventory installer/install.yml

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.