Ubuntu వెర్షన్, ఆర్కిటెక్చర్ ఎలా ఎంచుకోవాలి
VPS ఆర్డర్ చేసే ముందే Ubuntu release, CPU architecture మీ applicationకు సరిపోతాయో చూడండి. సర్వర్ వచ్చిన తర్వాత installed system, package candidates, application ప్రవర్తనను తనిఖీ చేయండి. ఎంచుకున్న image, మీకు వచ్చిన environment సరిపోలాలి.
VPSuntu · నవీకరణ: · చదవడానికి సుమారు 5 నిమిషాలు
గైడ్లోని విభాగాలు
Provision చేసే ముందు అనుకూల imageను ఎంచుకోండి
App, extensions, runtimes, database, monitoring, backup agentsకు మద్దతు ఉన్న releases, architectures జాబితా చేయండి. Vendor supportను మీ team పరీక్షించిన ఫలితాల నుంచి వేరు నమోదు చేయండి.
- Appకు మద్దతు ఉన్న Ubuntu, runtime, database versions రాయండి.
- Native extensions, container images, backup agents architecture చూడండి.
- మిగిలిన maintenance కాలం ఆధారంగా releaseలను వడపోయండి.
- అవసరమైన regionలో provider image, architecture అందిస్తాడో చూడండి.
- Provision తర్వాత imageను నిర్ధారించి data/traffic తరలించే ముందు appను పరీక్షించండి.
Ubuntu 24.04లో default Python 3.12, PHP 8.3, PostgreSQL 16 వచ్చాయి; updatesతో patch versions మారతాయి. పాత major version support కొత్తదానికీ వర్తిస్తుందని అనుకోవద్దు. నిర్వహణ కాలం కోసం LTS పోలిక చూడండి.
మీకు వచ్చిన imageను గుర్తించండి
VPSలో ఈ read-only commandsతో distribution, నడుస్తున్న kernel, package/machine architectureను తెలుసుకోండి. మరింత software చేర్చే ముందు deployment notesలో భద్రపరచండి.
cat /etc/os-release
uname -r
dpkg --print-architecture
uname -mచిన్న స్క్రీన్లో అన్ని నిలువు వరుసలు చూడటానికి పట్టికను పక్కకు జరపండి.
| ఫలితం | అర్థం |
|---|---|
| /etc/os-releaseలో VERSION_ID | ఇన్స్టాల్ చేసిన Ubuntu release, ఉదా. 24.04 |
| uname -r | ప్రస్తుతం నడుస్తున్న kernel; update/rebootతో మారవచ్చు |
| dpkg amd64 / uname x86_64 | 64-bit x86కు సాధారణ పేర్లు |
| dpkg arm64 / uname aarch64 | 64-bit Armకు సాధారణ పేర్లు |
Kernel string ఒక్కటే Ubuntu release లేదా support coverage చెప్పదు; cloud-specific kernels ఉండవచ్చు. amd64-only binary arm64లో nativeగా నడుస్తుందని అనుకోవద్దు. Arm build లేదా స్పష్టంగా supported ప్రత్యామ్నాయాన్ని నిర్ధారించండి.
Provisioning పూర్తయిందో చూడండి
Keys, accounts, network కోసం అనేక images cloud-init వాడతాయి. ముందుగా అది ఉందో చూసి status అడగండి. లేకపోవడం ఒక్కటే లోపం కాదు; provider imageను ఎలా సిద్ధం చేస్తాడో తెలుసుకోండి.
if command -v cloud-init >/dev/null 2>&1; then
cloud-init status --long
else
printf '%s\n' 'cloud-init is not installed; check the provider provisioning method.'
fiRunning అంటే setup ఇంకా జరుగుతోంది. SSH పనిచేసినా error/degraded ఉంటే పరిశీలించండి. Cloud-init ఉంటే సంబంధిత logs చూడండి:
sudo tail -n 50 /var/log/cloud-init.log
sudo tail -n 50 /var/log/cloud-init-output.logInitialization scripts sensitive valuesను logsలో చూపవచ్చు; పంచుకునే ముందు తొలగించండి. లోపం దాచడానికి cloud-init clean చేయవద్దు, network files మార్చవద్దు. Provisioning పూర్తయినా app, database, backup job ఆరోగ్యాన్ని విడిగా పరీక్షించాలి.
ఇన్స్టాల్ చేసే ముందు package candidates చూడండి
Metadata refresh చేసి అవసరమైన components candidate versions, repositories నమోదు చేయండి. Update command indexను నవీకరిస్తుంది; ఈ application packagesను ఇన్స్టాల్ చేయదు.
sudo apt update
apt-cache policy python3 php postgresql
apt-cache policy python3.12 php8.3 postgresql-16Installed: (none) అంటే package లేదు; candidate (none) అంటే ప్రస్తుత sources దాన్ని అందించడం లేదు. ముందు పేర్లు, architecture, Ubuntu components చూడండి; యాదృచ్ఛిక repository జోడించవద్దు. Php/postgresql వంటి metapackagesతో పాటు versioned packageను చూడండి. Installed executable కోసం python3 --version, php --version వాడండి; database server, client tools versions వేరు కావచ్చు.
ఒక compatibility నిర్ణయాన్ని పూర్తిగా పరీక్షించండి
ఒక కల్పిత appకు Python 3.10 మాత్రమే, amd64 native extension మాత్రమే అవసరమైతే default Ubuntu 24.04 arm64 రెండు అంశాల్లో సరిపోదు: Python 3.12, వేరే architecture. amd64కి మారడం Pythonను మార్చదు. Virtual environment దాన్ని సృష్టించిన interpreterనే వాడుతుంది; 3.12ని 3.10గా చేయదు. App కోసం Ubuntu system Pythonను భర్తీ చేయవద్దు.
App upgrade లేదా separately maintained runtime/containerను documented support planతో ఎంచుకోవచ్చు. అన్ని native components supportను చూడండి. పాత Ubuntuకూ మిగిలిన maintenance కాలం ఉంటుంది; అది ఆటోమేటిక్ పరిష్కారం కాదు. Stagingలో extension code path, database operation, background job, backup/restoreను పరీక్షించి build, versions నమోదు చేయండి. Install అవడం లేదా homepage తెరుచుకోవడం మాత్రమే పూర్తి compatibility కాదు.
Containers, ప్రతి package supportను లెక్కలోకి తీసుకోండి
Containers dependenciesను వేరు ఉంచినా host kernel, storage, networkingపై ఆధారపడతాయి. మీ platformకు supported build చూడండి. Emulation performance, support ఊహలను మారుస్తుంది; native buildకు మౌనంగా ప్రత్యామ్నాయంగా వాడవద్దు. Dataను documented volumes లేదా external storageలో ఉంచి containersకు బయట restore సాధన చేయండి. Releases/digests pin చేస్తూనే updates ప్లాన్ చేయండి.
Ubuntu release support, ప్రతి package coverage వేరు. Standard security maintenance, Ubuntu Pro, third-party repositories, binaries, container imagesకు వేరు maintainers ఉండవచ్చు. ప్రతి layerను ఎవరు update చేస్తారో నమోదు చేయండి.
Package updates, release upgradesను వేరు చేయండి
Metadata refresh చేసిన తర్వాత pending packages, failed services చూడండి. ఈ commands distribution upgrade చేయవు.
apt list --upgradable
systemctl --failed
if [ -f /var/run/reboot-required ]; then cat /var/run/reboot-required; fiసరైన maintenance సమయంలో updates అమలు చేసి app checks మళ్లీ చేయండి; services restart కావచ్చు. Reboot marker లేకపోవడం ప్రతి component తాజాదని నిరూపించదు. Release upgradeను copy లేదా కొత్త యంత్రంపై పరీక్షించండి. Runtimes, repositories, database upgrade, extensions మళ్లీ చూడండి. Final data sync, మార్పు తర్వాతి writesను కూడా పరిగణించే rollback మార్గం నిర్ణయించండి. పాత snapshotలో తర్వాత వచ్చిన customer orders ఉండవు.
మళ్లీ సృష్టించగల image నిర్ణయాన్ని నమోదు చేయండి
చిన్న స్క్రీన్లో అన్ని నిలువు వరుసలు చూడటానికి పట్టికను పక్కకు జరపండి.
| నమోదు | భద్రపరచాల్సిన వివరాలు |
|---|---|
| Operating System | Release, architecture, kernel, image ID |
| App environment | Build, runtime, lockfiles, repository origins |
| Provisioning | Secrets లేని configuration, ఫలితం |
| Acceptance checks | పరీక్షించిన పనులు, ఫలితాలు, మిగిలిన లోపాలు |
| నిర్వహణ | Package బాధ్యత, update సమయం, alerts |
| Recovery | Backup స్థానం, విధానం, చివరి విజయవంతమైన restore |
Secretsను ఈ నోట్ బయట ఉంచి మిగిలిన configurationను version controlలో ఉంచండి. ముఖ్యమైన dependencies మారితే వేరుగా rebuild చేయండి. Cloud ప్రయోగానికి ఉచిత Ubuntu VPS సెటప్, image సరిపోతే మొదటి website deployment వాడండి.
ప్రశ్నలు, సమాధానాలు
Ubuntu 24.04 ఎప్పుడూ ఉత్తమ ఎంపికేనా?
ఇక్కడ అది నిర్దిష్ట ఉదాహరణ. మీ మొత్తం stack, provider support చేసే releaseను ఎంచుకుని మిగిలిన maintenance కాలాన్ని నమోదు చేయండి. కొత్త, పాత releases రెండింటికీ application మార్పులు అవసరం కావచ్చు.
Data పోకుండా imageను మార్చవచ్చా?
Provider reinstall సాధారణంగా server diskను భర్తీ చేస్తుంది. విధానం తెలుసుకుని data/configuration export చేసి recoveryని పరీక్షించండి. Reinstall, in-place upgrade వేరు చర్యలు.