Question: cloudshell persistence expiring warning

"Under the health dashboard, I am getting a warning that cloudshell persistence is expiring in a particular region.  The affected user is my root account.  I have opened cloudshell recently in the specified region, but the warning and affected user have not updated.  I'm not sure if there is more I need to do.  Do I need to run an EC2 instance or perform some other activity within the shell to reset the timer?FollowComment"

Answer: "0Simply start CloudShell with the appropriate IAM user, etc. and you should be good to go.https://docs.aws.amazon.com/cloudshell/latest/userguide/limits.html#persistent-storage-limitationsWith AWS CloudShell, you have persistent storage of 1 GB for each AWS Region at no cost. Persistent storage is located in your home directory ($HOME) and is private to you. Unlike ephemeral environment resources that are recycled after each shell session ends, data in your home directory persists between sessions.If you stop using AWS CloudShell in an AWS Region, data is retained in the persistent storage of that Region for 120 days after the end of your last session. After 120 days, unless you take action, your data is automatically deleted from the persistent storage of that Region. You can prevent removal by launching AWS CloudShell again in that AWS Region. For more information, see Step 2: Select a Region, launch AWS CloudShell, and choose a shell.CommentShareEXPERTRiku_Kobayashianswered 23 days ago"


Question: Regarding stopping application in M2 -bankdemo1(Mainframe Modernization)

"Hi, I am unable to stop the bankdemo1 application in M2 service can u help here please?Also while Importing dataset I am not getting option to Use data set configuration JSON file in an Amazon S3 bucket Can u pls help here?FollowComment"

Answer: "2Accepted AnswerOn your second point, I would suggest to go via CLI: type 'aws m2 create-data-set-import-task help' to obtain full guidance on doing what you ask forCommentShareDidier_AWSanswered 2 months ago1How do you stop your application: console or cli?CommentShareDidier_AWSanswered 2 months agopriyanka 2 months agoHi Didier i am using console but unfortunately its struck on starting and all options are disabled.Share1Hi,Please create an AWS support case for the issue with your M2 application. Also make sure to provide M2 Application ARN in the support case. In the meantime, recommend you to create another M2 application to continue with your task.AWS Support: https://aws.amazon.com/supportCommentShareArun_AWSanswered 2 months agopriyanka 2 months agoThanks arun, support case CASE XXXXXXXXX is already created. I have added these details there.*Edit: Removed Case ID — Ben G.Share"


Question: RDS PostgreSQL cascading replication for Fivetran integration (logical replication not working on replica)

"I'm trying to setup cascading replication from RDS PosgresSQL instances, using logical replication (test_decoding), that will be used by Fivetran.As I don't want to connect any 3-rd party tools to Primary database, I'm trying to setup logical replication on replica, so the flow will look like:Primary (RDS.Postres with HA) -> Replica (RDS.Postres RO replica) --(test_decoding)--> Fivetran.I've followed the steps from this article: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.FeatureSupport.LogicalReplication  (setup parameter & restart database).Seems logical replication was successfully enabled on Primary (wal_level = logical) but the same steps on replica are not working (wal_level = replica). I've tried with different PG versions as there was a mention, that cascading option is available since 14.1 - I'm currently using 14.2 with no luck.Is there anything more I need to enable in order to get this working? Or is such design not supported at all on Manged RDS PostgresSQL Replica?FollowComment"

Answer: 0Did you also enable the wal_level = logical on the replica?CommentShareJD-PostgresExpertanswered a year ago


Question: Wildcard for all controllers routes in REST API

"Hi team,is it possible to use a wildcard in REST API GW or we need to define each endpoint one by one ?ThanksFollowComment"

Answer: "0Not wildcards, but you can use greedy path. It looks like {Proxy+} and it catches all the resources from that point forward.CommentShareEXPERTUrianswered a year ago"


Question: Adaptive Capacity and Time Series Data

"I have time series data stored in a table where the primary key is a UUID and the sort key is a date.  Only data in the recent months are accessed frequently and all older data are rarely accessed.  According to https://aws.amazon.com/blogs/database/design-patterns-for-high-volume-time-series-data-in-amazon-dynamodb/, I should split my table into two tables where one has more capacity for the frequently accessed recent data and the other has less capacity for the rarely accessed older data to save cost by utilizing capacity efficiently.  However, after learning about adaptive capacity (https://aws.amazon.com/about-aws/whats-new/2019/05/amazon-dynamodb-adaptive-capacity-is-now-instant/ and https://www.youtube.com/watch?v=zUsJK5pe_A0), I am wondering if splitting the original table into two tables would still be ideal for cost/capacity.IIUC, DynamoDB tries to group items with the same primary key into the same partition.  If most of my UUIDs have many months of history, my partitions would have a lot of rarely accessed data grouped together.  In that case, it sounds like I would have a lot of wasted cost/capacity regardless of adaptive capacity.  Therefore, I should still split my original table into two tables.  Is that correct?FollowComment"

Answer: "0Thanks - we will follow-up with one of our developer evangelists on the best practice here.CommentShareAWS-User-6425534answered 3 years ago0Hi @yajaws,Get the following info from Alex (blog author):You are correct, some of the issues mentioned in the article are much less critical since the introduction of adaptive capacity, and especially since it became "instant" last year in May: https://aws.amazon.com/about-aws/whats-new/2019/05/amazon-dynamodb-adaptive-capacity-is-now-instant/.Also, it's worth mentioning that if you are using on-demand pricing you don't even have to worry about capacity at all, so the overhead of splitting into multiple tables may not be worth it.But, if you are using provisioned capacity you'll need to estimate RCU's and WCU's. In high-throughput scenarios you may still benefit from multiple tables as you don't want writes to be throttled and at the same time you don't want to over-provision reads.A "hybrid" solution could be enabling on-demand pricing only on older tables whose data is read rarely, and keeping provisioned capacity on the current table where you'll have sustained high-throughput (writes). That should allow you to optimize for cost.I hope this is useful.AlexCommentShareAWS-User-6425534answered 3 years ago0Thank you very much Arturo and Alex.  I am marking your response as helpful and the question as answered.  Have a great day.Edited by: yajaws on Mar 9, 2020 5:17 PMEdited by: yajaws on Mar 9, 2020 5:18 PMCommentShareyajawsanswered 3 years ago"


Question: API Gateway and a FW Appliance will one do all

"We are migrating most of our on-prem to AWS, but will have  a VPN connection between them.Traditionally we have used fortigate FWs on premise which act as the GW to all traffic from the internet.A lot of our customers connect to APIs and websites we host.On-prem the APIs  use the  KONG GW behind the FortiGate's and for the Websites we use a NLB behind the Fortigates.I'm stuck between the decision of using a API gateway with Cloud Front alone or using a FW appliance in front of the API GW.The API GW only deals with HTTP & HTTPS traffic, hence for other services we may be putting in AWS I would have thought we would need a FW appliance.As the AWS account will be dealing with Ingress Internet traffic, we will need traffic inspection which both solutions provide.We will also be creating multiple VPCs for DEV, ITG and Prod. So I was looking at the GWLB so we could also create a Security VPC with FW Appliances that could serve the different VPCs for Ingress and Egress traffic.Is it normal to want to use a FW appliance and API GW at the same time. I see no examples on the internet.I'm aware you can put a WAF device between Cloud Front and the API GW and I'm also aware you can put you API GW behind a FW Appliance in a private subnet.I just want to follow best practice. Surely an API GW will not do everything for me, what about all the other services/protocols which maybe in use.The API GW will be needed, but I'm also thinking I will need a FW Appliance.RegardsFollowComment"

Answer: "0There's a lot to unpack here and this answer won't do it justice - I strongly recommend that you reach out to your local AWS Solutions Architect who can have a conversation with you in depth about this. If they can't, they can find a networking expert who can. That said:I would always use an API Gateway instead of a firewall for API Gateway "type tasks" for many reasons. First, API Gateway is scalable and you only pay for what you use. You also get very find-grained controls down to the method level. You can modify requests and check for specific attributes - all without scaling your back end.But: If you're dealing with other types of traffic (non HTTP) then a firewall might be the best choice.You're right, API Gateway won't do everything for you. But neither will a firewall.CommentShareEXPERTBrettski-AWSanswered a year ago"


Question: "Forces, impulses, acceleration and creating a simple harmonic oscillator"

"Hello, in the past couple of days I've been trying to create a simple harmonic oscillator in accordance to basic physics with the help of @REDACTEDUSERWe've been trying different approaches to the problem but none seem to work fine.Right now we're trying to determine how to get the combined force acting on a rigid body using:pe_status_dynamics physicsStatus;EBUS_EVENT_ID(GetEntityId(), LmbrCentral::CryPhysicsComponentRequestBus, GetPhysicsStatus, physicsStatus);but it seems to be too high - if we set an impulse action:pe_action_impulse impulseToApply;impulseToApply.impulse = -1 * physicsStatus.a * m_mass * deltaTime; EBUS_EVENT_ID(GetEntityId(), LmbrCentral::CryPhysicsComponentRequestBus, ApplyPhysicsAction, impulseToApply, false); // Apply the impulse to the object.that should be enough to have the body be at rest (no total acting forces per time step since F = a*m and the total change in momentum at the time would be deltaT * F thus cancelling out)but it seems like that's not the case, physicsStatus.a reports a value of 0.0 , 0.0 , -13.0 after converted to AZ::Vector3 while in free fall and around -5.45 when on the ground. This is obviously wrong and thus brings me to my question - is there a way to know the total acceleration or sum of forces on a rigidbody with accuracy, and if so how should one get it?P.S if anyone wants the piece of code that calculates the force required for the oscillator:m_oscillationOffset = (m_originationPoint.GetPosition() + (m_oscillationRadius * AZ::Vector3(0, 0, 1)));forceToApply = ((m_entityTransform.GetPosition() - m_oscillationOffset) * -1 * (m_mass / pow(m_oscillationPeriod, 2) ) * 4.f * pow(AZ::Constants::Pi, 2));impulseToApply.impulse = AZVec3ToLYVec3(forceToApply * deltaTime - LYVec3ToAZVec3(physicsStatus.a) * m_mass * deltaTime); // LYVec3ToAZVec3 converts an AZ Vector3 to a CryEngine Vec3_tplFollow"

Answer: "0Accepted AnswerOne last update!Finally it works, apparently there's a simulation variable called "dampingFreefall" on each physical entity, if you set it to 0 you'll get no damping on it which means accurate physics! if you do want some damping you should set this to no more than 0.01 and preferable 0.001 or around that.Do note I also changed the values of "gravity" , "gravityFreefall" and "damping" to 0 (or the zero vector) which means there's no gravity and no damping at all, even when colliding.Added is the updated source of this future GEM that encapsulates the physics engine and lets programmers in both C++ and Lua to add their own force components (the ones that apply forces) with ease.Copal v0.1.0 DownloadSharerePost-User-2315619answered 6 years ago0Hello everyone, I'm posting here once more with the findings from the experiments I ran today:1.) Rigidbodies and Buoyancy -When using a rigidbody the default values in the buoyancy tab apply to "air" as well, that means that having a very low density object (like a 1m sphere with a mass of 10 and below) will cause the body to experience a big buoyant force which is comparable to it's weight - I suggest that the name will be changed to "Air Density" or "Medium Density" such as to avoid further confusion.2.) Connecting to the PhysicsSystemEventBus -In the YourClass.h file:Add the following line at the top of the file:#include "..\..\..\Code\Engine\LmbrCentral\include\LmbrCentral\Physics\PhysicsSystemComponentBus.h"Make your class to be a child of the PhysicsSystemEventBus :class YourClass: public LmbrCentral::PhysicsSystemEventBus::HandlerAdd following function declarations to the fie:void OnPrePhysicsUpdate() override;void OnPostPhysicsUpdate() override;In the YourClass.cpp file:Connect to the bus when you need to - for example, on activation:void YourClass::Activate(){LmbrCentral::PhysicsSystemEventBus::Handler::BusConnect();... }Implement the functions we declared earlier:void YourClass::OnPrePhysicsUpdate(){...}void YourClass::OnPostPhysicsUpdate(){...}3.) Physics Inaccuracies / Reporting Inaccuracies -While testing various scenarios I've found that the reporting of acceleration using some methods is misleading, I've tested objects with a wide range of densities and with a wide range of "water density" and "water resistance" values - from objects that fall without much interference to objects that float upwards as a result of buoyancy. The measurements of the acceleration were taken in a couple of ways, first there's the acceleration calculated by the change in velocities between frames:pe_status_dynamics physicsStatus;EBUS_EVENT_ID(GetEntityId(), LmbrCentral::CryPhysicsComponentRequestBus, GetPhysicsStatus, physicsStatus);PrintVector3 (" acceleration = " , (LYVec3ToAZVec3(physicsStatus.v) - lastV )/deltaTimethis metric seemed to be reporting the correct acceleration at each frame, even when the object was still, but it is not useful for measuring specific forces like gravity.The 2 ways I found unreliable in reporting acceleration were:EBUS_EVENT_ID_RESULT(m_acc, GetEntityId(), LmbrCentral::PhysicsComponentRequestBus, GetAcceleration);and:m_acc_2 = physicsStatus.aThese 2 methods both report the same values- (0.0,0.0,-13.0) at free fall and (0.0,0.0,-5.45) while on a stable platform, these values are reported even if the object itself is floating upwards because of buoyancy or hovering because of an AddImpulse event called on the object.4.) Suggestions -a.) Adding an "ApplyInstantaneousForce" event to the PhysicsComponentRequestBus that will change the acceleration and velocity of the object. can be easily implemented by using the AddImpulse event and just multiplying by a time factor behind the scenes.b.) Adding "GetCurrentForces" and "GetCurrentImpulses"events to the PhysicsComponentRequestBus that will give the user the ability to counteract specific forces and Impulses on the rigidbody.c.) Moving towards a more Force-centered physics system. In most everyday uses physicists tend to use forces more than Impulses and so do most everyday people, moving to a force-centered physics system will make the system more accessible and flexible.I hope you can see that this subject is close to my heart, I'll be very happy to answer questions about physics and the possibilities of implementation if asked and I hope to help and make Lumberyard a better, more flexible and accessible engine.SharerePost-User-2315619answered 6 years ago0Ok so a small update, apparenly the "(0.0,0.0,-5.45) while on a stable platform" was only true for a small part of possible cases - when the mass was around 10 and with water density at 1 and it scales inversely with mass, at high densities/masses or low water densities it would drop to 0.At the start it made me think that it was showing the largest acceleration but that didnt seem to change from -13 even when it wasnt on solid ground and floating up with considerable acceleration due to high water density values.This is all around weird, I'd love if some people from the Lumberyard team would come in and help us understand the overall system.seems like even when I'm trying to cancel out gravity it leaves it with a small upwards force and then it invalidates all my other calculations that assumes 0 natural accelerationSharerePost-User-2315619answered 6 years ago0Hey @REDACTEDUSERSharerePost-User-8353690answered 6 years ago0Ok so further developments!I have spend the last couple of days creating a wrapper to the current physics engine using components, every physical entity will get a ForceAggregator Component and every source will get it's own component (of the appropriate type).The core is complete and I have created a simple oscillator component to tug on an entity towards the position of the component entity but for some reason the while the forces are correct in their direction and the magnitude to achieve the correct oscillation radius and period the entity is slower than desired, up to 2 m/s after the first pass through the position of the oscillator component.I'll add the code for the components with all the appropriate waf, core files and level files to help you debug this issue, needless to say I've been setting the water resistance and density to 0 on the rigid body.The Files of the new components (future GEM)SharerePost-User-2315619answered 6 years ago0So awesome! I shared this with our leadership team and they were super impressed as well! Excellent!SharerePost-User-8353690answered 6 years ago0What is the replacement for ApplyPhysicsAction in the new buildEBUS_EVENT_ID(GetEntityId(),LmbrCentral::CryPhysicsComponentRequestBus,ApplyPhysicsAction, impulseToApply,false);// Apply the impulse to the object.I have LmbrCentral::PhysicsComponentRequestBus instead of LmbrCentral::CryPhysicsComponentRequestBusSharerePost-User-4778853answered 5 years ago"


Question: How to Get Default Account Password Policy Using AWS API ?

"Hello Community,We are using this APIs https://docs.aws.amazon.com/sdk-for-go/api to Get Account Password Policy but we are not able to discover default password policy with this API , can anyone help me out which API is used to discover default password policy ?Thanks.FollowComment"

Answer: "0The API to get the account-level password policy is IAM GetAccountPasswordPolicy (https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetAccountPasswordPolicy.html)The relevant portion of the Go SDK is: https://docs.aws.amazon.com/sdk-for-go/api/service/iam/#IAM.GetAccountPasswordPolicyCommentShareAdrian_Manswered 9 months agorePost-User-2723897 9 months agoI have Default AccountPasswordPolicy in My Account When I Execute this https://docs.aws.amazon.com/sdk-for-go/api/service/iam/#IAM.GetAccountPasswordPolicyabove SDK, It didn't give me DefaultAccountPasswordPolicy Data But If I Create any custom AccountPasswordPolicy than it Responds with CustomePolicy Data. So Basically I want to Get DefaultAccountPasswordPolicy, So How Can I Get Using Go SDK ?Share"


Question: Passing parameters to the Glue Workflow using Python

"I'm trying to run a Glue Workflow from the lambda. According to this documentation there is a parameter RunProperties. So, I'm trying to run the workflow like this:newRun = glue.start_workflow_run(Name = 'MyWorkflow', RunProperties = { 'key1': 'value1' })But getting the error:[ERROR] ParamValidationError: Parameter validation failed:Unknown parameter in input: "RunProperties", must be one of: NameIt looks like it waits only one parameter Name but not RunProperties.The question is: How can I run my workflow with parameters from a lambda function?Some additional information:What I'm trying to achieve here is to run a Glue Workflow when a zip file uploaded to S3. I don't want to run a crawler because it's redundant here. When a zip file is uploaded to S3, a lambda is started and from it I want to start the Glue Workflow.FollowComment"

Answer: "1Accepted AnswerHi, @AlexI tried and encountered the same problem as you.As a workaround, you can put the parameters immediately after using the RunId of the workflow started without properties.newRun = glue.start_workflow_run(Name = 'MyWorkflow')updateRun = glue.put_workflow_run_properties(    Name = 'MyWorkflow',    RunId = newRun['RunId'],    RunProperties = { 'key1': 'value1'}    )Maybe this is a boto3 issue.I think I can report this issue...CommentShareEXPERTiwasaanswered a year agoiwasa EXPERTa year ago@AlexI then looked into Boto3.Apparently, the Run Properties parameter is available in the latest version of Boto3.However, since the Boto3 version of Lambda is old, you can pass parameters with start_workflow_run by creating and using a Lambda layer that packages the latest Boto3.Share"


Question: Gzip compression not used in all files.

"Hello there,today we noticed that some files(not all) are not gzip'ed although the client request the gzip version.Here are two examples, one that is gziped and the other that is not. Both of these files are on the same bucket, from the same origin, with the same properties.Gziped: https://js.chatservice.co/v0/tracker.jsNOT gziped: https://js.chatservice.co/v0/click-chat.jsCloudfront has Compress Objects Automatically to Yes.We are not really sure what to check next to be able to serve all files gziped.Any help would be greatly appreciated.Best,ThanosEdited by: ThanosDi on Jul 17, 2019 12:27 AMFollowComment"

Answer: "0Accepted AnswerThere you go!https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html"CloudFront determines whether the file is compressible: ... The file size must be between 1,000 and 10,000,000 bytes."Also, depending on cache settings, don't forget to Invalidate between tests.CommentShareLily72811answered 4 years ago0Hi Thanos,Be sure your source files on S3 have 'Cache-Control' AND 'Content-Type' metadata set (under properties).  For content-type for javascript, I believe use value:   text/javascriptIf I recall correctly, this must be set for compression to work.If you have made changes (from above, or just trying things before), be sure to invalidate the path in CloudFront:https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.htmlInvalidation is required if any changes on s3 or it will drive you nuts - making changes and nothing happens.Hope this helps.  Let me know if it works or not.CommentShareLily72811answered 4 years ago0Thank you Lily.I checked both files and they both have the same metadata(only content-type: application/javascript)Both files are the same in terms of metadata, how they were uploaded, where they are hosted, etc. the only thing that change is the size.Is it possible that the click-chat file is not gziped due to the low file size? (Size 841.0 B) compared to tracker (Size 68.3 KB) that is served gziped?CommentShareThanosDianswered 4 years ago"


Question: Unable to use domain after transfering to another aws account

"I recently transferred a domain from aws account to another aws account using aws cli.Now in route53, Domain name status code is empty. I created a hosting zone but cannot verify my SSL certificate created with certificate manager. I tried to link the domain to a elastic beanstalk URL, but it's also now working. It seems to be some problem with route53, but can't figure it out.FollowComment"

Answer: "0Hello there,I understand that you transferred a domain from an AWS account to another AWS account using the AWS CLI and now in Route53 the domain name status code is empty and you cannot verify your SSL certificate created with certificate manager.Common problems that could cause your domain name status code to not show in Route53 include:You didn't click the link in the authorization emailThe authorization code that you got from the current registrar is not valid"Parameters in request are not valid" error when trying to transfer a .es domain to Amazon Route 53In order to resolve any of the problems mentioned above, please refer to reference [1].Please take note that when you transfer a domain from one AWS account to another, Route 53 doesn't transfer the hosted zone that is associated with the domain. DNS resolution isn't affected if the domain and the hosted zone are owned by separate accounts, so transferring the hosted zone is optional. For information about transferring the hosted zone to another AWS account, see reference [2].If your domain is unavailable on the internet, please see reference [3] for common reasons and their resolutions.Common problems related to not being able to verify your SSL certificate include:The certificate is not valid for the name of the serverResolution would be to check the domain that you're accessing, and then check the domain names included in your certificate. You can view the domain name using your browser and by checking the certificate details. The domain in the URL must match at least one of the domain names included in the certificate.The certificate is expiredResolution would be to issue or import a new certificate. After a new certificate is issued, confirm that your DNS records are pointing to the AWS resource, such as a load balancer, where the ACM certificate is used. Please  see reference [4] for more information.The SSL/TLS certificate for the website is not trustedResolution would be to update your browser to the latest version, or try to access the domain from a different computer and browser. If you imported a self-signed certificate using AWS Certificate Manager (ACM), then some browsers can't trust the certificate. Please see reference [5] for more information.Your connection is not fully securedTo resolve this error, update your source code to load all the resources on your page over HTTPS.If none of the above mentioned probable causes and resolutions are not working, you can try to transfer your domain to another registrar and you can get the authorization code through the Route53 console by following the steps below:Navigate to the  Route53 console pageClick on ‘Registered domains’ section on the left side navigation pane in the Route 53 console.Click on the domain name to pull up the domains information page.Click on ‘Get code’ under the ‘Authorization Code’ sectionReferences:[1] https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/troubleshooting-domain-transfer-failed.html[2] https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-migrating.html[3] https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/troubleshooting-domain-unavailable.html#troubleshooting-domain-unavailable-transferred-domain-wrong-name-servers[4] https://docs.aws.amazon.com/acm/latest/userguide/troubleshooting-renewal.html[5] https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.htmlI hope this helps but if it does not, you can provide your domain name for a further investigation.CommentShareAsenathianswered a year ago"


Question: ci/cd code deploy  for reactjs website localhost:3000 refused to connect

code deploy is successfully integrated but when iam accessing the apllication iam getting localhost:3000 refused to connect in ubuntu server even after giving all the port permissionsFollowComment


Question: Root Account Got Hacked and Email Changed

I have a personal AWS account I use for school and today received an email that my root email address for the account changed. How would I go about resetting the email back to the previous email to regain access to my account?FollowCommentJoey 3 months agoI'm experiencing the exact same situation. I also opened a support request using the form https://support.aws.amazon.com/#/contacts/aws-account-support roughly three hours ago using my original account's email and have not heard anything back yet - not even an email confirmation. Commenting here for visibility and to follow this threadUPDATE I followed what the user 'Liberty Brands' said in this thread (https://repost.aws/questions/QUuB6WnPtbSHGeQ8vQjBVqNA/root-account-hacked-and-email-changed) and was able to get my account backShare

Answer: 0HelloOpen a support request using this form: https://support.aws.amazon.com/#/contacts/aws-account-supportCommentShareEXPERTMatt-Banswered 3 months agobwalheim1205 3 months agoJust sent in one with my original accounts email. Do you know what the response time is usually on these type of requests?Share


Question: cannot detach volumes

"I have 2 volumes, not attached to any instance, neither of which I can delete. detach, force detach do nothing. I have no instances of any type, am closing down my aws setup as it is no longer required. apart from these 2 resources, everything else has been released/terminated.vol-321dc85bvol-7a8d5913both in eu-west-1aFollowComment"

Answer: "0The status on both volumes is "in use" except there are no attached instances displayed. I have no snapshots or machine images. I have no instances either for that matter. Baffled as to why it claims in use yet attached to nothing. All I have now is these two volumes.CommentShareAWS-User-8444379answered a year agoFrancisco_L SUPPORT ENGINEERa year agodoes the command aws ec2 describe-volumes --volume-id <volume-id> show an instanceId under the attachments section? If nothing is shown, the status on the console might be inaccurate. If that's the case, I would recommend opening a support case with the Account and billing team, as your main objective is to close down the account.Sign in to the AWS Management Console at https://console.aws.amazon.com/In the upper-right corner, choose Support, and then choose Support Center.Choose Create case.Choose Account and billing supportShare0Hello! I would recommend taking a look at the column "Volume State" shown in the Volumes console :https://console.aws.amazon.com/ec2/v2/home?region=eu-west-1a#VolumeDetails:volumeId=vol-321dc85bIn order for the volume to be deleted, the Volume State must be "Available". If you notice that the current state is "Available" and still can't delete it, ensure that your account has the IAM permission ec2:DeleteVolume, which you can read more on this link https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeleteVolume.htmlIf you use the AWS command line interface (CLI), you can attempt to delete the volume via the CLI and take note of the output message you receive, which will be helpful to troubleshoot. For example:aws ec2 delete-volume --volume-id <volume id>For more information on how to use the CLI, please visit https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.htmlSometimes, volumes are associated to an Amazon Machine Image (AMI) or to a snapshot. Please check if you have an AMI taken as a backup from any instance, and also if you have any snapshots taken.To view the snapshots, go to https://console.aws.amazon.com/ec2/v2/home?region=eu-west-1a#Snapshots:To view Amazon Machine Images, go to https://console.aws.amazon.com/ec2/v2/home?region=eu-west-1a#Images:visibility=owned-by-meI hope the information above was helpful. Please let me know if you have any additional questions.CommentShareSUPPORT ENGINEERFrancisco_Lanswered a year ago"


Question: Api Gateway with Lambda Integration Failure

"Most of time the request becomes success where my backend is deployed in Lambda and request is made through client to API gateway to Lambda. Randomly, Api gateway shows HTTPError **500 Internal server error INTEGRATION_FAILURE. **I looked cloudwatch and X ray but couldnot figure out what is causing this. Out of 1000 requests, sometimes 400 requests are success with 200 and remaining requests with Internal server error.FollowComment"

Answer: "0I would recommend enabling execution logs on API Gateway and check the logs there for any failures. I would guess that it has something to do with the format of the response being sent from the Lambda function.CommentShareEXPERTUrianswered a year agoJohn Vold a year agohttps://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-troubleshooting-lambda.htmlIs this what you're referring to or something different?ShareTechxonia a year agoI have enabled execution logs on Rest API gateway. While I send 500 requests through locust for same endpoint, more than 60 % comes HTTP 500 error and remaining only success. Here is the error logIP ADDRESS- - [05/Jan/2022:02:05:59 +0000] "POST /{proxy+} HTTP/1.1" 500  ID-Internal server errorINTEGRATION_FAILUREI have followed the link you shared and above error comes.Share0This problem is solved by increasing quota for concurrency.CommentShareTechxoniaanswered a year ago"


Question: Pinpoint Email: CreateConfigurationSetEventDestination API Issue (PHP)

"I'm trying to create an event destination for a configuration set using the https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-pinpoint-email-2018-07-26.html#createconfigurationseteventdestination but it always saying that the Pinpoint Application that I'm trying to add does not exist. I can confirm that the Pinpoint application does exist and is active. The API and Pinpoint also use the same region and account and using the CLI to create it works fine.Here's the example payload that I'm passing to the endpoint:[       'ConfigurationSetName' => 'test,                'EventDestination'     => [                    'Enabled'             => true,                    'MatchingEventTypes'  => ['CLICK'],                    "PinpointDestination" => [                        "ApplicationArn" => 'arn:aws:mobiletargeting:{REGION}:{ACCOUNT_ID}:apps/{ProjectId}',                    ],                ],                'EventDestinationName' => 'test',]The result is:{"message": "Could not find the Pinpoint application: 'arn:aws:mobiletargeting:{REGION}:{ACCOUNT_ID}:apps/{ProjectId}'" }Does anyone experience having similar issue with this particular endpoint?FollowComment"

Answer: "0Hello,Since you are able to create an event destination with the help of CreateConfigurationSetEventDestination CLI command as well as via using console, it doesn't seem to be an IAM or policy related issue.My suggestion here would be to go through you Lambda code once more and check the configuration of configuration set and event destination. As BadRequestException generally mean that the request being made does not follow the proper format or is having wrong set of data. Refer below documentation for creating configuration set[+] https://docs.aws.amazon.com/pinpoint-email/latest/APIReference/API_CreateConfigurationSet.htmlFurther, if you believe the API request is being made properly via your code and is still giving this error, then I would recommend you to open a support case with AWS for further information. If a support case has already been created please be assured we will get back to you and assist you in the best way possibleCommentShareTanya_Ganswered 6 months agorePost-User-6922654 6 months agoYep, a support case has been created. I was certain that I'm passing the correct (and existing) Pinpoint ARN on the endpoint.I've also ruled out the following possible cases just to make sure I did not mess up the configuration:a. I've checked the regions between the session of the API I'm using vs the region where the pinpoint application is located. Both of them are using "us-east-1" since I was able to get the region from the session using the .getRegion method, plus the endpoint will return an error that you are finding a Pinpoint application from a different region if they were different.b. I've also tried using different Pinpoint Applications but all of them return the same results saying that the application does not exist.c. The Pinpoint ARN format as I've got the value from the get-application CLI command and the endpoint will return an error if the ARN has an invalid format.Share"


Question: EC2 vs Fargate for periodic workloads

Context:Workload will be periodic and predictableDon't want to go with on-demand EC2 since most of the time it won't be active.Questions:How we can only spawn an ec2 when we need and close it after it's done with a task?Would fargate be a better choice for this situation?FollowComment

Answer: "0AWS Batch would be highly recommended here.CommentShareRajarshi_Danswered 8 months ago0Also if the processing does not take long (less than 15 minutes), you can consider using Lambda functions - https://aws.amazon.com/lambda/faqs/If your processing can take longer than 15 minutes, you can also consider AWS Step Functions Standard Workflows - https://aws.amazon.com/step-functions/faqs/Both Lambda functions and Step Functions are completely serverless. You don't have to worry about provisioning any infrastructure.CommentShareEXPERTIndranil Banerjee AWSanswered 8 months ago"


Question: Lightsail Container Linux Deployment fails

"Hi,I've tried to deploy an Alpine Linux (AMD64) on a Lightsail Container with one Node and 1GB of RAM.After starting the deployment I get the following error message:[24/Aug/2022:13:08:44] [deployment:3] Creating your deployment[24/Aug/2022:13:09:55] [deployment:3] Started 1 new node[24/Aug/2022:13:10:59] [deployment:3] Started 1 new node[24/Aug/2022:13:11:57] [deployment:3] Started 1 new node[24/Aug/2022:13:12:20] [deployment:3] CanceledAny ideas why this happens? It happens with other Linux distributions too , like Ubuntu 20.4It runs locally on my docker installation though.Best Regards,FrankFollowComment"

Answer: "0Hello,This appears to be a duplicate of your post https://repost.aws/questions/QU8i3bF2BZQZiwKfxGw5CfgQ/how-to-deploy-amazon-linux-on-a-lightsail-container-service in which Syd provided a really informative answer.If the issues are different, please provide more details.CommentShareAWS-Andyanswered 9 months ago"


Question: DRAM zeroed out by fpga-clear-local-image?

"Hi, our application relies on DRAM being cleared (zeroed out) before starting execution on the FPGA. So far, we've been manually zeroing out DRAM through our own mechanism, but I noticed that the description of fpga-clear-local-image states that it "Clears the specified FPGA image slot, including FPGA internal and external memories that are used by the slot."Does this mean that if we do fpga-clear-local-image followed by an fpga-load-local-image, we can rely on DRAM being zeroed out when the AGFI we load starts running?Relatedly, can we also rely on URAMs being zeroed out when going through the same process (clear then load)?Edited by: user2 on Nov 7, 2019 10:23 AMFollowComment"

Answer: "0Accepted AnswerHello,The DRAM is guaranteed to be "cleared out", which means the contents will be wiped, but this does not guarantee the data is zero.  UltraRAM is initialized to 0 on CL load (note no clear is needed).Thanks,-AsifCommentShareawsasifanswered 4 years ago"


Question: Lightsail down?

"For the last 30 minutes, whenever I open the Lightsail console I see the following Error message:** "We're having trouble displaying your resources. Please try again in a minute."**My VPS is running a web server and currently is unreachable (returns status 502).I am not sure if I did something wrong or if it is an AWS failure incident and if I can do anything to fix it.I have very sensitive data on my VPS and I would like to know if I can recover them.FollowCommentGeroen_AWS a year agoHello, thank you for your question. If you want to check if AWS Services are running healthy, you can always refer to the Service Health Dashboard: https://status.aws.amazon.com/ . You can also access a personalised version in your console, via https://phd.aws.amazon.com/phd/home , to understand what the impact - if any - there is on your resources.With the information above, it's hard to reconstruct what could have gone wrong. Did you by any chance perform any actions on the server prior to noticing the failure?Share"

Answer: "0Hello,Thank you for using Lightsail.That message indicates that our web application has retried calls to the server and is unable to load data about your resources. Some of our team members have seen that when they enter a wifi dead zone and can't connect to the internet.If this issue persists after you've ensured your network connection is stable, reach out to customer support. You can assist us in pinpointing this issue by providing them with a recording of the failing network calls (known as a HAR) and having it escalated to the Lightsail Frontend team. Do not post HAR files in a publicly accessible venue to avoid sharing personal data.Here are the instructions for Chrome for your reference:Open Google Chrome and go to the page where the issue is occurring.Look for the Vertical ellipsis button ( ⋮ ) and select More Tools > Developer Tools.From the panel opened, select the Network tab.Look for a round Record button in the upper left corner of the tab, and make sure it is red. If it is grey, click it once to start recording.Check the box Preserve log.Click the round Clear button (on the right-hand-side of the Record button) to clear out any existing logs from the Network tab.Refresh the page to reproduce the issue that you were experiencing before. The network requests will be recorded as you reproduce the issue.Once you have reproduced the issue, in Chrome, click Download button (or right-click in one of the rows under the Name column under the Network tab, and then save the file to your computer: Save all as HAR with Content).Regards,GabrielCommentShareGabriel - AWSanswered a year ago"


Question: "MySQL audit logs returning very little information, and none of it meaningful"

"I'm experimenting with the MariaDB Audit Plugin, on an RDB MySQL 5.7.33 instance. And I don't appear to be getting much.My settings areSERVER_AUDIT_EXCL_USERS-SERVER_AUDIT_FILE_PATH/rdsdbdata/log/audit/SERVER_AUDIT_EVENTSCONNECT, QUERYSERVER_AUDIT_FILE_ROTATIONS-SERVER_AUDIT_QUERY_LOG_LIMIT1024SERVER_AUDITFORCE_PLUS_PERMANENTSERVER_AUDIT_INCL_USERS-SERVER_AUDIT_LOGGINGONSERVER_AUDIT_FILE_ROTATE_SIZE4When I look at the logs in the console, I see "audit/server_audit.log" and "audit/server_audit.log.1" through "audit/server_audit.log.9:"When I attempt to view any of them, all I see is something on the order of this:only a few very recent entries, none of them the slightest bit meaningful. And rather pointedly, absolutely none of the traffic I am personally generating is showing up.FollowCommentTouchtonecorp a year agoDays later, and still noting gets any bigger than a few hundred bytes, and it looks like the audit files are being constantly cleared and reset.Share"

Answer: "0Accepted AnswerTurns out I misunderstood the semantics of one of the option group parameters:I thought "SERVER_AUDIT_FILE_ROTATE_SIZE" meant to keep 4 rotations. Not to rotate as soon as it hit 4 bytes. Changing that parameter to 65535 and cycling the option group solved the problem.Maybe it's time for me to (as George Washington put it in a dispatch to the Continental Congress), "retire to the back-country, and live in a wigwam."CommentShareTouchtonecorpanswered a year ago"


Question: Media Live service in Java

"HelloI have to develop an application in Java where I have to use the service mediaLive with other aws services. In the documentation (https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/examples.html), I didn't find a code example for mediaLive to begin with it.Could you tell me how can I develop it or give me links that can help me in my task?Best regardsMariemFollowComment"

Answer: "0Hi Meriem,We are currently still in the process of improving and adding to our documentation but here are some example codes that show how to create an Internet Security Group, an Input and a Channel.private static String createInputSecurityGroup(AWSMediaLive client, String sourceCIDR) {System.out.println("Creating an input security group");InputWhitelistRuleCidr c1 = new InputWhitelistRuleCidr().withCidr(sourceCIDR);ArrayList<InputWhitelistRuleCidr> cidrs = new ArrayList<InputWhitelistRuleCidr>();cidrs.add(c1);CreateInputSecurityGroupRequest createISGRequest = new CreateInputSecurityGroupRequest().withWhitelistRules(cidrs).withTags(Collections.singletonMap("this_is", "an_input_security_group"));CreateInputSecurityGroupResult createISGResult = client.createInputSecurityGroup(createISGRequest);System.out.println("Input Security Group creation completed");return createISGResult.getSecurityGroup().getId();}private static String createInput(AWSMediaLive client, String isgId, String inputType) {System.out.println("Creating a input");CreateInputRequest createInputRequest = new CreateInputRequest().withName("Test").withType(inputType).withInputSecurityGroups(Arrays.asList(isgId)).withTags(Collections.singletonMap("this_is", "an_input"));CreateInputResult createInputResult = client.createInput(createInputRequest);System.out.println("Input creation completed");return createInputResult.getInput().getId();}private static String createChannel(ArrayList<String> inputList, AWSMediaLive client) {System.out.println("Creating a channel");NetworkInputSettings networkInputSettings = new NetworkInputSettings();InputSettings inputSettings = new InputSettings().withNetworkInputSettings(networkInputSettings);ArrayList<InputAttachment> inputAttachments = new ArrayList<>();for (String inputId : inputList) {InputAttachment inpAttach = new InputAttachment().withInputId(inputId).withInputAttachmentName("example.reference." + inputId).withInputSettings(inputSettings);inputAttachments.add(inpAttach);}// HLS output destinationArrayList<OutputDestinationSettings> hlsOutputDestinationSettings = new ArrayList<OutputDestinationSettings>() {{add(new OutputDestinationSettings().withUrl("https://example.com/a"));add(new OutputDestinationSettings().withUrl("https://example.com/b"));}};AudioCodecSettings audioCodecSettings = new AudioCodecSettings().withAacSettings(new AacSettings().withBitrate((double) 96000));AudioDescription audioDescription = new AudioDescription().withAudioSelectorName("default").withName("audio1").withCodecSettings(audioCodecSettings);VideoDescription videoDescription = new VideoDescription().withName("video1").withHeight(720).withWidth(1280).withCodecSettings(new VideoCodecSettings().withH264Settings(new H264Settings().withBitrate(4500000)));OutputGroup hlsOutputGroup = createHlsOutputGroup();EncoderSettings encoderSettings = new EncoderSettings().withTimecodeConfig(new TimecodeConfig().withSource("EMBEDDED")).withAudioDescriptions(audioDescription).withVideoDescriptions(videoDescription, frameCaptureVideoDescription).withOutputGroups(udpOutputGroup, hlsOutputGroup, frameCaptureOutputGroup);InputSpecification inputSpecification = new InputSpecification().withMaximumBitrate("MAX_50_MBPS").withCodec("HEVC").withResolution("SD");CreateChannelRequest createChannelRequest = new CreateChannelRequest().withName("TestChannel").withInputAttachments(inputAttachments).withDestinations(new OutputDestination().withId("utpOutputDestination").withSettings(udpOutputDestinationSettings),new OutputDestination().withId("hlsOutputDestination").withSettings(hlsOutputDestinationSettings),new OutputDestination().withId("frameCaptureOutputDestination").withSettings(frameCaptureOutputDestinationSettings)).withEncoderSettings(encoderSettings).withInputSpecification(inputSpecification).withTags(Collections.singletonMap("this_is", "a_channel"));CreateChannelResult createChannelResult = client.createChannel(createChannelRequest);System.out.println("Channel creation completed");return createChannelResult.getChannel().getId();}private static OutputGroup createHlsOutputGroup() {OutputGroupSettings outputGroupSettings = new OutputGroupSettings().withHlsGroupSettings(new HlsGroupSettings().withDestination(new OutputLocationRef().withDestinationRefId("hlsOutputDestination")).withHlsCdnSettings(new HlsCdnSettings().withHlsBasicPutSettings(new HlsBasicPutSettings()))// Redundant manifests.withBaseUrlManifest("http://example.com/manifest/a").withBaseUrlContent("http://example.com/context/a").withBaseUrlManifest1("http://example.com/manifest/b").withBaseUrlContent1("http://example.com/context/b").withRedundantManifest(HlsRedundantManifest.ENABLED)// No not use timed metadata with fMP4.withTimedMetadataId3Frame(HlsTimedMetadataId3Frame.NONE).withHlsId3SegmentTagging(HlsId3SegmentTaggingState.ENABLED));OutputSettings outputSettings = new OutputSettings().withHlsOutputSettings(new HlsOutputSettings()// Configure this channel with fMP4.withHlsSettings(new HlsSettings().withFmp4HlsSettings(new Fmp4HlsSettings().withAudioRenditionSets("program_audio"))).withH265PackagingType(HlsH265PackagingType.HEV1));// Do not specify an audio description when using fMP4Output output = new Output().withOutputName("HLS output").withVideoDescriptionName("video1").withOutputSettings(outputSettings);OutputGroup outputGroup = new OutputGroup().withName("HLS group 1").withOutputGroupSettings(outputGroupSettings).withOutputs(output);return outputGroup;}ZachCommentShareZacharyb-AWSanswered 2 years agoAWS-User-5967542 a year agohi, how to use MediaLive with output/destination as MediaPackage ?Share0Hi Mariem,Thank you for reaching out on the AWS MediaLive forums with this question.  Here is a link to the AWS Java SDK for AWS MediaLive.https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/medialive/AWSMediaLive.htmlPlease let me know if this is helpful,ZachCommentShareZacharyb-AWSanswered 2 years ago0Thank you zack for answering my question.I'm a beginner in aws services and I have to read all the documentation in details to know how using all these methods and theirs parameters to have a correct code for mediaLive service. Please, there isn't a complete sdk java code example for mediaLive as the the other services?regardsCommentSharemeriemiaganswered 2 years ago0Hi zackThank you very much. That helps me a lot.MariemCommentSharemeriemiaganswered 2 years ago0Do we have the sample code ready now?CommentShareMediaLiveLearninganswered 2 years ago"


Question: Newbie here. CNAME vs Alias

"I have a Domain say "www.example.com" which is hosted on Salesforce. I have a CNAME (www) record that points "www.example.com" to Salesforce Host Server. I do not have a IP address, so no 'A' Record. So far, it all works fine. The problem is "example.com" (naked domain) is a dead end for users. I was wondering that I could use Alias record that points "example.com" to "www.example.com". So to say both "example.com" and "www.example.com" both should point to the same Salesforce Host Server. But I see a note that got me confused.URL: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.htmlParagraph: Unlike a CNAME record, you can create an alias record at the top node of a DNS namespace, also known as the zone apex. For example, if you register the DNS name example.com, the zone apex is example.com. You can't create a CNAME record for example.com, but you can create an alias record for example.com that routes traffic to www.example.com (as long as www.example.com doesn't already have a CNAME record).My confusion -  "(as long as www.example.com doesn't already have a CNAME record)" got me offtrack. CNAME record for www.example.com has to exist, right? Along with CNAME if I also create a ALIAS record will that not solve my problem?FollowComment"

Answer: "1Alias record can point to other Route53 or AWS resources but not to external DNS names or IP addresses.What is meant by that "as long as..." is that the www.example.com record cannot be type CNAME but should instead be any other type of record such as A record pointing to an IP address or to an AWS resource.CommentShareEXPERTToni_Sanswered 9 months agoCorporate 9 months agoHi Toni. Thanks for your response.Can you explain this with an example? As I said, I am a newbie.I am working with a Domain and External Hosting Server only. Not with an AWS resource or an IP address. Is this possible?CNAME record: www CNAME pointing to Salesforce.XXXXXXXXXX.XXX.XX (Host Server)Alias record: 'A' record using the Zone APEX {DomainName.com} pointing to www.{DomainName.com}.Share"


Question: Internal services use ApiGateWay

"Hi, everyone! I have three internal services, is it possible for me to build my own service interact with the three services by apigateway?FollowComment"

Answer: "2Accepted AnswerIf you are asking if it is possible to use API Gateway only within your VPC(s)/account(s) (where callers are also internal) then API Gateway can be configured as a Private API, where only your VPC/accounts can interact with it. See here for an overview.Using Amazon API Gateway, you can create private REST APIs that can only be accessed from your virtual private cloud in Amazon VPC by using an interface VPC endpoint. This is an endpoint network interface that you create in your VPC.Using resource policies, you can allow or deny access to your API from selected VPCs and VPC endpoints, including across AWS accounts. Each endpoint can be used to access multiple private APIs. You can also use AWS Direct Connect to establish a connection from an on-premises network to Amazon VPC and access your private API over that connection.If you want to expose private services within your VPC to the public Internet, you might be looking for a Private Integration:The API Gateway private integration makes it simple to expose your HTTP/HTTPS resources within an Amazon VPC for access by clients outside of the VPC. To extend access to your private VPC resources beyond the VPC boundaries, you can create an API with private integration.CommentShareAaron Doddanswered 10 months ago0Yes you can. There are two different concepts to understand here:a) Creating a private endpoint for API Gatewayb) Having API Gateway access private resources inside a VPCFor the first, refer to this blog - https://aws.amazon.com/blogs/compute/introducing-amazon-api-gateway-private-endpoints/or refer to the AWS documentation - https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-apis.htmlFor the second, refer to this blog - https://aws.amazon.com/blogs/compute/understanding-vpc-links-in-amazon-api-gateway-private-integrations/or refer to the AWS documentation - https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-private-integration.htmlCommentShareEXPERTIndranil Banerjee AWSanswered 10 months ago"


Question: need help with workspaces

"Thank you in advance!I have a workspace and a worker who logs in every day.I need to retain the workspace but remove access from the worker.  The only option I see is to delete the instance, however I have saved work on the instance and configurations I dont want to delete and have to re-doI dont see a way to change/remove user or change password.  So not sure how to accomplish removing the user without deleting the workstation ??FollowComment"

Answer: "0Hey  alwayslearning123Unfortunately, you cannot retain your Workspace because before removing a user from a WorkSpace, you must delete the WorkSpace assigned to that user first.[1]But you can create a new WorkSpace instance and still keep your old data.Amazon WorkSpaces regularly takes snapshots of both root and user volumes when your WorkSpaces are healthy[2]. You can use these snapshots to recreate your new WorkSpace.[2]Please also note that deleting a WorkSpace is a permanent action and cannot be undone. The WorkSpace user's data does not persist and is destroyed. If you need further  help with backing up user data, contact AWS Support.I  hope this answers your question.RegardsBrendaReferences:[1]https://docs.aws.amazon.com/workspaces/latest/adminguide/manage-workspaces-users.html[2] https://aws.amazon.com/about-aws/whats-new/2019/09/amazon-workspaces-introduces-workspaces-restore-to-healthy-state/CommentShareBrendaManswered 2 years ago0thanks!CommentSharealwayslearning123answered 2 years ago"


Question: multi model endpoints in sagemaker?

"is there a list of containers documented somewhere , that support multi model endpoints ?FollowComment"

Answer: "2maybe this list can help youhttps://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.htmlfirst, choose your region then elect your algorithm then it will show you the docker registryCommentShareEXPERTsedat_salmananswered a month ago0Hi,For information about the algorithms, frameworks, and instance types that you can use with multi-model endpoints, see the official document. Note that it has both cpu and gpu back-end instances. You can always bring your own if not already supported.Hope it helps.CommentShareTina Qiananswered a month agoclouduser a month ago@Tina_Qian - thanks, i went through the documentation, but one thing is not clear to me, are we compressing two trained models into one zipped/tar file?ShareTina Qian a month agoActually not. Basically, the  SageMaker manages the lifecycle of models hosted on multi-model endpoints in the container's memory. Instead of downloading all of the models from an Amazon S3 bucket to the container when you create the endpoint, SageMaker dynamically loads and caches them when you invoke them. When SageMaker receives an invocation request for a particular model, it first routes the request to an instance behind the endpoint, then downloads the model from the S3 bucket to that instance's storage volume. Finally, it loads the model to the container's memory (CPU or GPU, depending on whether you have CPU or GPU backed instances) on that accelerated compute instance. If the model is already loaded in the container's memory, invocation is faster because SageMaker doesn't need to download and load it.Maybe the pictures from  https://aws.amazon.com/cn/blogs/machine-learning/save-on-inference-costs-by-using-amazon-sagemaker-multi-model-endpoints/ is easy to follow and understand.Hope it helps.Share"


Question: Deleting User - Do files remain?

I need to delete a user from our system access.  When I delete the user does all of their uploaded files remain in the system or do they delete too?FollowComment

Answer: "0Hi, deleting a user from IAM will not undo or delete the user's past actions. You do not have to worry about previously uploaded files being deleted.From AWS documentation, deleting a user removesThe userAny user group memberships—that is, the user is removed from any IAM user groups that the user was a member ofAny password associated with the userAny access keys belonging to the userAll inline policies embedded in the user (policies that are applied to a user via user group permissions are not affected)Any associated MFA deviceDocumentation for reference: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_manage.html#id_users_deletingHope it helps clarify your question :)CommentSharezwhuanganswered a year ago"


Question: "ECS: Should I use ALB healthchecks, container healthchecks, or both?"

"For ECS services that integrate with my ALB, should I be using the Load Balancer healthchecks or ECS container healthchecks? I'm currently using the ALB healthchecks, but am seeing a Health Status of Unknown in the ECS console (see attached image). I also noticed that ALB connected services are slow to register as healthy with my ECS cluster (compared to services that just use ECS container healthchecks). What is the way to perform healthchecks for ECS services integrated with ALB?FollowComment"

Answer: "0The status is UNKNOWN because the ECS health check is not defined.It is UNKNOWN as per specifications.https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.htmlIf you are using ALB health checks, there is no need to add ECS health checks as well.If the health check path accessed by the ALB health check check checks the normality of the application, then there should be no problem.If ALB is slow to become healthy, it may be a good idea to review the health check thresholds, etc.Incidentally, if both health checks are set, the task will be replaced if one of them becomes UNHEALTHY.CommentShareEXPERTRiku_Kobayashianswered 18 days ago0No need of setting up health checks for ecs container if ALB health check is already in place. Incase your ALB health check is slow then revisit your health check setting in the target group attached with your ALB and look for below.Healthy thresholdPathCommentShareRavi Shankeranswered 16 days ago0I've just been asking myself the same question.I'm sure the previous answers are correct that there is no strict requirement to add ECS health checks, but I absolutely hate that the ECS console is going to report a health status of UNKNOWN forever if I just rely on the ALB.Therefore I am planning to add the ECS health checks anyway.Would be great if AWS could make this a bit more intuitive, maybe add a status of NOT REQUIRED if the health checks are really not required.CommentShareSeverus Dentonanswered 16 days ago"


Question: It is possible to split the billing of the kinesis firehose into the different ones that we had

"Our billing increased by around 35% and we want to know how it is split it the billing by the different kinesis firehose. We are not able to do that, there exist a way to do it?We have been digging into the cost-management and impossible.Thanks in advanceFollowComment"

Answer: "1You would need to use Cost and Usage Report for this.For large accounts/organization we generally recommend creating the report on your Management Payer account (in case with Organizations with multiple accounts), and set it up with hourly granularity, include resource IDs, and use Parquet format so you could later easily query it with Athena.Though, if you have only one account, with limited amount of services that you use, you might decide that initially (to start with) you could create the report in CSV format, use either daily or monthly granularity, but still include resource IDs.The reports are delivered to S3 bucket that you choose or create. Note that it may take around 24 hours for the first report to get delivered, and it's not retroactive (you will only see the data in that report starting from this month and going forward). Then, if it's created in CSV format, you can just download it from your bucket and investigate. However, we recommend setting it up in Parquet format so that you could then easily query the report in Athena service, simply using SQL. It will contain columns related to all services that you use, including the column "resource ID". So, you'll be able to see how much each resource (within each service that you use) costs you.Some additional useful links from CUR documentation:querying CUR with AthenaCUR data dictionary with the list of possible columns and some sample valuesCUR use casesCUR query library with sample queries for AthenaCommentShareEXPERTNataliya_Ganswered 4 months ago"


Question: How to get the full list of words that Amazon Transcribe can recognize for a specific language?

"Hello everybody,in order to improve the transcription results, we're preparing custom vocabularies. We have a large corpus of text and would like to find all words in our corpus that are not yet in the vocabulary of Amazon Transcribe. Where do we find all words that Amazon Transcribe can recognize?Thank you in advance!Best regardsRustamFollowComment"

Answer: "1I know this doesn't answer your question directly but I'm wondering whether you have seen this https://aws.amazon.com/blogs/machine-learning/improving-speech-to-text-transcripts-from-amazon-transcribe-using-custom-vocabularies-and-amazon-augmented-ai/Might give you something to start from.CommentShareKishananswered a year agoRustam a year agoThank you for the link, @Kishan! It is still useful even it doesn't solve my question.Building up your custom vocabulary from low-confidence prediction is definitely a possible alternative.Share"


Question: EC2 Instance not connected to internet?

"HiI have a free tier EC2 Instance with Kali linux running on it, but for some reason I can't ping any website, I can't do apt update or apt upgrade and I can't install any python packages showing me an error in resolving name resolution.Can someone help? Thanks in advance.FollowComment"

Answer: 2Hi - Not very sure on your infra set up whether using Internet Gateway or NAT but these resource would help to troubleshoot more.https://aws.amazon.com/premiumsupport/knowledge-center/ec2-connect-internet-gateway/https://aws.amazon.com/premiumsupport/knowledge-center/ec2-internet-connectivity/CommentShareEXPERTAWS-User-Nitinanswered 8 months agoEXPERTIndranil Banerjee AWSreviewed 8 months ago


Question: Parameter store error in ECS

"We want to call parameter store values through our code dotnet application.We are seeing the below error in our ECS container logs.ParameterStoreHelper : Something went wrong ; The service returned an error with Error Code ParameterNotFound and HTTP Body: {"__type": "ParameterNotFound"}We are using the below code for the functionality.Dictionary<string, string> values = new();AmazonSimpleSystemsManagementClient client = new AmazonSimpleSystemsManagementClient(Amazon.RegionEndpoint.USWest2);var bucketName = client.GetParameterAsync(new GetParameterRequest { Name = "testbucketname", WithDecryption = true }).Result;values.Add("TestBucketName", bucketName.Parameter.Value);Could any one help us how we can resolve this issue and call parameter store values in our applicationThanks in advance,Anil Kumar V.FollowComment"

Answer: "0Accepted AnswerLooks like the app can't find a parameter...?Are you sure parameter is in this region you are calling?Do you app have an permission to access PS?"testbucketname" is the name of the parameter in parameter store right?CommentShareLuke Doroszanswered 25 days ago0Hello Luke, thank you for your reply, we have created parameter in the right region. our app has access to parameter store and "testbucketname"  is the name of the parameter in parameter store. Please let us know in case if we have missed anything related to configuration.CommentShareanil kumar vanswered 24 days ago0Does your task definition include a proper IAM role definition with permission for ssm:GetParameters for your parameter store?CommentShareLuke Doroszanswered 23 days ago0Check this out: https://medium.com/@niamhbgibbons/using-aws-parameter-store-for-ecs-application-secrets-99b8b0556ca8might be helpfulCommentShareLuke Doroszanswered 23 days ago"


Question: Device farm mshop automation : I am getting error related to chrome browser when I try to perform after webview switch

"Hello,I am executing mshop automation from my dev-desktop to device farm.When I perform webview switch and try to perfrom some action, I am getting below error :2023-04-06 14:42:27 [main] INFO  — [GET_TEXT] {SOFTWARE_TITLE_ON_DP} 187ms Value: 'Microsoft 365 Personal | 12-Month Subscription, 1 person | Premium Office apps | 1TB OneDrive cloud storage | Windows/Mac (Email delivery in 2 hours-No CD)'BeforeWebViewSwitchurl/dp/B08C85B28L2023-04-06 14:42:52 [main] INFO  — Switched context to amazon.in by type PARTIAL_URLWebview switch done/dp/B08C85B28L2023-04-06 14:42:52 [main] INFO  — [IS_PRESENT] {ADD_TO_CART} 90ms Value: 'true'org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: unknown error: operation is unsupported on Android(Session info: chrome=111.0.5563.116)(Driver info: chromedriver=2.38.552522 (437e6fbedfa8762dec75e2c5b3ddb86763dc9dcb),platform=Linux 3.13.0-170-generic x86_64)Build info: version: 'unknown', revision: 'unknown', time: 'unknown'I am currently using Public devices. I have created a project and then created a device pool with same.I am currently using the free device minutes for execution.Can somebody help me in resolving this.FollowComment"

Answer: "0Hello, thank you for sharing your query. I believe you are facing errors in performing webview switch in chrome driver.  You may try the below workaround which helps in installing the compatible Chrome Driver version to the Chrome Browser on the device :1. First, add the attached file 'chromedriver-new-wrapper.txt ' to the root of your test package zip file.2. Then, add the following code to your test spec file’s install phase in order to fix the $DEVICEFARM_CHROMEDRIVER_EXECUTABLE:      - chrome_web_version=$(adb shell dumpsys package com.android.chrome    | grep versionName | cut -d"=" -f2|sort |tail -n 1)      - >-        if [ $(echo $chrome_web_version | cut -d"." -f 1) -ge 70 ];        then          proper_chromedriver_version=$(curl -L https://chromedriver.storage.googleapis.com/LATEST_RELEASE_$(python    -c "import sys;print(\".\".join(sys.argv[-1].strip().split(\".\")[:-1]))" $chrome_web_version) 2> /dev/null )          curl -L "https://chromedriver.storage.googleapis.com/$proper_chromedriver_version/chromedriver_linux64.zip   " -o /tmp/chromedriver_linux64_new.zip 2> /dev/null;          unzip /tmp/chromedriver_linux64_new.zip -d /tmp >/dev/null;          mv /tmp/chromedriver $(echo "$DEVICEFARM_CHROMEDRIVER_EXECUTABLE"-orig);          rm -rf $DEVICEFARM_CHROMEDRIVER_EXECUTABLE;          cp $DEVICEFARM_TEST_PACKAGE_PATH/chromedriver-new-wrapper* $DEVICEFARM_CHROMEDRIVER_EXECUTABLE;          chmod +x $DEVICEFARM_CHROMEDRIVER_EXECUTABLE;          $DEVICEFARM_CHROMEDRIVER_EXECUTABLE -v;        else          echo "Defaulting to devicefarm chromedriver version";        fi;Content of  'chromedriver-new-wrapper.txt '  (create the file with below content) :#!/bin/bash# Wrapper for chromedriversighandler() {    pkill chromedriver-orig    exit}trap sighandler SIGINT SIGTERMDIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )LOG_FILE="/tmp/chromedriver_wrapper.log"WRAPPER=$( basename "${BASH_SOURCE[0]}" )POSTFIX="-orig"if [ ! -f $LOG_FILE ]then  touch $LOG_FILE  chmod 777 $LOG_FILEfiecho $DIR/${WRAPPER}${POSTFIX} $@ >> $LOG_FILE # Launch real chromedriver and parser on background so script could handle the signals{    $DIR/${WRAPPER}${POSTFIX} $@ 2>&1 | \    while read line ; do        echo $line        # echo $line >> $LOG_FILE         port=$(echo "$line" | grep -Po '.*Received adb response:\K.*' | tr -d ' ')        if [ -n "$port" ] && [ "$chrome_devtools_remote_port" != '' ];        then                echo "[CHROMEDRIVER-WRAPPER] Will Tunnel $port to $chrome_devtools_remote_port for $udid">> $LOG_FILE ;                adb -s $udid forward tcp:$port $chrome_devtools_remote_port; # Uses ADB wrapper for forwarding                chrome_devtools_remote_port="";        else            port=$(echo "$line" | grep -Po 'host-serial:.*:forward:tcp:\K.*?(?=;)')            if [ -n "$port" ];            then                if [ "$port" -gt 1024 ];                then                    echo "[CHROMEDRIVER-WRAPPER] Will Tunnel $port">> $LOG_FILE ;                    ip="$(ip -4 addr show eth0 | grep -Po '(?<=inet\s)\d+(\.\d+){3}')";                    echo curl -H "Content-Type: application/json" -X POST -d '{"ip_address":"'"$ip"'","host_port":"'"$port"'","harness_port":"'"$port"'"}' http://localhost:31007/tunnel >> $LOG_FILE ;                    curl -H "Content-Type: application/json" -X POST -d '{"ip_address":"'"$ip"'","host_port":"'"$port"'","harness_port":"'"$port"'"}' http://localhost:31007/tunnel >> $LOG_FILE 2>&1 ;                else                    chrome_devtools_remote_port=$(echo "$line" | grep -Po 'host-serial:.*;\K.*');                    udid=$(echo "$line" | grep -Po 'host-serial:\K.*?(?=:)');                    echo "[CHROMEDRIVER-WRAPPER] Preparing to Tunnel $chrome_devtools_remote_port for $udid">> $LOG_FILE ;                fi;            else                port=$(echo "$line" |grep 'port'| grep -oP '\s*\d+\s*$'| grep -oP '\d+');                if [ -n "$port" ] && [ "$port" -gt 1024 ];                then                    echo "[CHROMEDRIVER-WRAPPER] Will Tunnel $port">> $LOG_FILE ;                    ip="$(ip -4 addr show eth0 | grep -Po '(?<=inet\s)\d+(\.\d+){3}')";                    echo curl -H "Content-Type: application/json" -X POST -d '{"ip_address":"'"$ip"'","host_port":"'"$port"'","harness_port":"'"$port"'"}' http://localhost:31007/tunnel >> $LOG_FILE ;                    curl -H "Content-Type: application/json" -X POST -d '{"ip_address":"'"$ip"'","host_port":"'"$port"'","harness_port":"'"$port"'"}' http://localhost:31007/tunnel >> $LOG_FILE 2>&1 ;                fi            fi        fi    done} &pid=$!wait $pidYou need to define the $DEVICEFARM_CHROMEDRIVER_EXECUTABLE  environment variable which is the the version of the Chrome browser.Having said that, in case you face further challenges, please feel free to open a support case with AWS using the following link.CommentShareSUPPORT ENGINEERSubhayu_Manswered 2 months ago"


Question: Unzip Component Not Working

"Recipe{"RecipeFormatVersion": "2020-01-25","ComponentName": "com.example.HelloWorld","ComponentVersion": "5.0.15","ComponentType": "aws.greengrass.generic","ComponentDescription": "My first AWS IoT Greengrass component.","ComponentPublisher": "WaterExpert","ComponentConfiguration": {"DefaultConfiguration": {"accessControl": {"aws.greengrass.ipc.mqttproxy": {"com.example.HelloWorld:pubsub:1": {"policyDescription": "Allows access to publish to my/topic.","operations": ["aws.greengrass#PublishToTopic","aws.greengrass#PublishToIoTCore","aws.greengrass#GreengrassCoreIPC"],"resources": ["my/topic"]}}}}},"Manifests": [{"Platform": {"os": "linux"},"Name": "Linux","Lifecycle": {"Run": "python3 {artifacts:path}/main.py"},"Artifacts": [{"Uri": "s3://braydenggctest/main2.zip","Digest": "re9Y7xzQgB8jbZtE0Y3Xg2sd0dZGl3Ydb048fPhDvH0=","Algorithm": "SHA-256","Unarchive": "ZIP","Permission": {"Read": "OWNER","Execute": "NONE"}}]}],"Lifecycle": {}}I can manually unzip the file after deployment but the deployment fails to unzip it (trys to run main.py but file doesn't exist. I can manually unzip and then restart ggc and it'll read it)FollowComment"

Answer: "0Accepted AnswerHi,In order to use archived artifacts in the lifecycle of a component within the recipe, you have to specify the unarchived path of the artifacts which is {artifacts:decompressedPath}. In your case, this will be as shown below where main2 is the name of the zip file and main.py is file inside it."Lifecycle": {"Run": "python3 {artifacts:decompressedPath}/main2/main.py"},Thanks,SaranyaCommentShareSaranyaanswered 2 years ago"


Question: Glue - Job editor error - Exception encountered while creating session

"Hi everyone,Since a few days I have problems with Glue, I can not run any Glue Studio notebook and I always get this exception:Exception encountered while creating session: An error occurred (ResourceNumberLimitExceededException) when calling the CreateSession operation: Failed to meet resource limits for operationTraceback (most recent call last):File "/home/jupyter-user/.local/lib/python3.7/site-packages/aws_glue_interactive_sessions_kernel/glue_pyspark/GlueKernel.py", line 113, in do_executeself.create_session()File "/home/jupyter-user/.local/lib/python3.7/site-packages/aws_glue_interactive_sessions_kernel/glue_pyspark/GlueKernel.py", line 580, in create_session**additional_args)["Session"]["Id"])File "/home/jupyter-user/.local/lib/python3.7/site-packages/botocore/client.py", line 415, in _api_callreturn self._make_api_call(operation_name, kwargs)File "/home/jupyter-user/.local/lib/python3.7/site-packages/botocore/client.py", line 745, in _make_api_callraise error_class(parsed_response, operation_name)botocore.errorfactory.ResourceNumberLimitExceededException: An error occurred (ResourceNumberLimitExceededException) when calling the CreateSession operation: Failed to meet resource limits for operationI've checked all service limits and everything seems fine.Anyone else with this problem? Any solution?Thank you!!FollowComment"


Question: How to force stop a hung aws rds cluster

How to force stop a hung aws rds cluster.  I was upgrading aurora pg 14.5 to 15.2 and cluster is hung in upgrading ...log says .. database system shutting downFollowComment


Question: "Appsync created with CDK, Query not showing results"

"I created an AppSync API via the console, referencing an existing table.  It works well (query list returns all the table records)I then created an AppSync API via CDK.  I copied into my project the schema from the console version.  I defined the table.  I added a Resolver for the "query list"I see the datasource and schema in the cdk version if API. From the console I run the list query.  The response is:{   "data": {     "listMyTables": {       "nextToken": null,       "items": null     }   } }I see in the CloudwatchLogs the full table has been retrieved.  Perhaps there is some "mapping" between the schema.graphql and the cdk parameters, so the information can populate the "items" in the response?FollowComment"

Answer: "0Hello,I understand that you have created AppSync API using CDK, which is returning null response for listMyTables query.Here is a blogpost example on creating AppSync API, using CDK:https://aws.amazon.com/blogs/mobile/building-scalable-graphql-apis-on-aws-with-cdk-and-aws-appsync/In order to troubleshoot this issue, we require details that are specific to AppSync API deployment in your account. We need to evaluate schema definition, resolver, data source, permissions and AppSync logs for your API. Please open a support case with AWS, including these details, using this linkCommentShareSUPPORT ENGINEERIsha_Kanswered a year ago0Thank you Isha.  I opened a support case and received a helpful answer.    I ended up having to provide more detail in my resolver.  I copied the code that was generated in the "console" created api, and pasted it in like below.  With this change, the API functioned as expected:change from this:datasource.createResolver({        typeName: 'Query',        fieldName: 'listCctSharedCallRoutingGlobalDbs',        requestMappingTemplate: MappingTemplate.dynamoDbScanTable(),        responseMappingTemplate: MappingTemplate.dynamoDbResultList(),      });to this:datasource.createResolver({      typeName: 'Query',      fieldName: 'listCctSharedCallRoutingGlobalDbs',      requestMappingTemplate: MappingTemplate.fromString(`      #set( $ListRequest = {        "version": "2018-05-29"      } )      #if( $context.args.nextToken )        #set( $ListRequest.nextToken = $context.args.nextToken )      #end      #if( $context.args.limit )        #set( $ListRequest.limit = $context.args.limit )      #end      $util.qr($ListRequest.put("operation", "Scan"))      $util.toJson($ListRequest)    `),      responseMappingTemplate: MappingTemplate.fromString(`      #if( $ctx.error)        $util.error($ctx.error.message, $ctx.error.type)      #else        $util.toJson($ctx.result)      #end      `),    });CommentSharerePost-User-2237886answered a year ago"


Question: Custom domain for iot endpoint

"I want a custom domain for my mqtt endpoint like mqtt.abc.example.org.I followed this guide https://aws.amazon.com/it/blogs/iot/migrating-devices-aws-iot-custom-domains/All seems to be correct compared with screenshot on guide, but when I domosquitto_pub --cert test-2022b.pem --key test-2022b.key -h mqtt.abc.example.org -p 8883 -d  -t 'test/pippo' -i pub -m "Ciao mondo" --tls-version tlsv1.2 --cafile AmazonRootCA1.pemI got:Client pub sending CONNECTOpenSSL Error: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failedError: SuccessI also tried with this Python srcipt:from AWSIoTPythonSDK.MQTTLib import AWSIoTMQTTClientmyMQTTClient = AWSIoTMQTTClient("myClientID")myMQTTClient.configureEndpoint("mqtt.abc.example.org", 8883)myMQTTClient.configureCredentials("AmazonRootCA1.pem", "test-2022b.key", "test-2022b.pem")myMQTTClient.connect()Result: ssl.SSLCertVerificationError: ("hostname 'mqtt.abc.example.org' doesn't match either of 'iot.eu-west-3.amazonaws.com', '*.iot.eu-west-3.amazonaws.com'",)If I use  xxxxxxxxx-ats.iot.eu-west-3.amazonaws.com it works.Server side I use a certificate issued by aws.FollowComment"

Answer: "0Can you please check the certificate your domain is returning? It should look like this:$ openssl s_client -showcerts -servername mqtt.abc.example.org -connect mqtt.abc.example.org:8883CONNECTED(00000003)depth=2 C = US, O = Amazon, CN = Amazon Root CA 1verify return:1depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazonverify return:1depth=0 CN = mqtt.abc.example.orgverify return:1write:errno=0Based on your error message though, I think it won't look like that.CommentShareEXPERTGreg_Banswered a year agoAWS-User-1432942 a year agoI have different results. On windows machine I get alwaysVerify return code: 20 (unable to get local issuer certificate)On linux machine, 1 works, the other give me the seme error as windows machine.If I add to openssl --CAfile AmazonRootCA1.pem it works on every machine.ShareGreg_B EXPERTa year agoWhat is the output when it works? In particular, what CN is returned?Share"


Question: "Bitnami failing to restart. (Drupal, AWS Lightsail)"

"Hi, I'm looking for help resolving a troubling issue regarding bitnami failing to start.  One of my Lightsail instances using bitnami LAMP, with Drupal, is failing to restart. This issue is honestly outside of my wheel-house but its fallen on me to try and fix it.  I have tried figuring it out now for about 72 hours.  Following several posts on the topic, I have run the following diagnostics, and received the following results down below.A. free -mB. df -hC. systemctl status bitnami.serviceD. sudo journalctl -xeRESULTSA. free -mtotal        used        free      shared  buff/cache   availableMem:            1982         191        1500           5         289        1643Swap:              0           0           0B. df -hFilesystem      Size  Used Avail Use% Mounted onudev            981M     0  981M   0% /devtmpfs           199M  416K  198M   1% /run/dev/xvda1       59G  5.1G   52G   9% /tmpfs           992M     0  992M   0% /dev/shmtmpfs           5.0M     0  5.0M   0% /run/lock/dev/xvda15     124M   11M  114M   9% /boot/efitmpfs           199M     0  199M   0% /run/user/1000C. sudo systemctl status bitnami.service● bitnami.service - LSB: bitnami init scriptLoaded: loaded (/etc/init.d/bitnami; enabled; vendor preset: enabled)Active: failed (Result: exit-code) since Mon 2023-02-13 17:06:13 UTC; 5min agoProcess: 3722 ExecStart=/etc/init.d/bitnami start (code=exited, status=1/FAILURE)Tasks: 29 (limit: 2353)Memory: 240.6MCPU: 1.825sCGroup: /system.slice/bitnami.service├─947 php-fpm: master process (/opt/bitnami/php/etc/php-fpm.conf)├─951 php-fpm: pool www├─952 php-fpm: pool www├─953 php-fpm: pool www├─954 php-fpm: pool www├─955 php-fpm: pool www├─956 php-fpm: pool www├─957 php-fpm: pool www├─958 php-fpm: pool www├─959 php-fpm: pool www├─960 php-fpm: pool www├─961 php-fpm: pool www├─962 php-fpm: pool www├─963 php-fpm: pool www├─964 php-fpm: pool www├─965 php-fpm: pool www├─966 php-fpm: pool www├─967 php-fpm: pool www├─968 php-fpm: pool www├─969 php-fpm: pool www├─970 php-fpm: pool www└─982 /opt/bitnami/mariadb/sbin/mysqld --defaults-file=/opt/bitnami/mariadb/conf/my.cnf --basedir=/opt/bitnam>Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 964 (php-fpm) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 965 (php-fpm) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 966 (php-fpm) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 967 (php-fpm) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 968 (php-fpm) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 969 (php-fpm) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 970 (php-fpm) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Unit process 982 (mysqld) remains running after unit stopped.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: Failed to start LSB: bitnami init script.Feb 13 17:06:13 ip-172-26-2-48 systemd[1]: bitnami.service: Consumed 1.754s CPU time.D. sudo journalctl -xeFeb 13 19:49:48 ip-172-26-2-48 dhclient[421]: XMT: Renew on eth0, interval 10100ms.Feb 13 19:49:48 ip-172-26-2-48 dhclient[421]: RCV: Reply message on eth0 from fe80::c2:f4ff:fe6b:8e02.Feb 13 19:49:53 ip-172-26-2-48 sshd[18843]: Received disconnect from 24.199.118.157 port 45194:11: Bye Bye [preauth]Feb 13 19:49:53 ip-172-26-2-48 sshd[18843]: Disconnected from authenticating user root 24.199.118.157 port 45194 [preauth]Feb 13 19:49:58 ip-172-26-2-48 sshd[18845]: Received disconnect from 187.95.162.20 port 22203:11: Bye Bye [preauth]Feb 13 19:49:58 ip-172-26-2-48 sshd[18845]: Disconnected from authenticating user root 187.95.162.20 port 22203 [preauth]Feb 13 19:50:08 ip-172-26-2-48 sshd[18847]: Received disconnect from 34.78.185.36 port 35536:11: Bye Bye [preauth]Feb 13 19:50:08 ip-172-26-2-48 sshd[18847]: Disconnected from authenticating user root 34.78.185.36 port 35536 [preauth]Feb 13 19:50:34 ip-172-26-2-48 sshd[18849]: Received disconnect from 103.211.217.103 port 45502:11: Bye Bye [preauth]Feb 13 19:50:34 ip-172-26-2-48 sshd[18849]: Disconnected from authenticating user root 103.211.217.103 port 45502 [preauth]Feb 13 19:50:35 ip-172-26-2-48 sshd[18851]: Received disconnect from 139.59.121.221 port 33362:11: Bye Bye [preauth]Feb 13 19:50:35 ip-172-26-2-48 sshd[18851]: Disconnected from authenticating user root 139.59.121.221 port 33362 [preauth]Feb 13 19:50:56 ip-172-26-2-48 sshd[18853]: Received disconnect from 159.223.202.231 port 36660:11: Bye Bye [preauth]Feb 13 19:50:56 ip-172-26-2-48 sshd[18853]: Disconnected from authenticating user root 159.223.202.231 port 36660 [preauth]Feb 13 19:50:58 ip-172-26-2-48 dhclient[421]: PRC: Renewing lease on eth0.Feb 13 19:50:58 ip-172-26-2-48 dhclient[421]: XMT: Renew on eth0, interval 9500ms.Feb 13 19:50:58 ip-172-26-2-48 dhclient[421]: RCV: Reply message on eth0 from fe80::c2:f4ff:fe6b:8e02.Feb 13 19:51:12 ip-172-26-2-48 sshd[18859]: Connection reset by 104.191.174.129 port 40154 [preauth]Feb 13 19:51:39 ip-172-26-2-48 sshd[18862]: Received disconnect from 222.119.64.11 port 54872:11: Bye Bye [preauth]Feb 13 19:51:39 ip-172-26-2-48 sshd[18862]: Disconnected from authenticating user root 222.119.64.11 port 54872 [preauth]Feb 13 19:51:39 ip-172-26-2-48 sshd[18864]: Received disconnect from 34.78.185.36 port 37170:11: Bye Bye [preauth]Feb 13 19:51:39 ip-172-26-2-48 sshd[18864]: Disconnected from authenticating user root 34.78.185.36 port 37170 [preauth]Feb 13 19:51:54 ip-172-26-2-48 sshd[18866]: Received disconnect from 187.95.162.20 port 21810:11: Bye Bye [preauth]Feb 13 19:51:54 ip-172-26-2-48 sshd[18866]: Disconnected from authenticating user root 187.95.162.20 port 21810 [preauth]Feb 13 19:52:01 ip-172-26-2-48 CRON[18870]: pam_unix(cron:session): session opened for user bitnami(uid=1000) by (uid=0)Feb 13 19:52:01 ip-172-26-2-48 CRON[18871]: (bitnami) CMD (cd /opt/bitnami/stats && ./agent.bin --run -D)Feb 13 19:52:01 ip-172-26-2-48 CRON[18870]: pam_unix(cron:session): session closed for user bitnamiFeb 13 19:52:02 ip-172-26-2-48 sshd[18868]: Received disconnect from 103.211.217.103 port 36608:11: Bye Bye [preauth]Feb 13 19:52:02 ip-172-26-2-48 sshd[18868]: Disconnected from authenticating user root 103.211.217.103 port 36608 [preauth]Feb 13 19:52:08 ip-172-26-2-48 dhclient[421]: PRC: Renewing lease on eth0.Feb 13 19:52:08 ip-172-26-2-48 dhclient[421]: XMT: Renew on eth0, interval 9660ms.Feb 13 19:52:08 ip-172-26-2-48 dhclient[421]: RCV: Reply message on eth0 from fe80::c2:f4ff:fe6b:8e02.Feb 13 19:52:24 ip-172-26-2-48 sshd[18948]: Received disconnect from 159.223.202.231 port 39616:11: Bye Bye [preauth]Feb 13 19:52:24 ip-172-26-2-48 sshd[18948]: Disconnected from authenticating user root 159.223.202.231 port 39616 [preauth]Feb 13 19:52:27 ip-172-26-2-48 sshd[18950]: Received disconnect from 139.59.121.221 port 38756:11: Bye Bye [preauth]Feb 13 19:52:27 ip-172-26-2-48 sshd[18950]: Disconnected from authenticating user root 139.59.121.221 port 38756 [preauth]Feb 13 19:52:39 ip-172-26-2-48 sshd[18952]: Received disconnect from 24.199.118.157 port 60840:11: Bye Bye [preauth]Feb 13 19:52:39 ip-172-26-2-48 sshd[18952]: Disconnected from authenticating user root 24.199.118.157 port 60840 [preauth]Feb 13 19:53:18 ip-172-26-2-48 dhclient[421]: PRC: Renewing lease on eth0.Feb 13 19:53:18 ip-172-26-2-48 dhclient[421]: XMT: Renew on eth0, interval 9150ms.Feb 13 19:53:18 ip-172-26-2-48 dhclient[421]: RCV: Reply message on eth0 from fe80::c2:f4ff:fe6b:8e02.Feb 13 19:53:19 ip-172-26-2-48 sshd[18954]: Received disconnect from 34.78.185.36 port 46468:11: Bye Bye [preauth]Feb 13 19:53:19 ip-172-26-2-48 sshd[18954]: Disconnected from authenticating user root 34.78.185.36 port 46468 [preauth]Feb 13 19:53:28 ip-172-26-2-48 sshd[18960]: Received disconnect from 103.211.217.103 port 39666:11: Bye Bye [preauth]Feb 13 19:53:28 ip-172-26-2-48 sshd[18960]: Disconnected from authenticating user root 103.211.217.103 port 39666 [preauth]Feb 13 19:53:28 ip-172-26-2-48 sshd[18962]: Received disconnect from 222.119.64.11 port 59804:11: Bye Bye [preauth]Feb 13 19:53:28 ip-172-26-2-48 sshd[18962]: Disconnected from authenticating user root 222.119.64.11 port 59804 [preauth]Feb 13 19:53:44 ip-172-26-2-48 sudo[18973]:  bitnami : TTY=pts/1 ; PWD=/ ; USER=root ; COMMAND=/usr/bin/journalctl -xeFeb 13 19:53:44 ip-172-26-2-48 sudo[18973]: pam_unix(sudo:session): session opened for user root(uid=0) by bitnami(uid=1000)I'm so frustrated with this error!  I really need help trying to overcome it.Thank you in advance for any help you might offer.MyaFollowComment"

Answer: 0Accepted AnswerI was able to resolve this issue by replacing httpd.conf file located in  /opt/bitnami/apache/conf/ file with a backup copy that was made by openssl when it was run to setup ssl. I still have no idea what caused the original error in the first place but its fixed.-- M.CommentShareMya_Bee_802answered 4 months ago


Question: "Getting "{"errorType":"Error","errorMessage":"ENOENT: no such file or directory, open" error on linking local file path to `GoogleAuth` class 'keyFile' property of googleapis"

"I am trying to invoke googleapis through AWS lambda. I am using a google service account to generate server-server authentication.we have stored the service account details in a JSON file name 'config.json'. Inorder to invoke API for google, we need to create auth object using the 'GoogleAuth' class and pass the config file path as a value to the 'keyfile' property. Though we have provided the correct path location of the file, lambda could not recognize the path and throw error.For path, I have tried absolute, and relative paths, using Path package with '__dirname", process.env.cwd(), used environment variable etc. I even tried with assets too. I am using AWS cdk to form cloud formation using nodejs. My intention is to invoke google apis using service account credentials with AWS lambda.import {GoogleAuth} from 'google-auth-library' const auth = new GoogleAuth({    keyFile: 'path/to/file',    scope: SCOPES})undefinedERRORUncaught Exception {"errorType":"Error","errorMessage":"ENOENT: no such file or directory, open '/keys/config.json'","code":"ENOENT","errno":-2,"syscall":"open","path":"/keys/config.json","stack":["Error: ENOENT: no such file or directory, open '/keys/config.json'","    at Object.openSync (node:fs:601:3)","    at Object.readFileSync (node:fs:469:35)","    at Object.<anonymous> (/var/task/index.js:533512:28)","    at Module._compile (node:internal/modules/cjs/loader:1254:14)","    at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)","    at Module.load (node:internal/modules/cjs/loader:1117:32)","    at Module._load (node:internal/modules/cjs/loader:958:12)","    at Module.require (node:internal/modules/cjs/loader:1141:19)","    at require (node:internal/modules/cjs/helpers:110:18)","    at _tryRequireFile (file:///var/runtime/index.mjs:912:37)"]}FollowComment"

Answer: "0As mentioned in the NodeJS API error documentation:[+] https://nodejs.org/api/errors.htmlENOENT (No such file or directory): Commonly raised by fs operations to indicate that a component of the specified pathname does not exist. No entity (file or directory) could be found by the given path.Taking a deeper look at the error, it seems that the error originates from fs readFileSync() function.I am able to replicate this error using fs : const path = require('path');  const fs = require('fs');  exports.handler = async (event) => {     return fs.readFileSync('/keys/config.json') };Assuming that the function has the below directory structure:Function-nameindex.jskeys/config.jsonThe path specified is /key/config.json which will not work as the actual path of the file in the above directory structure is /var/task/key/config.json in lambda execution environment. We need to provide 'keys/config.json'  as shown in the link below: const path = require('path');  const fs = require('fs');  exports.handler = async (event) => {     return fs.readFileSync('keys/config.json')}; // or /var/task/keys/config.jsonMy config.json file contains text 'ABC' and the function returns '65 66 67' (ASCII values) as expected.CommentShareManav_Banswered 2 months agorePost-User-5469480 2 months agoI am not getting above one. Since the KeyFIle prop of GoogleAuth requires filePath to json file. How can I reference the same? That prop is not required content instead file Path. Though I reference the correct file path, that was not recognized by the Lambda environment.Share"


Question: Impact of having a 'dedicated server' vs using Amazon CloudFront CDN on SEO

"One of my customer is using 'http://whois.domaintools.com/ to check the IP details for their website hosted on AWS.In the 'IP Address' section, they see IP a.b.c.d - 3,882 other sites hosted on this server.Their Route 53 www.example1.com resolves to Amazon CloudFront distribution.Compared to some other websites, which shows 'p.q.r.s is hosted on a dedicated server' (who is using NLB/ALB) i.e. www.example2.com pointing to NLB.Does the 'dedicated server' vs '3882 other sides hosted on this server' affect the search engine ranking in any way?FollowComment"

Answer: "0Accepted AnswerSearch Engines are quite familiar with the nature of CDNs and how IP scopes are being reused across the network. From the perspective of what you described I'm not aware of any potential issues or penalties from SEO point of view.In fact, in many cases CDNs affect the SEO rating positively provided they are configured correctly. That positive effect comes from the improved security, faster page loading due to image indexing and other optimizations. Don't worry about the indicator showing you multiple IPs.CommentShareDmitriy_Nanswered 3 years ago"


Question: Increase EKS Fargate storage

"Each pod running on Fargate receives 20 GB of container image layer storage. Is there a way to increase this storage? I noticed there is a way for ECS, but could not find anything for EKS.FollowComment"

Answer: "2Today, you can't update the ephemeral storage associated with an EKS Fargate pod. My suggestion would be to look into mounting an EFS volume.CommentShareChris Pollardanswered a year agoHassan a year agoUnfortunately, EFS volume mounting won't work as 2 of our images are already bigger than 20GiB.Share1hello,I understand you want to know if it is possible to increase storage on EKS, well by default, Fargate tasks that are launched with platform version 1.40 include a task storage size of 20 GiB as a single ephemeral volume. If you need more than 20 GiB of storage, you can configure more storage using two options:1.Use Fargate's ephemeral storage option for storage up to 200 GiB. Ephemeral storage is non-persistent storage.2.Use Amazon Elastic File System (Amazon EFS) volumes for scalable file storage. Amazon EFS volumes provide[1]however this options are only compatable with  fargate ECS storage not EKS  meaning it you can't increase it using either of the above mentioned method as eks doesn't support ephemeral storage(non-persistent)Reference link1.https://docs.aws.amazon.com/AmazonECS/latest/developerguide/efs-volumes.htmlCommentSharestevenanswered a year agoHassan a year agoThat's unfortunate, I don't understand why Amazon doesn't provide this feature for EKS.EFS volume mounting won't work as 2 of our images are already bigger than 20GiB.Share"


Question: CodeBuild takes long time to start build

"Hi AWS,when I start build it takes time about 2 mins to  start the buildafter that it takes much time about 3 mins to build the imageP.S. we pull the image from ECR then start building it,and on running the test cases it takes long time about 9 mins to start the testing stepsso overall the build takes about 18-20 mins/build which is too much timethe build should start under these conditionsPULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENEDfrom Github,we work on eu-Central-1 (Frankfurt)with compute 15 GB memory, 8 vCPUsPrivileged is truealso I have enabled the local cache which did nothingFollowComment"

Answer: "0Hello,I would like to state that the initial process for Provisioning and Building an image might take some time because to pull the image, you would need to access ECR endpoint, login to ECR, get the image, then download the image. So it would require a short amount of time to do that.Coming on to the testing steps for the build. The test case for the build to run might short amount of time or a long amount of time depending on the test cases. For example if you just have ECR login as a test then it would short amount of time. However, if your build contains a chain of command and use-case which need to be validated or run in order to get an output, then it might take more time for the total build to complete.It also depends on the source code repo, whether the test is being performed on the source code or not. This might also be related to the long wait time for build.Please refer the following document on how to Improve Build Performance and Save Time Using Local Caching in AWS CodeBuild:[+] https://aws.amazon.com/blogs/devops/improve-build-performance-and-save-time-using-local-caching-in-aws-codebuild/Note - Please refer to the type of caching best suited for your use-case.CommentShareSUPPORT ENGINEERrePost-User-0470248answered 6 months agoRodaina Sokkar 6 months agoHello,The initial state I meant the very first beginning when I click start build it takes too long to start on the very first command of the pipeline which is not pulling the image or login to ECR it's some other commands,it really takes about 2 mins to start the first command,and about the testing yeah we use test case scenarios so yeah you're right it may be a code thing,and about the local caching I have tried it already and nothing differsShare"