Commit Graph

65 Commits

Author SHA1 Message Date
Ryan Petrello 7bfc99a615 don't expose redis port 2020-04-17 15:34:11 -04:00
Christian Adams c8ceb62269 Rename awx rsyslog socket and PID dir 2020-04-15 14:11:15 -04:00
Christian Adams ca7c840d8c Fix permissions on rsyslog.conf for k8s 2020-04-13 19:33:23 -04:00
Ryan Petrello e52cebc28e rsyslogd: use %rawmsg-after-pri% instead of %msg%
after some prolonged RFC reading and tinkering w/ rsyslogd...

cpython's SysLogHandler doesn't emit RFC3164 formatted messages
in the format you'd expect; it's missing the ISO date, hostname, etc...
along with other header values; the handler implementation relies on you
to specify a syslog-like formatter (we've replaced all of this with our
own *custom* logstash-esque formatter that effectively outputs valid JSON
- without dates and other syslog header values prepended)

because of this unanticipated format, rsyslogd chokes when trying to
parse the message's parts;  AWX is emitting:

<priority>RAWJSON

...so the usage of `%msg%` isn't going to work for us, because rsyslog
tries to parse *all* of the possible headers (and yells, because it
can't find a date to parse):

see: https://www.rsyslog.com/files/temp/doc-indent/configuration/properties.html#message-properties

this is fine, because we don't *need* any of that message parsing
anyways; in the end, we're *just* interested in forwarding the raw
JSON/text content to the third party log handler
2020-04-13 11:44:00 -04:00
Christian Adams e740340793 ConfigMap rsyslog conf files for k8 2020-04-13 11:43:59 -04:00
Christian Adams 996d7ce054 Move supervisor and rsyslog sock files to their own dirs under /var/run 2020-04-13 11:43:59 -04:00
Shane McDonald c0af3c537b Configure rsyslog to listen over a unix domain socket instead of a port
- Add a placeholder rsyslog.conf so it doesn't fail on start
 - Create access restricted directory for unix socket to be created in
 - Create RSyslogHandler to exit early when logging socket doesn't exist
 - Write updated logging settings when dispatcher comes up and restart rsyslog so they  take effect
 - Move rsyslogd to the web container and create rpc supervisor.sock
 - Add env var for supervisor.conf path
2020-04-13 11:43:59 -04:00
chris meyers c06188da56 align with openshift 2020-04-06 09:16:46 -04:00
chris meyers 37a715c680 use memcached unix domain socket rather than tcp 2020-04-06 08:35:12 -04:00
chris meyers 6d60e7dadc align with openshift 2020-04-02 13:56:33 -04:00
Christian Adams 346b9b9e3e ConfigMap supervisor configs and launch scripts for k8s 2020-04-02 13:56:33 -04:00
softwarefactory-project-zuul[bot] 99384b1db9 Merge pull request #6506 from shanemcd/stateless-set
Switch from StatefulSet to Deployment

Reviewed-by: Matthew Jones <mat@matburt.net>
             https://github.com/matburt
2020-04-02 17:51:25 +00:00
chris meyers 929f4bfb81 start redis container with conf file 2020-04-02 11:13:35 -04:00
Shane McDonald 3060505110 Switch from StatefulSet to Deployment
We can do this now that we dropped RabbitMQ.
2020-04-02 09:24:49 -04:00
chris meyers 770b457430 redis socket support 2020-03-18 16:10:19 -04:00
Shane McDonald 45ce6d794e Initial migration of rabbitmq -> redis for k8s installs 2020-03-18 16:10:17 -04:00
Donovan Murphy ed8133be2d add Service Account annotation
Signed-off-by: Donovan Murphy <dono@dono.email>
2020-02-19 20:29:42 -06:00
softwarefactory-project-zuul[bot] 4dee5eddeb Merge pull request #5989 from egmar/support-for-imagePullSecrets
Added support for K8S imagePullSecrets

Reviewed-by: https://github.com/apps/softwarefactory-project-zuul
2020-02-19 19:45:12 +00:00
Egor Margineanu 74a31224e0 Moved imagePullSecrets into ServiceAccount definition 2020-02-19 10:45:07 +02:00
Egor Margineanu 667b27fe78 Added support for K8S imagePullSecrets 2020-02-19 10:11:34 +02:00
Donovan Murphy 5e4d73b6a3 fix indent 2020-02-18 20:27:57 -06:00
Jonas DOREL c94680eaba Add openshift label app 2020-02-15 14:49:05 +01:00
Jake McDermott 3831efb3be Use pod uid as instance uuid
Inject the pod uid as an environment variable and use it for the
SYSTEM_UUID in the settings file defined by the configmap.
2020-02-12 13:52:09 -05:00
Ashley Nelson bc97d11270 Add support for no_proxy 2020-01-31 10:05:32 -06:00
Ashley Nelson ab3a728032 Add custom venv support for proxies 2020-01-29 18:08:38 -06:00
Ilija Matoski e2cd86089b Allow deployments on Kubernetes version 1.16 2019-11-20 23:54:10 +01:00
softwarefactory-project-zuul[bot] c0abb063f9 Merge pull request #5001 from khawaga/kubernetes_ingress_tls
Kubernetes Ingress TLS support

Reviewed-by: https://github.com/apps/softwarefactory-project-zuul
2019-11-12 15:34:40 +00:00
Shane McDonald d3b137fbc4 Fix broken k8s installs
Related: https://github.com/ansible/awx/issues/5205

The following commit introduced this bug:
https://github.com/ansible/awx/commit/712b07c136ea31a14c035378a439c9b7a6712054#diff-a2ef2d6347894a92a6b882e3793fb06c
2019-11-03 16:03:19 -05:00
Shane McDonald 8356327c2b Downstream k8s installer changes 2019-10-22 15:57:40 -04:00
Alice Hunter e5dfc62dce Fixed bug with python check 2019-10-22 23:06:06 +11:00
Wander Boessenkool 8ecc1f37f0 Move python healthcheck script from probes to configMap 2019-10-18 10:15:21 +02:00
Wander Boessenkool c49e64e62c Make HTTPConnection import python 2,3 agnostic 2019-10-17 23:36:33 +02:00
Wander Boessenkool 00c9d756e8 Move installtime hardcoded rabbitmq credentials to environment variables for healthcheck 2019-10-17 23:23:29 +02:00
Wander Boessenkool 9ab58e9757 Change healthcheck from wget and grep to python with httplib 2019-10-17 22:25:20 +02:00
Wander Boessenkool d6134fb194 Change /bin/ash to /bin/sh as requested by @shanecmd 2019-10-17 21:37:51 +02:00
Wander Boessenkool 038fd9271d Properly escape quotes 2019-10-14 17:53:28 +02:00
Wander Boessenkool e87055095c Change 'rabbitmqctl status' to a wget | grep
- This reduces CPU usage from 250 millis on idle to 25 millis on idle
- Default rabbitmq user needs administrator privileges
2019-10-14 14:53:53 +02:00
Khaled Elkhawaga 267e297eca add variable to set tls secret for kubernetes ingress
Signed-off-by: Khaled Elkhawaga <k.elkhawaga@gmail.com>
2019-10-11 00:52:24 +02:00
Gabriel Totusek f705eba7ed Add support for kubernetes tolerations, nodeSelector, and affinity 2019-08-11 23:10:56 -07:00
Ashley Nelson 036e1ad82e Add dynamic custom venv setup
Add support for python3 venvs
2019-07-08 18:49:31 -05:00
Marcelo Mello 52712a0d9a Introduces the ability to pass annotations to the Kubernetes Ingress Controllers 2019-06-20 16:40:08 -04:00
Marcelo Mello 7d77727a60 project_data_dir is not required in the awx_task containers 2019-06-19 21:35:49 -04:00
Marcelo Mello 47560fdf7c Fixes ca_trust_dir and project_data_dir for Kubernetes 2019-06-19 21:21:35 -04:00
Shane McDonald 298eaa0b32 Move secret key from configmap to secret 2019-03-29 15:24:50 -04:00
Shane McDonald 2b6cf97157 Do not set credentials via environment variables 2019-03-26 15:13:28 -04:00
softwarefactory-project-zuul[bot] 5f01c3f5a8 Merge pull request #2994 from coreywan/pod-limits
Add POD Limits

Reviewed-by: https://github.com/softwarefactory-project-zuul[bot]
2019-01-18 04:28:11 +00:00
Corey Wanless aebeeb170e adds pod limits
Signed-off-by: Corey Wanless <corey.wanless@wwt.com>
2019-01-16 09:23:18 -06:00
Ryan Petrello 4858868428 configure an HA policy for openshift/k8s installs 2018-12-14 14:08:30 -05:00
James Evans 88819ada6b Remove .cluster.local from service name for rabbitmq
FQDNs are not required for service discovery, and having the FQDN in the
name prevents the discovery from working in clusters not named
cluster.local.
2018-10-18 14:00:05 -05:00
Ashley Nelson 2bf2412759 Add serviceName to Kubernetes StatefulSet spec
Signed-off-by: Ashley Nelson <fantashley@gmail.com>
2018-10-11 11:49:08 -05:00