/srv/irclogs.ubuntu.com/2017/09/18/#juju.txt

=== wgrant__ is now known as wgrant
=== frankban|afk is now known as frankban
fallenour@stokachu @rick_h @catbus @dmitri-sh hey guys, I am looking to build a cluster of web servers, and Im trying to find a prepackaged loadbalancing apache2 with haproxy or nginx with or without mysql included. I know it exists but I cant find it. Can you lend me a hand?14:27
bdxfallenour: there are many ways to skin that cat ;)14:29
rick_hfallenour: heh yea bdx is the proxy loadbalancing master atm :)14:30
fallenour@bdx Id like to have three apache2 servers, 2 loadbalancers and reverse proxies with Memcached, with master/slave databases. I knwo that means MySQL with either NGinx or HAProxy, using LXD for the web sites themselves on the Apache2 servers, with the HAProxy / Nginx boxes loadbalancing to the Apache2 server clusters, leveraging the MySQL master databases to do forced replication to the slave databases which will be used by the sites.14:39
fallenourI know thats a tall order, but I do know that a charm exists already for it, I just cant find the damn thing.14:39
fallenoureffective work flow End User >>> Load Balancer 1/2 >>> Apache2 Server 1,2,3 >>> Relevant WebServer in LXD Container 1,2,314:40
fallenourPreferrably a round robin basis if possible, its the easiest, and allows me to bring 1 server down at a time for maintanence without outage time14:41
bdxfallenour:  the quantity is arbitrary, just assume the services can scale, and focus on getting a bundle put together with just a singleton architecture14:42
fallenour@bxd so build a custom charm then? Memcached + HAProxy + Apach2 + lxd?14:43
fallenourooo! Plus MySql Master/Slave?14:43
bdxfallenour: a custom *bundle*14:43
bdxyeah, put dont worry about the slave part yet14:44
fallenour@bdx k. Do you think it would be well received? If So, I wouldnt mind publishing it. I think itd be really cool to finally give something to the Web Devs. Theyve saved my ass on more than one hellfire moment14:44
bdxfallenour: yeah ... so the idea is such that you release your charm or bundle to the charm store once it is  super solid/complete14:45
fallenour@bdx LOOOL. BDX: "Yeah...." Me: Ohh gwd, I said something stupid again XD14:46
bdxfallenour: see if you can find a bundle or two to use as an example14:46
bdxyou will see how there are sections to specify the charms, and relations, and machines14:47
bdxfallenour: no worries, its not always so obvious, different ways of sharing things in different communities/ecosystems, it was more of a "how do I phrase this" "yea...."14:51
fallenour@All Please be aware, this is misconfigured. I have a localized cache of all of the Ubuntu Repo, and it exceeds 110 GB of storage currently. Please be aware you will need to extend the threshold from 80 to 150 for stability reasons. Can someone please inform the developer? https://jujucharms.com/ubuntu-repository-cache/2414:54
fallenourOther than that, its OUTSTANDING! Im glad someone made building it a lot easier, because the initial build was a huge pain in the ass.14:55
bdxfallenour: the "submit a bug" button on the ^ web page that will aid you in submitting a bug for the charm?14:57
fallenour@bdx I never saw that LOL!14:58
bdxyeah we should make it a big red button huh?14:58
fallenour@bdx Please dont, Im red/blue color blind :(14:59
knobbyset irc.server.canonical.ssl_verify yes15:48
knobbybah15:48
stormmoreo/ juju world16:05
fallenouro/ @stormmore16:07
Catalys@beisner Just did a upgrade to Pike however did come across a few issues such as the DB migration failing and having to trigger one manually, is it safe to do that with "nova-manage db sync" afterwards though?16:17
rick_hbeisner: ^16:20
rick_hoh nvm /me drinks more coffee16:21
el_tigro1Is there a way to backup/restore a juju client for a single controller? The 'tar' method described in the documentation is an all or nothing approach:16:39
el_tigro1https://jujucharms.com/docs/2.1/controllers-backup16:39
rick_hel_tigro1: a single juju model?16:40
el_tigro1The client for a single controller including all its models16:41
el_tigro1At least that's what I think I mean16:41
el_tigro1the info seems to be stored in these 4 files in ~/.local/share/juju: accounts.yaml, controllers,yaml, bootstrap-config.yaml, models.yaml16:42
rick_hel_tigro1: oic, no. I'd love to have one. I've always wanted to do a juju export/import for the client to sync my machines up together16:42
el_tigro1exactly16:42
el_tigro1rick_h: Thanks16:43
rick_hel_tigro1: I cheat instead and I copy/paste the creds and use a different user account for each machine so I can juju register xxxxx and have valid users  and cached data on each machine16:43
el_tigro1rick_h: Thanks, that helps16:45
=== frankban is now known as frankban|afk
cory_futinwood: https://github.com/juju-solutions/charms.reactive/pull/12617:09
fallenour@rich_h hey whats the juju command to force remove a machine? Ive tried juju remove-machine  and remove-machine --force, but they still show up as down. They never built, so I want to remove them to reduce clutter on juju status output17:24
fallenournevermind, they randomly cleared up this time, im guessing the --force option got it this time17:25
fallenour@rick_h @catbus @stokachu @bdx Having issues deploying more than one apache instance, keeps giving me an "application already exists error". I dont receive this error from other charms, or at least none that ive noticed. Any ideas on how to deploy my other two apache instances (apache2/1, apache2/2) on lxd containers on machines 8 and 9?17:30
bdxfallenour: once you deploy the application, you have to use the `add-unit` command to scale it up17:31
bdxfallenour: e.x. `juju deploy apache2; juju add-unit apache2;`17:32
fallenour@bdx juju add-unit --to lxd:8 && juju add-unit --to lxd:9 ?17:32
bdxfallenour: :thumbsup:17:32
fallenourooh! juju add-unit apache2 --to lxd*17:32
bdxhmmm, not sure about ^17:33
fallenoursorry, full context: juju add-unit apache2 --to lxd:8 && juju add-unit apache2 --to lxd:917:33
bdxya, you can do that17:34
fallenourAlso, @BDX how do I cluster a pair of HAProxy systems? I tried to do that in juju gui, but it didnt work. Did I miss something?17:34
rick_hfallenour: yea, that way your application is tracking config/etc in a common place and you're just scaling it up and up with more units17:34
bdxfallenour: so ... I'm not sure haproxy really *clusters* as (to the extent of my knowledge) one haproxy instance isn't aware of the others17:37
fallenour@bdx damn. Is there an alternative that you would recommend? Its very important that I have a clustered loadbalancer.17:37
bdxfallenour: so you can have pools of haproxy servers17:38
fallenour@bdx pointing to more than one apache2 server I take it? And then have dns load balancing im assuming off of the haproxy servers?17:38
bdxlike you can loadbalance across haproxy servers in different fashions17:39
bdxyeah exactly17:39
bdxI do a very similar thing in many configurations17:39
bdxpool of haproxy servers -> application servers (nginx -> gunicorn)17:40
bdxso with haproxy you can configure it to do active or passive loadbalancing17:41
bdxfallenour: it sounds like you want active-active17:41
fallenourSo for websites I take it you take a simliar approach, and drop it onto an apache2 or gunicorn box?17:42
bdxfallenour: if this is so, you would need to configure the 'peering_mode' config for the haproxy charm17:42
fallenour@bdx yea I want to be able to randomly reconfigure and reshape my traffic geographcially17:42
fallenour@bdx some of the projects I am supporting do VPN and encryption, and if I need to run their traffic and data out of the country immediately to keep them from jail time or execution, I need to be able to do it immediately17:43
fallenour@bdx right now some countries are on the war path against crypto or vpn of any kind, regardless of legit or illegit use17:44
fallenourclear17:45
bdxaha17:45
bdxyeah17:45
bdxfallenour: what you are looking for is a SDN platform/controller17:48
bdxfallenour: check this out https://www.opendaylight.org/17:49
fallenour@bdx this thing looks insane o.o18:04
bdxfallenour: it takes some extensive deep diving to come to terms with the full capability and feature set of what something like opendaylight can do ... don't feel bad if it doesn't all 'click' right off the bat18:07
bdxbut I feel like you get the big picture18:07
fallenour@bdx yea it looks like and sounds like it cna do an L2 / L3 / DDNS centralized orchestration. Is that hitting close to the ballpark?18:08
fallenour@bdx one of the apache2 instanaces hung, juju add-unit adds a specified unit, what deletes one?18:10
bdx`juju remove-unit`18:10
bdxfallenour: yeah you are on the right track18:14
fallenour@bdx sweet. Next question, my machine numbers are super messed up right now, 0,1,2,3,5,6,7,8,10 is it possible to renumber them?18:14
bdxthe numbers are arbitrary ... you shouldn't concern yourself with the ordering18:15
bdxcorrection *the machine number will always increment each time you deploy a machine*18:15
fallenour@bdx ok. me personally I dont care, but some people do18:16
bdxfllenour: there is no way to keep track of the things if they don't have unique ids18:16
bdxif you want the numbering to start over you have to create a new model18:17
bdxfallenour: I'll stress that you really shouldn't concern yourself with the ordering of the machine numbers18:18
bdxbecause as you scale things up and down, you may add and remove units and machines18:18
fallenour@bdx yea Ive already experienced some unique "features" lol18:19
bdxfallenour: a common take on how to look at this is, try to think of your infrastructure as cattle not cows18:21
bdxwe don't care what number a cow has18:21
bdxonly what type of cow it is18:21
rick_hCattle not pets :p18:21
bdxawww18:21
fallenour@bdx yeap, and Ill send Ole Bessie to the slaughter she mooes just a tad over my stereo18:21
bdxrick_h: to the save18:21
bdxha18:21
bdxhaha18:21
fallenourclear18:22
rick_hPets get names and love and attention. Cattle get herded and such...18:22
fallenour@rick_h nah, cattle get love to. That way they taste better when youre eating them :D18:22
bdxoh no18:23
bdx:)18:23
xarses_wagu18:23
xarses_=)18:23
rick_hfallenour: hah, "I don't buy steaks without a name tag on them. I want to know who's so yummy!"18:23
tychicus^^ agreed18:23
xarses_Waiter: "Tonight we are serving Stephanie, a 4 yr old Texan from yummy tummy farms..."18:25
xarses_ok, so I know that juju has the ideas about being able to restrict access, but it doesn't appear to do any restrictions with a maas cloud, is there a way to make it interface with iptables or another driver?18:29
fallenour@xarses_ you can deploy pfsense for starters, restrict a lot that way.18:30
xarses_deploy pfsense?18:30
fallenour@xarses_ Yeap, Check here:  https://www.pfsense.org/download/    You can also deploy OpenVPN: https://jujucharms.com/openvpn/618:34
fallenour@xarses_ you can deploy PfSense easily with Openstack, and then also use juju for OpenVPN18:34
bdxfallenour: pfsense should sit above your openstack18:34
bdxfallenour: you can deploy it *in* openstack but .....18:34
xarses_I'm not sure we are on the same page, I want the maas cloud to require things like `expose` to have the ports exposed outside of the model18:35
fallenour@bdx true, but if you deploy it, and then leverage it as a primary gateway, you can use it in openstack18:35
fallenour@bdx its dirty, but it works.18:35
fallenour @xarses_ then you will most definitely need to do port forwarding on either a firewall or a modem, depending on if you have a bridged modem or not18:35
xarses_for example, the amqp port is exposed on the network, but the service isn't exposed18:35
fallenour@xarses_ So you want Internet USer >>> Port 22 >>> Your PFSense Firewall 22 >>> Port Forward SSH Service to "X":2218:36
fallenourIs that correct?18:36
xarses_no18:36
fallenour@xarses_ so then you want an exposed port with no service behind it? So it detects as services active, but not actualyl there?18:37
fallenour@xarses_ almost like a false flag honeypot?18:37
fallenour@xarses_ For Instance, Internet USer >>> Port 22 >>> Your PFSense Firewall 22 >>> Port Forward to Service that doesnt exist, or is a FIFO Connection Completion Shell Process for Nagios Trigger Alert18:38
xarses_I want juju to secure my mass cloud machines the same way it does for openstack cloud machines18:39
xarses_well, it cant be the same, but I wan't it to do the iptables, or go tell it what service I want it to use18:40
fallenour@xarses_ but maas doesnt do that, at least not to my knowledge. I think you are referring to Heat in Openstack, which is an inline proxy service, which does work, but MaaS is just a Metal as a Service Software. All it can do is deploy ISOs or Yamls at best. Its more so the Yaml that secures your machine, not so much MaaS itself.18:40
xarses_no I'm not referring to heat in openstack18:41
fallenour@xarses_ are you referring to the security modules built into Yaml scripts deployed by MaaS?18:41
xarses_I'm referring to juju using neutron security groups to enforce security between units to exposed ports18:41
fallenour@xarses_ ahhh!18:41
fallenour@xarses_ for something liek that, youll be much better off, and have much better granular control if you put a protocol proxy inline, something like ThrottleProxy18:42
xarses_https://github.com/mistakster/throttle-proxy ?18:43
xarses_ya, I still think we aren't connecting here18:44
xarses_when juju deploys a model on the openstack cloud, it creates a 100% restricted locked down security group18:45
xarses_and then alters based on relations18:45
xarses_and if the unit is exposed18:45
xarses_it does 0 of that on the mass cloud, with bare machines, or lxd units18:45
xarses_what can I hook in there to do something similar, i.e. iptables18:46
xarses_or otherwise expose the data that made the similar decisions when deploying to the openstack cloud18:47
xarses_preferably, I'd plugin Calico-Felix for it to update, but that seems quite far fetched18:48
zeestratHey rick_h, I'm writing a controller charm and an accompanying agent charm that scales out and need a reality check on how the relations work. I made an interface that provides on the controller and requires on the agents which works. Adding new agents also work as the joined/changed fires on both the controller and the new agent, however the other agents also need to do somethings when a new agent joins, but they18:48
zeestratdon't get any joined events from the controller or other agents that I can use. What's the design pattern for such a case? Am I missing something with the regular provide-request interface relations? Do I need to use the peer interface on the agents so they know about each other when scaling out, or is there something else?18:48
rick_hzeestrat: sorry, I'm literally heading out the door to get family from the train station. I'll parse and respond when I get back18:49
zeestratrick_h: No worries. Thanks!18:50
fallenour@bdx ok so this might be crazy, but what happens if I do this with haproxy: haproxy 0,1,2 (active-passive) >>> ha proxy 3,4,5 (active-active) >>> apache2 0,1,219:02
fallenourthoughts?19:02
fallenour@bdx a loadbalanced roundrobin with failover of the loadbalancer at layer 119:03
bdxfallenour: yeah, nice .... it all depends on your use case, and what the best practice for accommodating that use case is19:06
bdxfallenour: if you are proxing to a web application you are going to want a different setup than if you are using it as a network function or general routing utility19:08
bdxthat goes for the software and the hardware underneath19:08
bdxfallenour: all that to say .... I'm sure there are plenty of haproxy/nginx based NFV in a box things out there19:10
xarses_is there a `juju` way to move the bootstrap metadata cluster_F from where ever you started to somewhere sane on the controller after getting it bootstrapped?19:16
fallenouris anyone else having issues getting gitlab to deploy? https://jujucharms.com/gitlab/precise/519:28
fallenour@bdx @rick_h "no matching agent binaries available"19:28
bdxfallenour: https://jujucharms.com/u/spiculecharms/gitlab-server/819:31
bdxfallenour: the *supported* gitlab is not supported anymore, ^ that should work for you19:32
bdxfallenour: sometimes, its helpful to click the "show community results" button in the charm store to see the other options (especially when the charm you are looking at only supports < lts ubuntu)19:33
bdx^ supported gitlab charm* isn't supported anymore19:42
rick_hbdx: fallenour yea, precise is out of support so there's no Juju agents for precise. We should pull that series I guess but there's extended support and such.19:49
bdxrick_h: so contact the maintainers and ask them to contact the juju admins to take their charm out of the store?19:50
rick_hbdx: well, for something like that I think we'd just not show/etc the series. precise-only charms yea should probably be yanked/deprecated in some way19:50
bdxrick_h: ahh totally, like an underlying filter in the charmstore that will filter out < lts charms?19:51
bdxor put them in a deprecated category or something19:53
rick_hbdx: yea19:59
rick_hzeestrat: so yea, the peer relationship is all about them knowing about each other20:01
rick_hzeestrat: I think that's all you need20:02
zeestratrick_h: Alright. Figured so after going through most of the other charms and interfaces. Thanks a bunch.20:04
rick_hzeestrat: np, let me know if there's something to play with. I'd love to see what you're up to :P20:04
zeestratrick_h: Will do :) Gotta sort out this peering and some more automated testing. Speaking of testing, what's the state of matrix?20:15
rick_hzeestrat: hmm, not sure tbh. tvansteenburgh cory_fu is there any update on the latest on the testing train?20:16
tvansteenburghno one is working on matrix at the moment20:23
fallenour@bdx @rick_h does that mean that anything trusty isnt going to work? IE : https://jujucharms.com/owncloud/trusty/420:28
rick_hfallenour: no, precise20:29
rick_hfallenour: trusty should be ok for a little bit longer I think20:29
rick_hfallenour: yea, trusty EOL is april 201920:30
fallenour@rick_h ok, I was just curious. Its been isntalling for quite some time now, and has been hung on allocating / waiting on machine (lxd machines) so Im not sure why its taking so long20:31
rick_hfallenour: ah, so if it's a new series it'll have to d/l the trusty lxd image and such20:31
rick_hfallenour: normally that's shown in status and the lxd logs I think20:31
fallenour@rick_h I cant get the bad install of owncloud to uninstall, ive tried juju remove-unit owncloud as well as juju remove-application owncloud, and it still shows up as error on 7/lxd/8 . What do I need to do to get rid of it to rebuild?21:46
rick_hfallenour: what's the issue? It's in error state? I wonder if you can remove-machine --force a container21:48
fallenour@rick_h owncloud didnt install for some reason. Hook failed install, but when I run remove-unit and remove-application to kill it and start over, it wont go away, and it says application is still installed, even though I know i removed it21:49
fallenour@rick_h @catbus @bdx is there a command to remove bundles? maybe that is my issue. I did initially install owncloud as a bundle.21:49
rick_hfallenour: try the remove-machine --force on the container id21:49
fallenour@rick_h HAZAAH!21:51
fallenour@rick_h SUCCESS!!21:51
rick_hfallenour: woot21:56
el_tigro1According to the help page, you can use 'juju register <url>` instead  of 'juju register <blob from add-user>'). I'm guessing this is to register an existing user/controller with a new client?22:07
el_tigro1When I try it out I get this error: "ERROR unable to connect to API: x509: certificate signed by unknown authority"22:08
el_tigro1Shouldn't juju be expecting an unknown certificate since the ca-cert unique to the controller?22:10
el_tigro1*is unique22:10
thumperI'm not sure about the register url sorry22:10
el_tigro1essentially I just want to register a controller with another client without having to use 'add-user`. So that I can have different clients authenticating as the same user. Does that make sense or is it a bad idea? I guess I could always do it manually by editing the config files22:15
thumperno it isn't a bad idea, and it is a deficiency in the current system22:18
el_tigro1thumper: thanks for the clear and direct answer22:18
fallenour@el_tigro1 have you tried using certutil to add it to approved CAs list?22:19
el_tigro1fallenour: I haven't22:19
thumperel_tigro1: we are actually looking at this behaviour at the moment with the plan to clean it up in the 2.4 cycle22:19
fallenour@el_tigro1 do that. once you add it to the system as an approved CA, it should fix the issue. Ive experienced similar issues before with FreeIPA22:19
el_tigro1fallenour: thanks, I'll look into it22:20
fallenourhas anyone been able to get owncloud to install successfully?22:29
bdxfallenour: I gotchu, check it22:44
bdxfallenour: at a basic level, this is all it takes to create a owncloud charm https://github.com/jamesbeedy/layer-owncloud23:14
bdxfallenour: here is a working owncloud charm -> `juju deploy cs:~jamesbeedy/owncloud-1`, https://jujucharms.com/u/jamesbeedy/owncloud/123:16
bdx`juju deploy cs:~jamesbeedy/owncloud-2`23:21
bdxfallenour: with a tidbit of polish https://jujucharms.com/u/jamesbeedy/owncloud/423:39

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!