English Name | Urdu Name | Sowing Time | Rows X Rows(inch) | Plants X Plants(inch) | Yield/Plant | First Harvest |
Arum | اروی | Feb – March | 24 | 18 | 180 – 200 days | |
Bitter Gourd | کریلہ | Feb – March, June – July | 36 | 12 | 3 kg | |
Bottle Gourd | کدو | Feb – March, June – July, October | 36 | 18 | 4 kg | |
Brinjal | بینگن | Feb – March, June, Nov | 30 | 18 | 2 kg | 60 -70 days |
Broccoli | Aug –Nov | 24 | 12 | 0.75 kg | 60 -80 days | |
Cabbage | بند گوبھی | Aug – Nov | 24 | 12 | 0.75 kg | 60 -100 days |
Carrot | گاجر | Sep – Oct | 18 | 2 | 130 gm | 60 -80 days |
Cauliflower | پھول گوبھی | June – Oct | 24 | 12 | 850 gm | 60 -80 days |
Celery | Sep – Oct | 12 | 4 | 100 gm | 100 – 120 days | |
Coriander | دھنیا | July _ Nov, Feb -April | 45 -50 days | |||
Cucumber | کھیرا | Feb – July | 36 | 18 | 2.5 kg | 50-70 days |
Fenugreek | میتھی | Sept – Oct | ||||
Garlic | لہسن | Sept – Oct | 8 | 4 | 50 gm | |
Ginger | ادرک | Feb – March | 12 | 8 | ||
Hot Peppers | مرچ | Sept – Oct, Feb. | 30 | 18 | 1.5 kg | 50-60 days |
Lettuce | سلاد پتہ | Sept – Oct | 12 | 6 | ||
Mint | پودینہ | July – Nov, Feb -April | 45-50 days | |||
Mustard | سرسوں | Sept – Oct | ||||
Okra | بھنڈی | Feb – March, June- July | 24 | 18 | 1 kg | 70-90 days |
Onion | پیاز | Feb-March, Sep – Oct | 12 | 4 | 100 gm | 150-180 days |
Peas | مٹر | mid Sep-mid Nov | 24 | 2 | 600 gm | 50-75 days |
Potato | آلو | Feb-March, Sep – Oct | 24 | 8 | 1 kg | 110 -150 days |
Radish | مولی | July – Nov, Feb-March | 18 | 2 | 120 gm | 30-60 days |
Spinach | پالک | June – Nov | 50-80 days | |||
Sponge gourd | توری | Feb – April, June – July | 36 | 18 | 2.5 kg | 60-70 days |
Sweet Peppers | شملہ مرچ | Oct – Nov, February | 30 | 18 | 1 kg | 50-60 days |
Sweet Potato | شکر قندی | Feb – March | 36 | 18 | 700 gm | 140-150 days |
Tinda Gourd | ٹینڈا | March –April, June- July | 36 | 18 | 1 kg | 50-60 days |
Tomato | ٹماٹر | Feb – March, Sep – Nov | 30 | 18 | 2.5 kg | 60-70 days |
Turmeric | ہلدی | March –April, June- July | 36 | 1 kg | ||
Turnip | شلجم | Aug – Nov | 24 | 3 | 150 gm | 60-90 days |
How to automatically assign Elastic Ip to AWS EC2 instances
TL;DR
Install aws-ec2-assign-elastic-ip on the target instance – make it part of the AMI.
pip install aws-ec2-assign-elastic-ip
Add the following script in user data section
#!/bin/bash /usr/local/bin/aws-ec2-assign-elastic-ip --access-key ACCESS_KEY --secret-key SECRET_KEY --valid-ips IP
Details
For those who are interested in how this all works, lets spent some time understanding the different terminologies.
So what is Elastic Ip and why do we need one?
As per Amazon’s documentation – http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html
An Elastic IP address is a static IPv4 address designed for dynamic cloud computing. An Elastic IP address is associated with your AWS account. With an Elastic IP address, you can mask the failure of an instance or software by rapidly remapping the address to another instance in your account.
An Elastic IP address is a public IPv4 address, which is reachable from the Internet. If your instance does not have a public IPv4 address, you can associate an Elastic IP address with your instance to enable communication with the Internet; for example, to connect to your instance from your local computer.
So an Elastic IP is part of the Amazon’s account and can be assigned at will to EC2 instances. One of the use cases where I needed an Elastic Ip was hosting an application on EC2 Spot Instances. As you can imagine there is no guarantee for how long the spot instance will remain alive, a new instance would have a new IP assigned to it making it really difficult to share the connection credentials to customer.
There were two solutions to the problem
- Use a service like DynDNS
- Use Elastic IP – a static IP that I can assign to the new Spot Instance that comes up when my bid is same or above the current spot instance pricing.
So I configured everything and got stuck at how can I assign the Elastic IP address to my instance automatically (or as soon as the machine is up) After some searching I came across a python module named aws-ec2-assign-elastic-ip, it is a command line idempotent utility that can assign an Elastic IP from the passed in pool of IPs to the machine running the command.
This utility can easily be installed using pip
pip install aws-ec2-assign-elastic-ip
We are going to use the user data field, which is available in advanced configurations of EC2 instance to put in a cloud-init script.
Here is the script that does the trick
#!/bin/bash /usr/local/bin/aws-ec2-assign-elastic-ip --access-key ACCESS_KEY --secret-key SECRET_KEY --valid-ips IP
Notice the full path to the utility, this makes the script more robust as it doesn’t matter whether it is part of PATH or not.