Commit Graph

22 Commits

Author SHA1 Message Date
Andreas Jaeger d139d81213 Retire astara repo
Retire repository, following
https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project

Change-Id: I0a8240c961955447d65aee7af24e03cb81da12d3
2018-10-14 12:52:23 +02:00
Adam Gandelman 179d723747 Allow gunicorn workers 5 min. to process requests
Config updates can be time consuming, especially in testing environments
that utilize virt-on-virt.  Rather than timing out workers that are taking
a long time to process an update, bump the timeout to 5 minutes and allow
the requesting orchestrator to time out its request at shorter deadlines
instead.

Change-Id: Ibee73d7a43864da645b5d7198a5df2f2bf936ea9
2016-03-29 11:03:29 -07:00
Mark McClain 920954e31d Add support for StrongSwan VPN to router
This change adds Strongswan to support VPNaaS in appliance.

Change-Id: I1adb74c159eaf4f62950d17ed015856e90a91641
Partial-Blueprint: neutron-vpnaas
2016-03-18 14:29:40 -07:00
Adam Gandelman 8633d1a5bc Adds ConntrackdManager
Used for setting up conntrackd between two clustered peers.

Partially-implements: blueprint appliance-ha

Change-Id: Ice3f4dbed02b877bc64ae73879a74acc26cca47e
2016-03-18 11:05:03 -07:00
Adam Gandelman 02383adf64 Adds keepalived based VRRPIPManager
This adds a new IP manager driver for configuring addresses
and routes via keepalived instead of directly.  It used when
the logical resource is configured to be highly-available,
according to configuration pushed by the orchestrator.

We rely on a 'ha_resource' flag attached to the main config
dict to enable it, and use specific HA config about peers and
cluster priority contained in the 'ha_config' section of the
main config.

The resulting keepalived cluster contains a VRRP instance for
each interface, with the exception of the management interface.

Partially-implements: blueprint appliance-ha

Change-Id: I5ababa41d65642b00f6b808197af9b2a59ebc67a
2016-03-17 23:16:11 +00:00
Xiayu abd07978e0 Astara appliance oslo.rootwrap
Use oslo.rootwrap to replace the default root_helper sudo.

Change-Id: I5875cd647a4cc4f60f3058a98ea8a829cf056c43
Implements: blueprint astara-rootwrap
2016-02-18 08:54:45 +00:00
Mark McClain 04c29debb5 Add vim package back to image
It is useful to have an editor on the appliance.

Change-Id: Ic400e5cbdb1d39b67d2b808371dc41e810eb9c7b
2016-01-29 15:34:35 -05:00
Adam Gandelman a5a5545419 Drop gunicorn from requirementes.txt
We dont ever actually import this anywhere or depend on it as a python
dependency.  Instead, its part of our diskimage-builder elements and
is largely an opinionated deployer choice we've made.  The only purpose
having it in requirements.txt is to pull it in during installation, which
should be delegated to ansible/DIB instead.

This also manually sync's global-requirements along with the update.

Closes-bug: #1526527

Change-Id: I834efb47ccda02a5163c5083836ff29fdc3fdd6f
2015-12-17 12:39:31 -08:00
Mark McClain 1a68612a71 Rename Akanda to Astara
Change-Id: Id5b7509a64cd274696f6bdd63a1133c25505f01b
2015-12-03 19:57:21 +00:00
Jenkins 3a359c6a29 Merge "Introduces advanced service drivers to akanda-appliance" 2015-10-15 22:42:24 +00:00
Adam Gandelman 433a4c7190 Introduces advanced service drivers to akanda-appliance
This introduces the ability to create service manager drivers to handle
managing advanced services within the akanda-appliance.

It splits some common things into a System manager.  Existing
stuff that is router-specific is moved to a Router manager and we begin
implementing LBAAS drivers using Nginx.

At the moment, configuration for which drivers are loaded by the appliance
code itself is stored in /etc/default/akanda-appliance.  This is setup by
a DIB_* variable and accessed by the appliance via environment variable. We
should improve this later when we need to expose richer configuration to the
appliance.

We could and should work on the API for this.  Currently, our v1
API is entirely router-specific.  This adds to that and allows the
RUG to attach other advanced service configuratino data to the config
object it pushes.  If the corresponding service's driver has been enabled
in the appliance, it will attempt to find that data and configure the
advanced service accordingly.  Ideally, longterm we want a v2 API
that can reference all services the same.  There's a few ugly compat
hacks added here to maintain compatability with where the RUG expects
certain router resources to be.  We can evolve this over time.

Partially-implements: blueprint appliance-provisioning-driver
Depends-on: Ic19a883f56fb6d65a83b1f4d93b581f9e242d97f
Change-Id: I6048789ec15fad1dbc899cbbd82508433cb96d44
2015-10-14 15:02:16 -07:00
Adam Gandelman 9f1f300ce7 ansible: Add iputils-ping to base package install
This adds iputils-ping package to the base package install.  It appears
something changed in debian or DIB and this is no longer installed by
default.

Change-Id: I8bf538a9759aaa117edb5abf492c9dc630efc23b
2015-09-29 10:34:36 -07:00
Mark McClain 1e5409df29 Enable tcpdump in default build
Closes-bug: 1500562
Change-Id: I82e88840b0522080cdb7ba738f6cbaf3752f4137
2015-09-28 14:42:42 -04:00
Ryan Petrello a73e8da993 Remove arping from the list of base packages.
Change-Id: I8374356efb8a33e04ec91062f1d15302383eef71
2015-06-08 15:50:39 -04:00
Jenkins 881883d70b Merge "Setup logging in the appliance" 2015-06-08 15:19:50 +00:00
Adam Gandelman e5708bec8e Allow for building non-wheezy releases
This makes the kernel update task only happen on wheezy and removes
the default release stuff from bird (the newer backports version should be
installed without pinning to that repo)

Change-Id: Id4b997848edee21bdcfa3d9defedc69598eccfad
2015-06-05 11:23:43 -07:00
Adam Gandelman de7c6f7d3c Setup logging in the appliance
The appliance currently tries to log to /tmp/gunicorn.log, but thats
misconfigured.  This sets gunicorn up to log to /var/log/akanda/ for
both access and error logs and installs and configures logrotate for
those files.

Change-Id: Ie75f305860a0c5204ec8fe5b1af0de03826aa880
2015-06-05 11:18:38 -07:00
Adam Gandelman a12136b203 Bump gunicorn worker timeout to 60
The default 30s worker timeout for gunicorn is not sufficient for
some slower environments, as the metadata service takes a while to
restart.  This bumps it to 60s to ensure we dont fail config updates
on worker timeouts.

Change-Id: If27329b58d97e6aef687a069615dbda763dba8c1
Closes-bug: #1462100
2015-06-04 14:15:21 -07:00
Ryan Petrello 434642c4fd Send a gratutious ARP when a v4 new address is added.
Change-Id: I51da87b40e1b68e1554c2ba1dd45838063dbf101
Closes-Bug: #1453201
2015-05-08 12:32:31 -04:00
Mark McClain f8701a0a6f add support for cloud-init API configuation
This change makes the MGT API service fully configurable to either IPv4
or IPv6 address.

Implements blueprint: cloud-init-provisioning
Change-Id: Ibff39030c4e3fe04c3f8cc238508e33d450a4398
2015-05-07 06:23:32 -07:00
Mark McClain 5d30e05b0f update defaults for more generic installation 2015-04-02 17:27:04 -04:00
Mark McClain 62a57712ed Convert build script to Ansible 2015-03-25 15:58:16 -04:00