aws elasticache redis set and get - amazon-web-services

I am new to AWS-SDK and I am running an node.js application on an EC2 instance.
I am trying to use ElastiCache-Redis in the node.js application. However, I can not find the API of ElastiCache to make basic Redis calls. The url below did not provide anything of Redis commands.
http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/ElastiCache.html#addTagsToResource-property
What should I do to issue Redis command to ElastiCache(Redis) in aws-sdk?

The ElastiCache API is used to start, stop & configure Redis and Memcached instances. It is not used for communicating with those instances.
In order to send commands to Redis or Memcached you need to use normal clients, here is the list of Node.js clients for Redis: http://redis.io/clients#nodejs

Related

How to use Redis with AWS ECS?

I want to use Redis with my nodejs app running in docker on AWS ECS. I'd either want a solution to run Redis in ECS or solution on how to connect ECS with AWS Elasticache
Run Redis in ECS:
Container definitions:
Image:redis:6.0.13
Port mapping:6379
Environment-Command:redis-server,--requirepass redis123456
Login to the Redis Server with password redis123456.It works normally.
Image&Port mapping
Environment-Command

Set up connection between azure redis cache and azure kubernetes service

Please help me in setting up the connection between azure redis cache and aks. I am building an application where I would like to deploy it in aks and add redis as a service.
You don't connect Azure Redis to AKS, your containers running on AKS will connect to the Azure Cache for Redis instance. When connecting to an Azure Cache for Redis instance, cache clients need the host name, ports, and a key for the cache. Some clients might refer to these items by slightly different names. You can retrieve this information in the Azure portal.
https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-dotnet-how-to-use-azure-redis-cache

How to read write from Encrypted Amazon ElastiCache Redis Server without using stunnel?

I have Amazon ElastiCache Redis Server used as the Encryption in-transit and Encryption at-rest. From what I have read in the document:
https://aws.amazon.com/premiumsupport/knowledge-center/elasticache-connect-redis-node/
We need to use install stunnel and use through the localhost to access the server from our local environment or EC2 instance. Is there any way to avoid it? I am using Redisson as Java API.
Finally found a way to interact with AWS Encrypted Redis cluster without using Stunnel. Found that we can do it using prefix "rediss://" instead of "redis://" (extra s denotes it as a SSL client) while setting the address through the API.

How to install redis modules to AWS elasticache?

Basically, we know ElastiCache in AWS is using either MemCached or Redis. We picked up Redis, and found a module potentially useful for us. Is there a way we can install the module to our ElastiCache instance?
Since elasticache is a managed service, you can't access the actual redis server to install/load modules. You can only connect to it through clients to run redis commands. The AWS Elasticache documentation does not mention any support for modules. So, it looks like it isn't possible. You'll have to use EC2 instance to run your own redis server to use modules till Amazon adds support for modules in elasticache.

Sails app with multiple instances on AWS - Redis/Elasticache/ALB

I'm building a Sails app that is using socket.io and see that Sails offers a method for using multiple servers via redis:
http://sailsjs.org/documentation/concepts/realtime/multi-server-environments
Since I will be placing the app on AWS, preferably with ELB (elastic load balancer) and autoscale group with multiple EC2 instances was wondering how I can handle so it doesn't need a separate redis instance?
Maybe we can use AWS Elasticache? If so - how would this be done?
Now that AWS has released the new ALB application load balancer which has websockets, could this be used to help simplify things?
Thanks in advance
Updates for use-cases in application
Allow end-user to update data dynamically from their own dashboard
and display analytics/stats in real-time to an administrator
Application status' to change based on specific timings eg. at a
given start date/time the app allows users to update data.
Regarding your first question, you don't want to run Redis on the same servers that Sails is running on, especially if you are using AutoScaling. The Redis server needs to be a separate server that won't disappear if your environment experiences a "scale-in" event. So Redis is going to have to be on a separate "server" somewhere.
ElastiCache is just separate EC2 instances, running Redis, where AWS handles most of the management for you to the point that you can't even SSH into the instance. It's similar to how RDS works. ElastiCache will certainly work for your scenario. You might also want to look at the third-party service RedisLabs which also manages Redis instances on AWS for you.
Regarding your second question, an Application Load Balancer will have no bearing on your Redis usage. It will however bring actual support for WebSockets which it sounds like you are using. So yes, you should be using an ALB instead of an ELB.