Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Virigoth posted:

Agrikk what’s the deal with these “Senior DevOps Consultant” jobs I’ve had land in my inbox. 2 so far this week. Is this a new professional services offering spinning up to help people do the DevOps? It’s almost a perfect match to the DevOps Enablement initiative I’ve been working on at my company for 6 months but I’m guessing the pay and perks are better.

That is correct. The DevOps Consultant is part of Proserve and is a combination of hands-on-keyboard and instructor.

Scrapez posted:

When performing a describe-network-interfaces, is there a way to do wildcards in the description filter to return all matching ENIs?

For example, I have two ENIs with descriptions of: TestAdapter0 and TestAdapter1

Is there a way to do something like `aws ec2 describe-network-interfaces --filters Name=description,Values="TestAdapter*"`

Edit: Gosh I'm dumb...that does work. I just wasn't putting the double quotes around the Value

FYI-

Using a wildcard for the filter may result in multiple API calls being made in quick succession, which may result in RequestLimitExceeded errors depending on the amount of entries returned, other filters and other API activity in your account.

I'm not saying that it will happen, but it could happen depending on your use case.

Agrikk fucked around with this message at 07:16 on Feb 20, 2019

Adbot
ADBOT LOVES YOU

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Scrapez posted:

So would it be better to set the description of all the ENIs to the same string (TestAdapter) and then instead do the query as: `aws ec2 describe-network-interfaces --filters Name=description,Values="TestAdapter"`

There's really no reason I need to do it as a wildcard. I had just planned to set descriptions as TestAdapter1, TestAdapter2, etc but it isn't really a requirement to do that.

That is correct. If this process is going to be anything other than a one-off you should probably build a tagging scheme and do your search based on tags.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Cancelbot posted:

Architectural one - We had an argument today of whether or not we should have environment based transit. For context: the developers have to provision a "mainline", "staging" and "live" environment by having a VPC for each per region they want to be in (so more often than not teams end up with 6 VPCs for 2 region redundancy) this adds headaches as theoretically it also means a pair of VPN tunnels per VPC-Region if they want to hit our on-premise infrastructure and a hell of a lot of NAT gateways.

We're partway to a solution by having Transit VPCs span everywhere so everyone can share the NAT, Internet, and VPN tunnels through one account, but would you go a step further and split the transit into a "mainline", "staging", "live" set of transit gateways? In the end it's all the same address space and due to how hosed our on-premise network already is QA is already visible to Live and vice versa, save for security groups locking this down; plus there's the risk of someone just smashing the transits all together in their account and giving a giant middle finger to routing.

However it could mean we get a bit closer to some network sanity by actually segregating poo poo and allowing for the networking team to try things out which doesn't bring every conceivable environment down. One argument against this was our switching & routing on premises isn't segregated physically so why would we do it in AWS?

Like everything else AWS, "it depends."

What need does segregation solve? If your company got burned somehow by unsegregated networking, then yeah, culturally you might want to go the three transit networks route.

But other than that you have to ask yourself what gains do you achieve by adding triple the complexity for all of your interconnects.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

PierreTheMime posted:

For S3, is there a preferred standard for object storage while keeping original location information? I'm planning on flattening my fullpath names into keys (removing the system name with a shortened reference name), which will make regenerating the files from objects as simple as performing the reverse. Am I going to run into any trouble this way? I'm sure I could store the old filepath within metadata but that seems just as messy.

Example:
\\Client1Server\Test\ExtraFolder\File1.csv becomes s3://Bucket/Client1/Test/ExtraFolder/File1.csv

This is fine.

I have clients using powershell scripts and robocopy to do a shake-n-bake backup nightly backup job.

Robocopy generates a list of files with the archive but set

Another command splits the list into 8 lists [one for each core on the server]

Another command launches 8 [AWS s3 cp] commands to push the files to the bucket and reset the archive bit

Not that it doesn’t reflect any deletes or renames or folder moves, so your bucket will end up with a lot of leftover artifacts.

Agrikk fucked around with this message at 21:35 on Feb 26, 2019

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
I sat for and passed the SA Pro cert without studying at all, but I basically teach this stuff to others all the time.

That said, anyone with a rough overview to the AWS core services should be able to pass the associate after no more than a month of study from online materials and some practice tests. The associate is meant to be more of an initiation to the subject matter rather than a hurdle to cross.

The Pro certs require a more in-depth knowledge.


Protip: If the question mentions "real time" anywhere in the paragraph of words stop reading any further. The answer is kinesis. It is always kinesis. :D

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Scrapez posted:

Cloudformation drift detection...Does it just tell you that objects have changed since you launched your template or is there a way for it to produce an edited Cloudformation template that includes the changes? Or a separate template that only includes the additions/changes?

No.

Cloud formation launches itself and then is done. Any subsequent changes to the environment has to be monitored by other means.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
...and here is his update, presented the next year at re:Invent (2015)

https://youtu.be/3qln2u1Vr2E


They are each 45 minutes long or so but are worth watching.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

the talent deficit posted:

i'm working with a client too cheap to pay for aws support but i have some questions about the service level guarantees of cloudwatch events, sns and sqs. whats my best bet for finding these?

You can always try the AWS forums. They are moderated by AWS employees who are SMEs, but YMMV.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Boris Galerkin posted:

How do I get a list of all resources (lambdas, API Gateways, buckets, etc) that are currently in use on my account among all regions? I just saw that I had things uploaded to a S3 bucket in the wrong/different region that I would have never noticed except by accident and I'd like to just go through and get rid of everything I've ever set up through various tutorials and examples etc.

The easiest way will be through cost explorer. If you a spend for a service, then you have stuff in that region.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

JHVH-1 posted:

Ive heard of some orgs that just give each team their own account so they are isolated. It also has the benefit that they get to pay the bill so if they waste resources it comes out of their own budget.

This happens a lot and the multi account strategy solves lots of billing and resource tracking problems, but can create huge problems as well. Before heading down a multi account strategy consider the following:

- how well will our processes around account creation scale? What works at 5 accounts won’t work at 50. Or 500.

- how will we manage account governance? All of these accounts will need to be secured somehow. What happens when someone switches teams? How will their access roles be moved?

- how will we manage data security? Will there be a central team with review permissions on every account? Will each team be responsible for implementing our security best practices?

- how will resources in these accounts talk to each other? Will they have a hub-and-spoke model or fully meshed? What do New VPCs look like in terms of peering relationships or VPN/DirectConnect access?

- how will resources be identified? Will there be any company-wide naming conventions and tags?

Etc.


Getting these questions wrong (as in wrong for your company, since there are no wrong answers in general) will cause massive headaches when you hit that landmine.

From countless experiences like this, I tell you that Architectural redesigns are incredibly disruptive and painful when the tech debt bill has to be paid. And 80% of them are avoidable with thorough analysis ahead of time.

Agrikk fucked around with this message at 18:19 on Aug 18, 2019

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
Or you can do what a customer of mine did:

Be really clever and buy an iPhone and put all eighty of their accounts’ root 2FA on an instance of google Authenticator and keep the iPhone in a bombproof safe.


They were all kinds of :smug: until someone dropped the phone.


I had to fly down there and get on a video call with our legal department and me sitting next to their leadership and vouch that their leadership was actually their leadership and we all had to present IDs and say who we were and that we were authorized to remove MFA from the account.

We got to do this eighty times.

Agrikk fucked around with this message at 02:35 on Aug 19, 2019

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Startyde posted:

The first rule of AWS is Amazon hates you

Hah hah hah! I’m getting this made into a t-shirt and am going to wear it in the office.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Cancelbot posted:

Cross posting here for the Agrikk goodness. I've reached the final stage (on site interview) to become an AWS TAM :woop: I've had a little help from our current TAM and the Enterprise Support Manager after my second screen interview but i'm still super nervous. I've been writing down as many stories as I could for each of the leadership principles but concerned I'll forget it all and crash and burn when put in front of the 5 or 6 TAMs i'll face during the day.

I can always fall back on "not being an idiot" if I stumble I suppose. But as a TAM yourself Agrikk what should I be demonstrating during this process?

Be honest and forthright about what you know and don’t know. You got this far because you are demonstrating a keen mind, a personable demeanor and good judgement. Keep doing that.

It’s totally okay to say, “I don’t know the answer to that, but here is how I’d find out. Also, would you mind if I took a minute or two to take a guess at the answer and try to reason it out?”

This process demonstrates that you have a analytical mind even if you don’t know an answer and it shows you are comfortable with not knowing.

With 150+ service offerings these days, it is impossible to know everything about everything, and we need you to be comfortable with that ignorance.

Also: get your sleep and eat well the day before and have stuff to snack on during your on-site loop. The five hours [or whatever it is these days] can be a grueling affair and you are best to be well-rested and well nourished.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
You can bring in anything you want, but you are under NDA so you might not be able to take any notes out of the interview space.

It’s enforced only when we talk about future roadmap type stuff but know that it does happen.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
^^^ this as well.

If you have “migrated from on-perm to a datacenter” at the top of your resume you can me very certain that I am going to grill you on it:

- what was your role?
- how did you contribute?

Not “your team” but “you”. If the next word out of your mouth isn’t “I...” then I’m now mad at you, and as your interviewer that’s a bad thing.

- what did success look like?
- what would you do different next time? (What did you learn from this experience?)

It is really apparent to us if you were an active driver of the engagement or if you were a water-carrier.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
It’s not a trap. AWS doesn’t play interview games. Our questions are straightforward and you won’t see “why is a man hole cover round?” questions anywhere.

If you found it easy then congratulations: you are exactly who we are looking for. :D

Edit:
And they are loops because interviews are ultimately an iterative process: if we like you and think you have Amazon qualities, we will keep cycling you through positions until we find a fit for you.

But due to the revamped screening process, a loop is more of a straight line these days.

Agrikk fucked around with this message at 21:42 on Aug 29, 2019

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
The interviews are rough, yep.

I hope the right thing happens for you!

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Cancelbot posted:

I loving got it! :woop: I'll be a Senior TAM in 2 months (notice period boo).

Congratulations Cancelbot!

:yotj:

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
TAMs are always in Enterprise support since TAMs are only assigned to customers with enterprise-tier support contracts. What office will you be working out of? I’m curious if I’ll be your trainer.

And don’t feel bad. I don’t return anyone’s calls. It’s what makes me such an effective TAM.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

TheCog posted:

I was catching up with the thread, and well:



Thinking of getting it printed.

:perfect:


And asking your TAM for a SME should not take three weeks usually. Most importantly, your TAM should not have you wondering what is going on.

Pinging your TAM with “uh, we haven’t had an update in a while. What’s up?” is completely warranted any time you are wondering about something.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Jeoh posted:

Contact your AWS TAM. We've been working intensively with the DMS team and they're really eager to change things based on customer feedback.

Always this.

For every project, you should be engaging your TAM (or entire account team) before you start the project. This way you don’t have to reinvent the wheel ad you’ll be given best practices for your project- ensuring you get it right straight from the beginning.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Internet Explorer posted:

What if you have a Solutions Architect and not a TAM?

Then reach out to them. Solutions architects exist to help architect solutions. See?

A TAM gets assigned to a customer only when the customer signs up for enterprise support (a minimum of $15,000 per year), but technically there is an SA and an Account Manager assigned to every account. That said, territory account managers can have hundreds of customers so access to the SA associated with your account might be limited. YMMV.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
AWS employees don’t hear about upcoming launches at retInvent until re:invent so yeah, I feel your pain.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
Be careful how you book sessions. If you are sloppy you can walk ten miles in a single day, like a customer did.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Hughlander posted:

Not sure what thread this should go to, but I want to get an elastic ip and vpn it to a set of containers on my NAS. Is that just going to be a Vpc, elastic ip and vpn endpoint? Or is there more to it than that?

Rational: I need to upgrade my ec2 to a higher machine class or I could just use my home nas but I don’t want people knowing my home ip / have a stable ip when it changes.

I'm not really sure what you are asking here, but I'll take a swing at it:

You will want to create a VPC, set up a virtual private gateway (that in itself will have public IP addresses - you don''t have to create them) and then create your VPN tunnel to it. Then you can route in/out traffic through a NAT gateway which in itself will have a public IP address. This IP address changes so you'll use the AWS DNS name or point an alias to whatever DNS hostname you prefer. You can specify a elastic IP address upon creation.



FYI: bumping an EC2 machine to a different class (T3 to M5) or size (large to 2xlarge) is trivial and requires only a reboot.

Agrikk fucked around with this message at 21:05 on Dec 9, 2019

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
Yup

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

fluppet posted:

How long does it take for an application to aws be rejected via the job portal?
Its been 3 weeks so I'm assuming they dont want to interview me

What’s the position?

Things are moving a bit slowly in Post-new year. I recommend to keep after it and keep bugging HR people for updates. Eagerness is a good thing here.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Matt Zerella posted:

Maybe I'm a dummy, or my google skills suck.

I'm trying to figure out a theoretical AWS problem.

Lets say I want to have 2 ASGs, no load balancer in front of them.

They'll be doing bulk processing.

In one ASG will be Linux servers

On another, Windows servers.

The windows servers will be running a service which connects to only 1 of the ASG linux servers. The ASGs will always match in number of nodes, 1 to 1.

Has anyone figured out a way to get index number of the ASG instance so I can generate something like.

ASG1 (Linux)
Name: ENV-LINUX-1
Name: ENV-LINUX-2

ASG2 (Windows)
Name: ENV-WIN-1
Name: ENV-WIN-2

Then I can pull those values in to set hostname, generate certificates, etc in the userdata and use the predictive naming to pair the Windows and Linux server 1 to 1?

What is the workload? This is an odd architecture that resembles some kind of grid compute but putting nodes into an ASG and the requiring them to connect to a specific partner has me curious.

Linking one server to a partner locks an architecture into a static configuration. Instead you’d build a stateless configuration which sends a completed work request from column A into a queue that would be pulled down into the next available server in column b.

Agrikk fucked around with this message at 01:15 on Feb 19, 2020

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Matt Zerella posted:

The idea is to spin this up, do a bunch of processing and tear it down. The Linux to Windows link is due to a service that only runs on Windows and consumes data from the Linux machine and sends it back.

Neither side can be load balanced.

Yes. This sucks. Out software is definitely square peg for the clouds round hole but we are trying to work around this.

We are just in the brainstorming phase of things right now. The idea is to fire a command to the ASG to spin up instances which will consume a SQS queue to generate documents (tens of thousands) then somehow when the job is done it will fire a command to spin the ASG down to zero.

If this is a batch processing job, it makes it much easier and you don't need a ASG for this at all. But this is a simple fixed infrastructure design:

Your workflow looks something like this:

- A workload gets dumped into SQS
- a lambda is triggered that spins up and tags a preset number of linux boxes and the same number of windows boxes
- each windows box finds its linux "mate" via tagging and creates a secure connection
- linux boxes drain the queue and shove workloads to its windows mate for processing
- upon completion of the queue instances shut down and terminate

note that termination is optional. Since this appears to be a recurring task, you could just as easily save yourself some baking time by shutting them down but preserving the EC2 instances until they are powered up by the next batch.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Docjowles posted:

I feel better about my harebrained design now that a TAM stole my sweet idea came up with the same thing :v:

Careful, though. My idea came while in full vacation mode while waiting for my buffalo wings to arrive. I reserve the right to make fun of my own idea when I get back to caring start work mode again.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Nomnom Cookie posted:

Our experience with the C* backend was poor and I don't recommend it. Switching from C* to ES for span storage cut the storage CPU/memory usage approximately in half, cut collector CPU by about 90%, and fixed persistent congestion in the collectors' queues for our production Jaeger instance. Recent ES versions can do recovery in a reasonable way and clean up old indexes automatically, so in the few months since switching we've had zero problems after dialing in cluster and index settings. I can DM you the settings we ended up with (do recommend if you haven't used ES before, the out of the box experience with Jaeger is not good).

Can you send me the ES settings as well?

I’m always curious to know more about ES v. C activity.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Bhodi posted:

Could probably ask our TAM as well, but I don't know really the line between proserv and support.

Not responding directly to your question but more generally:

Always open a support case. You pay for support, why not use it?

Open a low severity general information case and select the web option.

Paste the body of your post into the case, click send and lean back, smug in a job well done.

In 1-2 days you will have a nicely formatted and annotated response with an answer to your question.

If you aren’t sure if you should open a support case, always err on the side of opening one. Please give us a chance to help you. We know a thing or two because we’ve seen a thing or two.


Hell- I work here and I open support cases when I don’t know something. Cloud Support Engineers are pretty good, yo.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

Protocol7 posted:

Trying to price out some cloud options for a project I'm on.

Basically, we will be generating tons of images and storing them. It'll be a responsive web interface, nothing fancy there. There will likely be a need for predicting neural network stuff but it's nothing super compute heavy.

So, I'm thinking:

EC2 for web servers/NN predictions, S3 for storing the image files, and CloudFront as a CDN.

Is that pretty standard, or am I missing something with AWS? It seems like they have like a million different products compared to someone like DigitalOcean so I'm kind of confused. Not reinventing the wheel here by any measure.

Is there some kind of guide out there for AWS dummies?

What is the “neural network stuff”?

Because I’d use lambda for compute, s3 for image storage AND web hosting and CloudFront for your CDN.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
You could also try Athen for S3 and skip all the processing.

Athena is simply a database-like wrapper for ordered files in S3.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

dividertabs posted:

*To rant, this kind of marketing- instead of technical- focused documentation is the main reason I roll my eyes every time I hear someone in AWS mention "customer obsession"

Triggered. I take this as an affront: The poo poo that my org does, the calisthenics we pull to bend over backwards for our customers is insane. We lobby for feature requests on existing services. We advocate for new services, we take the blame when a service falls short. We issue refunds when things so sideways. We inspect your poo poo to make sure it’s well-architected. We empathize when you ignore our advice and poo poo falls over and you blame us.

To base “customer obsession” on documentation is ridiculous. Yes our documentation could be better and is often out of date or incomplete. How’s yours?

But to judge our customer obsession on a generalized weakness of the IT industry is to say that apples are a terrible fruit because they eventually rot if left on a bowl on the kitchen counter.

Agrikk fucked around with this message at 15:07 on Apr 15, 2020

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
You can also set up an NFS share on the windows box and then rsync the NFS share to EFS mounted on a Linux EC2 host.


But back up a sec. How are the file appearing on the Windows box? Is it possible to redirect the location of those files and have them end us straight on an EFS mount point on EC2 Linux?

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.

deedee megadoodoo posted:

I've got a quick question about CloudWatch. We currently have 11 accounts and we're using the CloudWatch agent on our ec2 instances to ship system logs. The problem is we want a central location where we can view all of our logs. I was looking at doing this: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html and setting up a central logging account but I don't know how much of a pain that isto work with and maintain. Any thoughts?

It’s actually really straightforward once you get it set up the first time. It is a bit more work to work on (since you’ll need two browsers open for the two console sessions for the two accounts), but creating a central longing account with some compute and lots of storage means that everyone will get in the habit of dumping log files there and only there and you’ll always know where a given log stream will end up.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
Like anything else AWS, going cross account is a real PITA. In the early years, no one anticipated customers needing to open more than one account and now, decades later, it shows.

My constant refrain is to pull all the things into a central place and point your thing at that place. I recommend pulling logs from all your accounts into a single bucket and pointing Athena or elasticsearch at it, or push all logs into a database and add triggers to it, pull your trusted advisor checks into a database instead of checking them for each account, etc.

And yeah, cloudwatch can be really rough.

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
When I quit I’m issuing a sev1 trouble ticket (a sev 1 TT pages pretty much everyone pageable at the executive level) in return for my one ? email.

One ? Email = one Sev1 TT.

My boss’ boss’ boss told me over drinks that it is expressly forbidden. Which makes it all the more fun, huh?

Adbot
ADBOT LOVES YOU

Agrikk
Oct 17, 2003

Take care with that! We have not fully ascertained its function, and the ticking is accelerating.
Good luck in your loop!

Map all of your anecdotes to a leadership principle and you should do fine...

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply