Skip to content

Instantly share code, notes, and snippets.

@giseongeom
Last active September 19, 2022 20:36
Show Gist options
  • Select an option

  • Save giseongeom/4996db3767d76d86e30d974e12075fb8 to your computer and use it in GitHub Desktop.

Select an option

Save giseongeom/4996db3767d76d86e30d974e12075fb8 to your computer and use it in GitHub Desktop.
Upgrade-memcached-on-centos6
#!/usr/bin/env bash
# Download remi-release rpm
# See https://centos.pkgs.org/6/remi-x86_64/memcached-1.5.3-1.el6.remi.x86_64.rpm.html
curl -o /tmp/remi.rpm http://rpms.famillecollet.com/enterprise/6/remi/x86_64/remi-release-6.9-1.el6.remi.noarch.rpm
# Enable Remi repo (epel also enabled)
sudo yum localinstall -y /tmp/remi.rpm
# Remove previously-installed memcached 1.4
sudo service memcached stop
sudo yum erase -y memcached
# Install memcached 1.5.3
sudo yum --enablerepo=remi install -y memcached
# Change /etc/sysconfig/memcached
sudo sed -i -e 's/^MAXCONN.*/MAXCONN="4096"/' /etc/sysconfig/memcached
sudo sed -i -e 's/^CACHESIZE.*/CACHESIZE="8000"/' /etc/sysconfig/memcached
sudo sed -i -e 's/^OPTIONS.*/OPTIONS="-l 0.0.0.0 slab_reassign,slab_automove"/' /etc/sysconfig/memcached
# start memcached and verify the options is applied
sudo chkconfig memcached on
sudo service memcached start
pstree -a memcached
# verify memcached version using nc
echo stats | nc 127.0.0.1 11211 | grep -i version
@giseongeom
Copy link
Copy Markdown
Author

When running in my centos 6.7 VM

Enable remi repo

[ops@localhost ~]$ curl -o /tmp/remi.rpm http://rpms.famillecollet.com/enterprise/6/remi/x86_64/remi-release-6.9-1.el6.remi.noarch.rpm
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 11400  100 11400    0     0   9485      0  0:00:01  0:00:01 --:--:-- 39175

[ops@localhost ~]$ sudo yum localinstall -y /tmp/remi.rpm
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Local Package Process
Examining /tmp/remi.rpm: remi-release-6.9-1.el6.remi.noarch
Marking /tmp/remi.rpm to be installed
Determining fastest mirrors
 * base: ftp.neowiz.com
 * extras: ftp.neowiz.com
 * updates: ftp.neowiz.com
Resolving Dependencies
--> Running transaction check
---> Package remi-release.noarch 0:6.9-1.el6.remi will be installed
--> Processing Dependency: epel-release = 6 for package: remi-release-6.9-1.el6.remi.noarch
--> Running transaction check
---> Package epel-release.noarch 0:6-8 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================================
 Package                               Arch                            Version                                  Repository                       Size
======================================================================================================================================================
Installing:
 remi-release                          noarch                          6.9-1.el6.remi                           /remi                            12 k
Installing for dependencies:
 epel-release                          noarch                          6-8                                      extras                           14 k

Transaction Summary
======================================================================================================================================================
Install       2 Package(s)

Total size: 26 k
Total download size: 14 k
Installed size: 34 k
Downloading Packages:
epel-release-6-8.noarch.rpm                                                                                                    |  14 kB     00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : epel-release-6-8.noarch                                                                                                            1/2
  Installing : remi-release-6.9-1.el6.remi.noarch                                                                                                 2/2
  Verifying  : remi-release-6.9-1.el6.remi.noarch                                                                                                 1/2
  Verifying  : epel-release-6-8.noarch                                                                                                            2/2

Installed:
  remi-release.noarch 0:6.9-1.el6.remi

Dependency Installed:
  epel-release.noarch 0:6-8

Complete!

Remove memcached 1.4

[ops@localhost ~]$ sudo yum erase -y memcached
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package memcached.x86_64 0:1.4.4-5.el6 will be erased
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================================================================================================
 Package                               Arch                               Version                                    Repository                         Size
=============================================================================================================================================================
Removing:
 memcached                             x86_64                             1.4.4-5.el6                                @base                             147 k

Transaction Summary
=============================================================================================================================================================
Remove        1 Package(s)

Installed size: 147 k
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing    : memcached-1.4.4-5.el6.x86_64                                                                                                              1/1
  Verifying  : memcached-1.4.4-5.el6.x86_64                                                                                                              1/1

Removed:
  memcached.x86_64 0:1.4.4-5.el6

Complete!

Install, configure and start memcached 1.5.3

[ops@localhost ~]$ sudo yum --enablerepo=remi install -y memcached
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Install Process
Loading mirror speeds from cached hostfile
epel/metalink                                                                                                                         | 6.0 kB     00:00
 * base: ftp.neowiz.com
 * epel: ftp.jaist.ac.jp
 * extras: ftp.neowiz.com
 * remi: mirrors.mediatemple.net
 * remi-safe: mirrors.mediatemple.net
 * updates: ftp.neowiz.com
epel                                                                                                                                  | 4.7 kB     00:00
epel/primary_db                                                                                                                       | 6.0 MB     00:01
remi                                                                                                                                  | 2.9 kB     00:00
remi/primary_db                                                                                                                       | 1.9 MB     00:00
remi-safe                                                                                                                             | 2.9 kB     00:00
remi-safe/primary_db                                                                                                                  | 915 kB     00:00
Resolving Dependencies
--> Running transaction check
---> Package memcached.x86_64 0:1.5.3-1.el6.remi will be installed
--> Processing Dependency: libevent-2.0.so.5()(64bit) for package: memcached-1.5.3-1.el6.remi.x86_64
--> Running transaction check
---> Package libevent2.x86_64 0:2.0.21-2.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================================================================================================
 Package                              Arch                              Version                                        Repository                       Size
=============================================================================================================================================================
Installing:
 memcached                            x86_64                            1.5.3-1.el6.remi                               remi                            116 k
Installing for dependencies:
 libevent2                            x86_64                            2.0.21-2.el6                                   base                            193 k

Transaction Summary
=============================================================================================================================================================
Install       2 Package(s)

Total download size: 308 k
Installed size: 943 k
Downloading Packages:
(1/2): libevent2-2.0.21-2.el6.x86_64.rpm                                                                                              | 193 kB     00:02
(2/2): memcached-1.5.3-1.el6.remi.x86_64.rpm                                                                                          | 116 kB     00:02
-------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                         40 kB/s | 308 kB     00:07
warning: rpmts_HdrFromFdno: Header V4 DSA/SHA1 Signature, key ID 00f97f56: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
Importing GPG key 0x00F97F56:
 Userid : Remi Collet <RPMS@FamilleCollet.com>
 Package: remi-release-6.9-1.el6.remi.noarch (@/remi)
 From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-remi
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : libevent2-2.0.21-2.el6.x86_64                                                                                                             1/2
  Installing : memcached-1.5.3-1.el6.remi.x86_64                                                                                                         2/2
  Verifying  : libevent2-2.0.21-2.el6.x86_64                                                                                                             1/2
  Verifying  : memcached-1.5.3-1.el6.remi.x86_64                                                                                                         2/2

Installed:
  memcached.x86_64 0:1.5.3-1.el6.remi

Dependency Installed:
  libevent2.x86_64 0:2.0.21-2.el6

Complete!

[ops@localhost ~]$ sudo sed -i -e 's/^MAXCONN.*/MAXCONN="4096"/'     /etc/sysconfig/memcached
[ops@localhost ~]$ sudo sed -i -e 's/^CACHESIZE.*/CACHESIZE="8000"/' /etc/sysconfig/memcached
[ops@localhost ~]$ sudo sed -i -e 's/^OPTIONS.*/OPTIONS="-l 0.0.0.0 slab_reassign,slab_automove"/' /etc/sysconfig/memcached
[ops@localhost ~]$ cat /etc/sysconfig/memcached
PORT="11211"
USER="memcached"
MAXCONN="4096"
CACHESIZE="8000"
OPTIONS="-l 0.0.0.0 slab_reassign,slab_automove"

[ops@localhost ~]$ sudo service memcached start
Starting memcached:                                        [  OK  ]
[ops@localhost ~]$ pstree -a memcached
memcached -d -p 11211 -u memcached -m 8000 -c 4096 -P /var/run/memcached/memcached.pid -l 0.0.0.0 slab_reassign,slab_automove
  ├─{memcached}
  ├─{memcached}
  ├─{memcached}
  ├─{memcached}
  ├─{memcached}
  ├─{memcached}
  ├─{memcached}
  ├─{memcached}
  └─{memcached}

[ops@localhost ~]$ echo stats | nc 127.0.0.1 11211 | grep -i version
STAT version 1.5.3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment